jdbc工具类和测试类的的写法理解

一、jdbc工具类的意义:

封装功能,避免书写重复率过高的代码,jdbc工具类是为了减少书写连接数据库的代码。达到代码的重复利用。

二、步骤:

1、建立一个jdbc工具包,例如for instance  :jdbcutil包再建立一个jdbcutil工具类用于直接返回数据库的连接对象。

public class jdbcutils{

           private jdbcutils(){}

           private static Connection con;

          static {

try{

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

             String url="";

             String username="";

             String password="";

             con=DriverManager.getConnection(url,password,username);

       }catch(Exception ex){

           throw new RuntimeException(ex+"数据库连接失败");//停下来报出异常信息。 

                      }

              }

}

/*

        定义静态方法,返回数据库的连接对象。

*/

public static Connection getConnection(){

            return con;

         }

//写关闭方法

public static void close(Connection con ,Statement stat, ResultSet rs){

if(rs!=null){
            rs.close();

}catch(SQLException ex){}

if(con!=null){

            con.close();

}catch(SQLException ex){}

if(stat!=null){

stat.close();

}catch(SQLException ex){}

//在测试类中只需调用该方法传一下对象就行了。

//另外增删改查没有ResultSet()方法可以在重载一个close()方法里面有两个参数这样在测试类中就会少很多代码。

               }

}

这样这个工具类就写好了,以后在连接数据库直接调用这个包里的方法就行了,没必要在重写上面内容。

2、在另一个包里建立一个测试类,类名为Testjdbcutils

public class Testjdbcutils(){

                   public static void main( String[] args){

                                        //直接拿返回值数据。return con,静态方法直接静态调用

                    Connection  con =jdbcutils.getConnection();//获取数据库连接对象,相当于建立了数据库的连接

                    PrepareStatement pst=con.prepareStatement(sql语句);//获取数据库语句执行者对象

                    ResultSet rs=  pst.executeQuery();//调用查询方法,获取结果集

                    while(rs.next()){

                     system.out.print(rs.String());

                 }

}

三、jdbc读取数据表,每行对象封装到Sort类的对象中

很多个sort类对象,存储到List集合中

1、首先建立一个类jdbcdemo()

2、另外建一个sort类,里面的成员变量和数据库表中的成员相同。然后包含一堆set和get方法,有参构造器,和空参构造器。 

public class jdbcdemo(){
               

                   public static void main( String[] args){

                   //直接拿返回值数据。return con,静态方法直接静态调用

                    Connection  con =jdbcutils.getConnection();//获取数据库连接对象,相当于建立了数据库的连接

                    PrepareStatement pst=con.prepareStatement(sql语句);//获取数据库语句执行者对象

                    ResultSet rs=  pst.executeQuery();//调用查询方法,获取结果集

                  List<Sort> list= new ArrayList<Sort>();//获取list对象

                   while(rs.next()){

                             //获取每个列数据,封装到Sort对象中

                              Sort s =new Sort(rs.getInt(),rs.getString(),rs.getDouble());

                           //封装Sort对象,存储到集合中

                             list.add(a);

                 }

//在这里也可以关闭

                     //遍历sort类

                     for(Sort s :list){

                        System.out.print(s);                      

             }

                     jdbcutils.close(connection, pst, rs);//关闭

               }

}

可能括号不对,请谅解,后期会改进的 谢谢。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值