Java JDBC增删改查的实用demo(包括判空和异常处理)

来源:互联网 发布:java获取鼠标坐标 编辑:程序博客网 时间:2024/06/03 14:26

talk is cheap, show me the code


import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import org.slf4j.Logger;import org.slf4j.LoggerFactory;class JdbcDemo{    private static final Logger logger = LoggerFactory.getLogger(JdbcDemo.class);    private Connection        conn  = /*赋值*/; // 数据库连接对象    private PreparedStatement pstmt = /*赋值*/; // 数据库操作对象    public /*返回类型*/ query(String... args){        String sql = "SELECT * "                + " FROM t_YOURTABLE where xxx=? and xxx=?;";        try{            pstmt = conn.prepareStatement(sql);// 获取PreparedStatement对象            pstmt.setString(1, args[0]); // 占位符"?"从1开始计数            pstmt.setString(2, args[1]);            logger.info("query - " + pstmt.toString());            rs = this.pstmt.executeQuery();// 执行数据库操作            boolean isFound = false; // sql查询是否有返回值            while (rs.next()) {                isFound = true; // 至少有一个返回值                //if (!rs.isLast()) { // 只要最后一个                //  continue;                //}                // check price exist                rs.getString(1));                rs.getString(2));            }            // sql查询是否有返回值            if (isFound == false) {                logger.info("No record when execute:" + pstmt.toString());                return null;            }        } catch (SQLException e) {            logger.error("query - sql exception:" + e.getMessage());            return null;        } finally {            if (rs!=null){                try {                    rs.close();                } catch (SQLException e) {                    logger.error("queryFangRoomInfo - rs close exception:"+ e.getMessage());                }// 关闭ResultSet对象            }            if(this.pstmt!=null){                try {                    this.pstmt.close();                } catch (SQLException e) {                    logger.error("queryFangRoomInfo - pstmt close exception:"+ e.getMessage());                }// 关闭PreparedStatement对象            }            if(conn!=null){                try {                    conn.close();                } catch (SQLException e) {                    logger.error("queryFangRoomInfo - conn close exception:"+ e.getMessage());                }            }        }}
0 0
原创粉丝点击