这篇文章主要介绍Java程序开发之JDBC与MySQL数据库的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
<强>一、JDBC连接数据库的操作强>
编写时可以封装在一个类里面简化代码。
(1)加载JDBC-MySQL数据库驱动
try { ,,,forname (“com.mysql.cj.jdbc.Driver");} catch (Exception e) {,}
(2)连接数据库
Connection con =,零;//声明要连接数据库的对象comString uri =,“jdbc: mysql://localhost: 3306/数据库名? useSSL=true , characterEncoding=utf-8";//连接地址String user =,“root";//连接数据库的用户名String password =,“123456”;//连接数据库的密码try { ,,,con =, DriverManager.getConnection (uri、用户、密码);//连接代码}捕捉(SQLException e) {,}
(3)编写操作数据库中数据的代码
<强>二,查询操作强>
<强> 1,查询操作的具体步骤强>
(1)向数据库发送SQL语句:
Statement SQL;尝试{ ,,,sql =, con.createStatement ();} catch (SQLException e) {,}
首先声明SQL语句对象,然后让已创建的连接对象反对调用方法<代码> createStatement() 代码>创建这个SQL语句对象。
(2)处理查询结果
有了SQL语句对象后,这个对象可以调用相应的方法实现对数据库中表的各项操作,其中查询结果存放在一个记录集类声明的对象中。即SQL查询语句对数据库的查询操作讲放回一个ResultSet对象,结果集由“列”(字段)组织的数据行构成。
rs =, sql.executeQuery (“select  *,得到表的名称“);//读取表中的所有列,*为通配符rs =, sql.executeQuery (“select 行1字段名、行2字段名……,得到表的名称“);//读取表中特定的列
ResultSet对象一次只能看到一行数据,使用next()方法移到下一行.ResultSet对象可以通过<代码> getXxx (int columnIndex) 代码>获得列值和通过传递列名<代码> getXxx(字符串columnName) 代码>获得列值。
(3)关闭连接
con.close();,//关闭欺诈所连接的数据库
注意:数据库与连接对象紧密绑定,应在使用完数据库再进行关闭操作。
<强> 2,控制游标强>
结果集的游标的初始位置在结果集第一行的前面,结果集调用next()方法向下(后)移动游标,移动成功返回真,移动失败返回错误的。<强>如果要在结果集中移动并显示若干条记录,必须返回一个滚动的结果集>强。方法如下:
Statement stmt =, con.createStatement (int  int 类型;并发);//获得一个声明对象,根据参数的值,支撑返回相应类型的结果集:ResultSet re =, stmt.executeQuery (SQL语句);类型的取值:决定滚动方式: ResultSet.TYPE_FORWARD_ONLY 结果集的游标只能向下滚动 ResultSet.TYPE_SCROLL_INSENSITIVE 游标可以上下移动,数据库变化时,结果集不变 ResultSet.TYPE_SCROLL_SENSITIVE 返回可滚动的结果集,数据变化时,结果集同步改变 并发取值:决定是否可以用结果集更新数据库 ResultSet.CONCUR_READ_ONLY 不能用结果集更新数据库中的表 ResultSet.CONCUR_UPDATABLE 能用结果集更新数据库中的表 滚动查询常用的ResultSet的方法:public boolean 以前的(),将游标向上移动,当移动到结果集第一行之前时返回falsepublic void beforeFirst(),将游标移动到结果集的初始位置,第一行之前public void afterLast(),将游标移动到结果集的最后一行之后public void 第(),将游标移动到第一行public void 去年(),将游标移动到最后一行public boolean isAfterLast(),判断游标是否在最后一行之后public boolean isBeforeFirst(),判断游标是否在第一行游标之前public boolean isFirst(),判断游标是否指向第一行public boolean isLast(),判断游标是否指向最后一行public int getRow(),得到当前游标所指向的行号、行号从1开始,如果结果集没有行,返回0 public boolean 绝对(int 行),将游标移动到参数行指定的行(参数取负数即倒数)
<强>(3)条件与排序查询强>
在子语句:<代码>选择字段从表明,条件代码>
(1)字段值与固定值比较 select *,得到table where name=& # 39;张三& # 39;(2)字段值在某个区间 select *,得到table where number> 5,以及numberJava程序开发之JDBC与MySQL数据库的示例分析