JDBC—标准格式

一.配置文件

    driver=com.mysql.jdbc.Driver
    url=jdbc:mysql://192.168.xx.xxx:3306/workSQL
    user=root
    pwd=ok

二.连接、查询、更改

public class PstDao {
    private static String driver= Prop.getP("driver");//获取配置文件中driver对应数据
    private  static String url=Prop.getP("url");//获取配置文件中url连接地址数据
    private  static String user=Prop.getP("user");//获取配置文件中user用户名数据
    private  static  String pwd=Prop.getP("pwd");//获取配置文件中pwd密码数据
    //连接
    public static Connection getConn(){
        try {
            Class.forName(driver);
            return DriverManager.getConnection(url,user,pwd);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return null;

    }
    //释放资源
    public static  void close(Connection conn, PreparedStatement pst, ResultSet res){
        if (conn!=null){
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if (pst!=null){
            try {
                pst.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if (res!=null){
            try {
                res.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
    //查询方法
    public static ResultSet query(String sql,Object ...params){//第二个参数为不指定长度的参数,类似数组
        Connection conn = getConn();//连接数据库
        PreparedStatement pst=null;//创建执行sql语句对象
        ResultSet rst=null;//创建ResultSet对象用于接收查询到的数据
        try {
            pst = conn.prepareStatement(sql);//载入sql语句
            for (int i = 0; i < params.length; i++) {
                pst.setObject(i+1,params[i]);//匹配对应条件语句
            }
            rst = pst.executeQuery();//执行语句并将查询结果传入ResultSet
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return rst;

    }
    //修改方法
    public  static  int update(String sql,Object... params){
        Connection conn = getConn();
        PreparedStatement pst=null;
        try {
            pst =conn.prepareStatement(sql);
            for (int i = 0; i < params.length; i++) {
                pst.setObject(i+1,params[i]);
            }
            return pst.executeUpdate();//执行修改语句并返回被影响的数量

        } catch (SQLException e) {
            e.printStackTrace();
        }
        return -1;//修改失败返回-1
    }}

三.测试部分

public class PstDaoTest {

    @Test
    //测试查询方法
    public void query() throws SQLException {
        String sql="select * from grade where grade_cj> ?;";//设置查询语句 ,“?”代表未知条件

        ResultSet rst = PstDao.query(sql,90);//调用查询方法,传入需要语句,并传入条件值,返回的查询结果传入resultset中

        while (rst.next()) {//遍历rst中的数据
            System.out.println(rst.getInt("grade_stuid")+"---"+rst.getInt("course_id")+"---"+rst.getInt("grade_cj"));

        }



    }

    @Test
    public void update() throws SQLException {
        String sql="update grade set grade_cj=100 where grade_stuid=?;";
        int i=PstDao.update(sql,2);
        System.out.println(i);
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值