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

Posted 因为你,我爱上了那抹蓝

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库曾删改通用方法封装(根据曾 删 改 的sql语句来执行相应的业务操作,)相关的知识,希望对你有一定的参考价值。

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语句来执行相应的业务操作,)的主要内容,如果未能解决你的问题,请参考以下文章

xml的读取(曾删改)

库表曾删改查和存储引擎

axiosvue界面内存一直曾涨

封装自己通用的 增删改查的方法 By EF

通用增删改查的方式

封装数据库增删该通用方法