JSP Web开发入门系列(一)---JDBC基础

           我从.net转到java平台多少有些不同,仅以这个开发入门系列是个人自学的记录。第一篇主要是利用jdbc连接数据库和执行sql查询语句。 

          开发环境:winXPsp3+JDK1.6+MyEclipse7.5+MySql5.1.

         具体的jdk环境配置就不写了,至于JDBC for MySQL的配置也是非常简单的。只要将Mysql的JDBC驱动程序下载解压,再在MyEclipse工程中添加mysql-connector-java-5.1.13-bin.jar。如下图:

    

      在搭建好环境后,我们来了解下JDBC,它是一种基于java的数据库访问接口,提供了查询,更新数据库的方法。JDBC的实现依赖于数据库厂商提供符合JDBC规范的驱动程序。有许多持久化的框架是基于JDBC的,如著名的Hibernate。“裸用”JDBC只是为了熟悉一下java体系,理解一下技术原理。

       其实操作数据库都是四个步骤:

       1.读入数据库驱动。当然在windows的时候这一步是不用做的。但是我们使用的JDBC是需要通过代码来读入数据库驱动:

Class.forName( " com.mysql.jdbc.Driver " );

     2.建立数据库连接。要在代码中提供包括:数据库服务器名(IP地址,域名或者机器名),端口(可以默认),数据库名,用户名,密码这五类信息,才成功连接数据库。

 

 

// mysql_jdbc 驱动默认不支持多结果集,需要添加allowMultiQueries=true;
Connection conn = DriverManager.getConnection( " jdbc:mysql://localhost/viki?characterEncoding=UTF8&allowMultiQueries=true " , " root " , "9527 " );

 

 

     在我的代码中数据库名是:viki,用户名是:root,密码是:9527. 至于allowMultiQueries这行字符将在下面讲到。

    3.创建或者获得数据操作对象。在获得该对象后,我们就可以对数据库进行查询,修改和执行存储过程。

 

// 创建statement对象
Statement stat = conn.createStatement();

4.显式关闭数据连接,关闭数据库。

 

// 显式关闭数据连接
stat.close();
conn.close();

     在网上经常有帖子询问:为什么不能在java中执行多条sql语句?这个问题需要回到第二步,只要在连接mysql数据库的字符串上allowMultiQueries=ture就能够轻松将其地解决。(另外一种方法是使用statement的addbatch方法来实现。)

      下面贴出基于JDBC,使用多条sql语句来操作数据库,实现数据库查询的完整实例代码。

      

代码
package JDBCTest;

import java.sql. * ;

public class ResultFromExcute {

/**
*
@param args
*/
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
Class.forName( " com.mysql.jdbc.Driver " );
// mysql_jdbc 驱动默认不支持多结果集,需要添加allowMultiQueries=true;
Connection conn = DriverManager.getConnection( " jdbc:mysql://localhost/viki?characterEncoding=UTF8&allowMultiQueries=true " , " root " , "9527 " );
Statement stat
= conn.createStatement();

// 执行两句sql语句
String selectData = " SELECT * FROM test; " + " SELECT * FROM pet " ;
if (stat.execute(selectData))
{
ResultSet result
= null ;
do
{
// 依次获得执行两条select语句的resultset
result = stat.getResultSet();

while (result.next())
{
// System.out.println(result.getString(2)+" ");
System.out.println(result.getString( " name " ));
………………
}
}
while (stat.getMoreResults());

}

}

}

 

 

 

 

转载于:https://www.cnblogs.com/ventlam/archive/2010/09/28/1837856.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值