• 调用jdbc已经写成的方法----jdbc工具类抽取方式三


    package jdbc_demo3;
    
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    import org.junit.Before;
    import org.junit.Test;
    
    import web09.jdbc_text1;
    import web09.jdbc_text3;
    import web09.jdbc_text4;
    
    /**
     * 测试工具类
     * @author Administrator
     *
     */
    public class jdbc_text2 {
    /**
     *     
     */@Test
        public void textdeletByid()
        {Connection conn=null;
        PreparedStatement pstmt=null;
        try{
            //1获取链接
            conn=jdbc_text4.getconnection();
            //2编写sql语句
            String sql="delete from tbl_user where uid=?";
            //3获取sql的语句对象
            pstmt = conn.prepareStatement(sql);
            //4设置参数
            pstmt.setInt(1, 3);
        
            //5执行插入炒作
            int row =pstmt.executeUpdate();
            if(row>0){
                System.out.println("删除成功");
            }else{
                System.out.println("删除失败");
            }
        }catch (Exception e){
            throw  new RuntimeException(e);
             
        }finally{
            //6释放资源
            jdbc_text3.release(conn, pstmt, null);;
        }
            
        }    
            
        
        
        
        
        
        @Test
        //增加
    public void testAdd()
    {Connection conn=null;
    PreparedStatement pstmt=null;
    try{
        //1获取链接
        conn=jdbc_text3.getconnection();
        //2编写sql语句
        String sql="insert into tbl_user values(null,?,?)";
        //3获取sql的语句对象
        pstmt = conn.prepareStatement(sql);
        //4设置参数
        pstmt.setString(1, "lisi");
        pstmt.setString(2, "hehe");
        //5执行插入炒作
        int row =pstmt.executeUpdate();
        if(row>0){
            System.out.println("插入成功");
        }else{
            System.out.println("插入失败");
        }
    }catch (Exception e){
        throw  new RuntimeException(e);
         
    }finally{
        //6释放资源
        jdbc_text3.release(conn, pstmt, null);;
    }
        
    }    
        
        
        
        
    @Test
    //查询
    public void textfinduserbyid(){
        Connection conn=null;
        PreparedStatement pstmt=null; 
        ResultSet rs=null;
        try {
             //1.获取链接
            conn = jdbc_text1.getconnection();
            //2编写sql语句
            String sql ="select * from tbl_user where uid=?";
            //3获取执行sql语句对象
             pstmt = conn.prepareStatement(sql);
            //4设置参数
            pstmt.setInt(1, 2); 
            //setint(第一个表示第一个获取位置,第二个表示值)
            //5设置查询操作
           rs =pstmt.executeQuery();
            while(rs.next()){
                System.out.println(rs.getString(2)+"------------"+rs.getString("upassword"));
            }
        } catch (SQLException e) {
            
            e.printStackTrace();
        }finally {
            jdbc_text1.release(conn, pstmt, rs);
        }
    }
    }

    import java.io.IOException;
    import java.io.InputStream;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.Properties;
    import java.util.ResourceBundle;

    public class jdbc_text4 {
    private static String driver;
    private static String url;
    private static String username;
    private static String password;

    /*
    * 静态代码块获取配置文件信息
    */

    static{

    try {
    //1.通过当前类获取加载器
    ClassLoader calssloader =jdbc_text3.class.getClassLoader();
    //2.通过类加载器方法,获取一个输入流
    InputStream is = calssloader.getResourceAsStream("db.properties");
    //3.创建一个properties对象
    Properties props =new Properties();
    //4.获取输入流
    props.load(is);
    //5获取相关操作的值

    driver=props.getProperty("driver");
    url=props.getProperty("url");
    username=props.getProperty("username");
    password=props.getProperty("password");
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }

    }


    public static Connection getconnection(){
    Connection conn=null;
    //賦值是爲了防止空指針
    try {
    Class.forName(driver);
    //注册驱动
    conn = DriverManager.getConnection(url,username,password);
    //获取连接
    } catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return conn;
    }

    通过流建立jdbc

  • 相关阅读:
    Matlab 图像处理中出现纯黑或纯白是怎么回事?
    网页中的公式在翻译时如何被保留下来?
    请勿 fAKe 评论
    C++ STL 使用注意事项整理
    APIO 2020 题解
    谈谈对题解本质的理解
    点双 & 边双连通图计数的细节比较
    联合省选 2021 A 卷 题解
    指数生成函数(EGF)计数小记
    UOJ-37 清华集训2014 主旋律
  • 原文地址:https://www.cnblogs.com/baili-luoyun/p/8068077.html
Copyright © 2020-2023  润新知