牢记ConnectionFactory(数据库连接),jdbcTemplate(CRUD)模板,学习更有效率

来源:互联网 发布:蜜蜂软件怎么注册 编辑:程序博客网 时间:2024/06/11 17:11

刚开始学习JavaEE时,总是理不清思绪,整个的思路很乱,自己把自己说的团团转, 为了能让更多人刚开始学习JavaEE时,不要像我一样浪费很多时间,能快速理清自己的思路,牢记住这些模板,会让你的学习更有效率
DBUtils.java

   package com.zqq.utils;import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class DBUtils {    public static void close(ResultSet rs, Statement stmt, Connection conn) {       if(rs!=null){           try {            rs.close();        } catch (SQLException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }       }       if(stmt!=null){           try {            stmt.close();        } catch (SQLException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }       }       if(conn!=null){           try {            conn.close();        } catch (SQLException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }       }    }    public static void close(ResultSet rs,Statement stmt){        close(rs,stmt,null);    }    public static void close(Connection conn){        close(null,null,conn);    }}

jdbcTemplate.java 增删改查

package com.zqq.utils;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class JdbcTemplate {    private Connection conn;    public JdbcTemplate(Connection conn) {        this.conn = conn;    }    public void query(String sql, RowCallBackHandler handler)            throws DataAccessException {        Statement stmt = null;        ResultSet rs = null;        try {            stmt = conn.createStatement();            rs = stmt.executeQuery(sql);            if (handler != null) {                handler.processRow(rs); // 回调            }        } catch (SQLException e) {            // TODO Auto-generated catch block            throw new DataAccessException(e.getMessage(), e);        } finally {            DBUtils.close(rs, stmt);        }    }    public void query(String sql, PreparedStatementSetter setter,            RowCallBackHandler handler) throws DataAccessException {        PreparedStatement pstmt = null;        ResultSet rs = null;        try {            pstmt = conn.prepareStatement(sql);            if (setter != null) {                setter.setValues(pstmt);            }            if (handler != null) {                handler.processRow(rs);            }        } catch (SQLException e) {            // TODO Auto-generated catch block            throw new DataAccessException(e.getMessage(), e);        } finally {            DBUtils.close(rs, pstmt);        }    }    public void update(String sql, PreparedStatementSetter setter)            throws DataAccessException {        PreparedStatement pstmt = null;        try {            pstmt = conn.prepareStatement(sql);            if (setter != null) {                setter.setValues(pstmt);                pstmt.executeUpdate();            }        } catch (SQLException e) {            throw new DataAccessException(e.getMessage(), e);        } finally {            DBUtils.close(null, pstmt);        }    }}

ConnectionFactory.java 数据库连接,

package com.zqq.utils;import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.util.Properties;public class ConnectionFactory {    private static String DRIVER;    private static String URL;    private static String USER;    private static String PASSWORD;    static {        Properties props = new Properties();        InputStream is = ConnectionFactory.class                .getResourceAsStream("jdbcinfo.properties");        try {            props.load(is);            DRIVER = props.getProperty("mysql.driver");            URL = props.getProperty("mysql.url");            USER = props.getProperty("mysql.user");            PASSWORD = props.getProperty("mysql.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, USER, PASSWORD);        } catch (Exception e) {            // TODO Auto-generated catch block            e.printStackTrace();        }        return conn;    }}

更多的模板java类已上传,一起学习!!!

0 0