`
yyzhpq
  • 浏览: 291187 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

第六篇:数据库开始篇

阅读更多

严重警告:对前面的问题还没弄清楚的,请不要再往下看了<!----><o:p></o:p>

开场白:本来是应该从哪里ctrl+v一段关于JDBC的东东给你看看的,是想到它实在有点过于理论和教条,所以就不太过于罗嗦了,但还是讲一点两点,要不然跟我一样蠢笨又一无所知的人真的不知道我写的是“人的代码”还是“机器的代码”。因此强烈的建议你不要跳过以下的内容。

数据库编程的一些基本步骤<o:p></o:p>

注册驱动

创建数据库连接

执行SQL语句获得结果

要用到的一些基本类<o:p></o:p>

Connection

Statement类和PeparedStatement

ResultSet

要注意的问题<o:p></o:p>

数据库操作的时候会出现异常,要注意捕获并处理

用以下的代码做解释<o:p></o:p>

<o:p> </o:p>

          //定义数据库的驱动程序(以下给出的是连接odbc数据库的)

String strDriver="sun.jdbc.odbc.JdbcOdbcDriver";

          //定义数据的URL(名称)

String strConnection="jdbc:odbc:myFirstData";

          //数据访问的用户名

String strConnectUsername="";

          //数据库访问的密码

String strConnectPassword="";           

         

Connection conn = null;

Statement stmt = null;

ResultSet rs = null;

String sql_temp = “select * from tableName”

try

              {

                     Class.forName(strDriver);//注册驱动

                    

              }

              catch(ClassNotFoundException ex1)

              {

                     ex1.printStackTrace();//捕获驱动注册过程中的异常

              }

try

{

conn =                           //获得数据库连接

                            DriverManager.getConnection(    strConnection,

                                                                                strConnectUsername,

                                                                                strConnectPassword);

         

stmt = conn.CreateStatement();//创建Statement的对象stmt

          rs = stmt.executeQuery(sql_temp);//利用stmt执行SQL操作返回结果集交给rs

}

catch(SQLException ex2)

{

                ex2.printStackTrace();

}

来一个例子说明一下如何?<o:p></o:p>

功能描述

写一个用户登陆的程序,用户输入密码,点击“登陆”按钮,在用户数据表中查找,如果有对应的记录,就告诉:你好,欢迎你!如果没有该用户,就提示:用户名或者密码错误,请重新登陆。

哇,终于到了编写有点人摸狗样程序的时候了,以前写的哪能叫程序啊,简直是拿三结构的名字来欺骗人嘛。。。<o:p></o:p>

建立数据库:为了简单就用access建一个吧,数据库的名字就user吧,在odbc中设置一下吧。什么,不知道怎么设置?哦,我现在真的没心情跟你解释。请你解决了这个问题再往下看吧。

建立一个数据表:userTable

用户号码             UserNo            文本

用户密码             PassWord          文本

所在的部门号码       DepartNo          文本

填入几个值吧<o:p></o:p>

111    111      001

222    222      002

333    333      003

登陆的jsp恐怕以后我不会再告诉你怎么写这样的jsp<o:p></o:p>

login.jsp<o:p></o:p>

<%@ page contentType="text/html; charset=gb2312" %><o:p></o:p>

<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %><o:p></o:p>

<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %><o:p></o:p>

<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %><o:p></o:p>

<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %><o:p></o:p>

<html:html><o:p></o:p>

    <head><o:p></o:p>

        <title>Login</title><o:p></o:p>

    </head><o:p></o:p>

    <o:p></o:p>

    <body><o:p></o:p>

    <center><o:p></o:p>

    <pre><o:p></o:p>

    <html:form action="execute.do" method="post"><o:p></o:p>

                    <h3> 请输入 </h3><o:p></o:p>

         <o:p></o:p>

         用户名:   <html:text property="userID" size="12"/><o:p></o:p>

         <o:p></o:p>

           :   <html:text property="passWord" size="12"/><o:p></o:p>

       <o:p></o:p>

       <html:submit value="提交"/>  <html:reset value="重置"/><o:p></o:p>

 </html:form><o:p></o:p>

     </pre><o:p></o:p>

    </center><o:p></o:p>

    </body><o:p></o:p>

</html:html><o:p></o:p>

显示正确结果的页面<o:p></o:p>

success.jsp<o:p></o:p>

<%@ page contentType="text/html; charset=gb2312" %><o:p></o:p>

<html><o:p></o:p>

<center><o:p></o:p>

  欢迎你!!<o:p></o:p>

</center><o:p></o:p>

</html><o:p></o:p>

提示警告的页面<o:p></o:p>

error.jsp<o:p></o:p>

<%@ page contentType="text/html; charset=gb2312" %><o:p></o:p>

<html><o:p></o:p>

<center><o:p></o:p>

    不要意思,您的用户名或密码错误! <o:p></o:p>

 </center><o:p></o:p>

</html><o:p></o:p>

好了,下面到程序员真正该做的工作了,那就是写java代码啊。<o:p></o:p>

一,不要问在什么地方写java代码<o:p></o:p>

二,不要问用什么办法把java代码编译成类文件<o:p></o:p>

三,不要问把java文件和类文件放在什么地方<o:p></o:p>

……这样的问题我不会再回答。<o:p></o:p>

你千万不要忘了要导入两个JAR包啊<o:p></o:p>

用来保存数据的form<o:p></o:p>

UserForm.java<o:p></o:p>

import org.apache.struts.action.*;<o:p></o:p>

public class UserForm extends ActionForm<o:p></o:p>

{<o:p></o:p>

    private String userID = null;<o:p></o:p>

    private String passWord = null;<o:p></o:p>

    public String getUserID() <o:p></o:p>

{<o:p></o:p>

       return userID == null?"": userID.trim();<o:p></o:p>

    } <o:p></o:p>

    public void setUserID(String userID) <o:p></o:p>

    {<o:p></o:p>

       this. userID = userID;<o:p></o:p>

    }<o:p></o:p>

    public String getPassWord() <o:p></o:p>

    {<o:p></o:p>

       return passWord == null?"": passWord.trim();<o:p></o:p>

    }<o:p></o:p>

    public void setPassWord(String str2) <o:p></o:p>

    {<o:p></o:p>

       this. passWord = passWord;<o:p></o:p>

    }<o:p></o:p>

}<o:p></o:p>

看见了form了吧,没什么神气的,就是一些属性和关于属性的getset方法<o:p></o:p>

用来处理数据的action<o:p></o:p>

UserAction.java<o:p></o:p>

import javax.servlet.http.HttpServletRequest;<o:p></o:p>

import javax.servlet.http.HttpServletResponse; <o:p></o:p>

import org.apache.struts.action.ActionErrors;<o:p></o:p>

import org.apache.struts.action.ActionForm;<o:p></o:p>

import org.apache.struts.action.ActionForward;<o:p></o:p>

import org.apache.struts.action.ActionMapping;<o:p></o:p>

import org.apache.struts.actions.DispatchAction; <o:p></o:p>

public class UserAction  extends DispatchAction<o:p></o:p>

{<o:p></o:p>

       public ActionForward execute(  ActionMapping mapping,<o:p></o:p>

                                    ActionForm form,<o:p></o:p>

                                    HttpServletRequest request,<o:p></o:p>

                            

分享到:
评论

相关推荐

    数据库系统概论(基础篇)教学大纲.docx

    第三讲:数据库系统的结构 数据库系统的结构 第三讲课件 第四讲:数据库系统的组成 数据库系统的组成 第四讲课件 单元测验1 第五讲:关系数据结构及关系的完整性 关系数据结构 关系的完整性 第五讲课件 第六讲:关系...

    数据库系统原理教程 作者:王珊

    基础篇 第1章:绪论 第2章:关系数据库 第3章:关系数据库标准语言SQL 设计篇 第4章:关系数据库设计理论 第6章:数据库设计

    springboot项目整合.zip

    第六篇:整合SpringDataJpa] 第七篇:整合Mybatis] 第八篇:通用Mapper与分页插件的集成] 第九篇:整合Lettuce Redis] 第十篇:使用Spring Cache集成Redis] 第十一篇:集成Swagger在线调试] 第十二篇:...

    《数据库系统概论》浙大的PPT

    教材 萨师煊,王珊:数据库系统概论(第三版)基础篇 第一章:绪论 第二章:关系数据库 第三章:关系数据库标准语言SQL 第四章:关系系统及其查询优化 第五章:关系数据理论  设计篇 第六章:数据库设计

    数据库系统概论课件&课堂练习

    广东工业大学计算机学院,顾国生老师...第六章 关系数据理论数据库设计 第七章 数据库设计 第八章 数据库编程 系统篇 第九章 关系查询处理和查询优化 第十章 数据库恢复技术 第十一章 并发控制 第十二章 数据库管理系统

    第02篇:WAF Bypass数据库特性(MSsql探索篇)1

    (1)空白字符 (2)注释符号 (3)浮点数 (4)1E0的形式: (5)运算符 (6)小区别: (1)空白字符 (2)注释符号 (3)其他符号 (1)空白字符

    SpringBootLearning_forezp.tar.gz

    SpringBoot非官方教程 | 第六篇:springboot整合mybatis SpringBoot非官方教程 | 第七篇:springboot开启声明式事务 SpringBoot非官方教程 | 第八篇:springboot整合mongodb SpringBoot非官方教程 | 第九篇: ...

    完整的数据库系统概论课件,新版,分为基础篇,设计应用开发篇,系统篇,中国人民大学信息学院

    第六章 关系数据理论数据库设计 第七章 数据库设计 第八章 数据库编程 系统篇 第九章 关系查询处理和查询优化 第十章 数据库恢复技术 第十一章 并发控制 * 第十二章 数据库管理系统 第一至第十一章是本科专业的基本...

    最新2020Java学习路线

    从零基础开始学习,第一阶段:Java开篇,第二阶段:Java语言语法,第三阶段:集成开发工具的使用,第四阶段:面向对象,第五Javase进阶,第6阶段 :数据库+JDBC,第7阶段 :前端精讲,第8阶段 :算法篇,第9阶段 :...

    LabVIEW宝典课件.ppt

    第六章:属性节点、方法节点及引用 第七章:高级控件的运用 第八章:文本编程与外部接口 第九章:MathScript 第十章:基于组件的程序结构 第十一章:人机交互与编程风格 应用篇 第十二章:VI模板、设计模式、...

    北京化工大学计算机专业数据库系统概论PPT

    基础篇 第一章:绪论 第二章:关系数据库 第三章:关系数据库标准语言SQL 第四章:关系系统及其查询优化 第五章:关系数据理论  设计篇 第六章:数据库设计

    Thinkphp5第六讲:数据库操作之查询构造器

    本节主要讲解查询构造器的含义以及使用方法,特别提示:为减少内存使用,提高效率,尽量不要使用db助手函数。...一、查询构造器的增删改查(初识篇) 1、插入记录: Db::table('think_data') -&gt;insert

    SpringCloudLearning_forezp.tar.gz

    史上最简单的SpringCloud教程 | 第六篇: 分布式配置中心(Spring Cloud Config)(Finchley版本) 史上最简单的SpringCloud教程 | 第七篇: 高可用的分布式配置中心(Spring Cloud Config)(Finchley版本) 史上最简单的...

    Oracle数据库原理及应用教学大纲.pdf

    第六讲:数据操作 * 数据操作的类型:插入、更新、删除 * 数据操作的语法和示例 * 数据操作的优化技术 ### 7. 第七讲:基本 SQL 查询 * SQL 语言的概述 * SELECT 语句的基本结构和语法 * WHERE 子句和 HAVING ...

    菜鸟学用DreamWeaver做ASP

    菜鸟学用DreamWeaver做ASP.pdf 第一步:服务器配置篇 第二步:数据库设置篇 第三步:数据库显示篇 第四步:注册系统篇 第五步:登陆系统篇 第六步:查找密码系统] 第七步:修改资料篇

    精通Java:JDK、数据库系统开发Web开发(实例代码)

    第6章 Java面向对象程序设计(下) 第7章 Java异常处理机制 第8章 Java反射机制 第9章 数据结构与集合类 第3篇 图形用户界面 第10章 Java Swing(上) 第11章 Java Swing(下) 第12章 Applet网页小程序 第13章 图形...

    LabVIEW宝典课件

    第六章:属性节点、方法节点及引用 第七章:高级控件的运用 第八章:文本编程与外部接口 第九章:MathScript 第十章:基于组件的程序结构 第十一章:人机交互与编程风格 第六章:属性节点、方法节点及引用 第七章:...

Global site tag (gtag.js) - Google Analytics