zoukankan      html  css  js  c++  java
  • java通用DAO

    package org.gaoyoubo.dao;

    import java.sql.*;
    import java.util.*;

    import javax.servlet.jsp.jstl.sql.*;

    public class CommanDao {
        private Connection con;
        private String sql;
        private List parameters;
        //设置连接
        public void setCon(Connection con) {
            this.con = con;
        }
        //设置sql语句;
        public void setSql(String sql) {
            this.sql = sql;
        }
        //设置sql语句参数;
        public void setParameters(List aparametersrameters) {
            this.parameters = aparametersrameters;
        }
        
        /**
         * 执行查询;
         * 
    @return
         
    */
        public Result  executeQuery(){
            Result result = null;
            ResultSet rs = null;
            PreparedStatement pstmt = null;
            
            
            try {
                //如果sql语句有参数;
                if(parameters != null && parameters.size() > 0){
                    pstmt = con.prepareStatement(sql);
                    setParameters(pstmt, parameters);
                    rs = pstmt.executeQuery();
                }
                //如果没有参数;
                else{
                    pstmt = con.prepareStatement(sql);
                    rs = pstmt.executeQuery();
                }
            } catch (SQLException e) {
                // TODO: handle exception
                e.printStackTrace();
            }
            //将ResultSet转换成Result;
            result = ResultSupport.toResult(rs);        
            return result;
        }
        
        /**
         * 执行更新;
         * 
    @return 返回受影响行数;
         
    */
        public int executeUpdate(){
            int noOfRows = 0;
            ResultSet rs = null;
            PreparedStatement pstmt = null;
            try {
                //如果参数不为空;
                if(parameters != null && parameters.size() > 0){
                    pstmt = con.prepareStatement(sql);
                    setParameters(pstmt, parameters);
                    noOfRows = pstmt.executeUpdate();
                }
                else{
                    pstmt = con.prepareStatement(sql);
                    noOfRows = pstmt.executeUpdate();
                }
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return noOfRows;
        }
        
        
        /**
         * 方法,为sql语句设置参数;
         * 
    @param pstmt 指令
         * 
    @param parameters 参数集合;
         * 
    @throws SQLException 
         
    */
        private void setParameters(PreparedStatement pstmt,List parameters) throws SQLException{
            for (int i = 0; i < parameters.size(); i++) {
                Object v = parameters.get(i);
                pstmt.setObject(i+1, v);
            }
        }
        
    }
  • 相关阅读:
    在 ubuntu20 上安装 docker
    在 ubuntu20 上替换原有的源,解决下载软件慢的问题
    thymeleaf 模板语法
    对 spring 中默认的 DataSource 创建进行覆盖
    Spring Security OAuth2 笔记(一)
    对 ThreadLocal 的了解(一)
    解决 docker.io 上拉取 images Get https://registry-1.docker.io/v2/: net/http: TLS handshake timeout
    Spring Security Oauth2 使用 token 访问资源服务器出现异常:Invalid token does not contain resource id (oauth2)
    windows 查看被占用的端口信息
    不写注释的程序员-Models
  • 原文地址:https://www.cnblogs.com/Fskjb/p/2292086.html
Copyright © 2011-2022 走看看