码迷,mamicode.com
首页 > 数据库 > 详细

数据库曾删改通用方法封装(根据曾 删 改 的sql语句来执行相应的业务操作,)

时间:2018-04-12 17:55:45      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:todo   generate   col   链接   用户   actor   驱动   getc   static   

public class JDBCTemplate {
    /**
     * 增删改封装
     * @param sql:要执行的sql语句
     * @param params sql对应的参数值,必须是和问号一一对应
     * @return rows 增加的影响的行数
     * @throws SQLException
     */
    public static int update(String sql,Object [] params) throws SQLException{
        //调用封装的方法注册驱动,与数据库建立链接
        Connection conn = ConnectionFactory.getConnection();
        //创建需要执行的sql语句的prepareStatement()方法
        PreparedStatement pstmt = conn.prepareStatement(sql);
        //判断  如果传进来的数组是正确的sql语句
        if(params!=null&&params.length>0){
            for (int i = 0; i < params.length; i++) {
                //因为数组的下标是从0开始,数据库的下标是从1开始,要一一对应必须将下标+1
                //params[i]是对应的参数类型
                pstmt.setObject(i+1,params[i]);                
            }
        }
        //调用方法返回修改的影响行数
        int rows = pstmt.executeUpdate();
        //调用工厂模式中封装的关闭资源的方法
        ConnectionFactory.close(pstmt, conn);
        //返回 rows
        return rows;
    }
    
    public static void main(String[] args) {
        //创建需要执行的sql语句(sql语句可以更改,根据实际传入的语句在执行相应的增删改业务操作)
        String sql = "update t_user set password=? where id=?";
        
        try {
            //new Object[] {"333",1} "333" 是修改的密码   1 是表中id=1的用户
            int rows = JDBCTemplate.update(sql, new Object[] {"333",1});
            System.out.println(rows);
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

 

数据库曾删改通用方法封装(根据曾 删 改 的sql语句来执行相应的业务操作,)

标签:todo   generate   col   链接   用户   actor   驱动   getc   static   

原文地址:https://www.cnblogs.com/zhou-jiayi/p/8809058.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!