JavaWeb之BaseDao的写法
来源:互联网 发布:网络综合布线品牌 编辑:程序博客网 时间:2024/05/29 17:31
package com.dao;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;/** * 用来做数据的基础连接和相关操作的关闭 * @author Lulu * */public class BaseDAO { public BaseDAO() { try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { e.printStackTrace(); } } // 属性 -------------------------- private Connection conn; private Statement stm; private PreparedStatement pstm; private ResultSet rs; // 获得连接-------------------------- public Connection getConn() { try { if (conn == null || conn.isClosed()) { conn = DriverManager.getConnection( "jdbc:mysql://localhost:3306/bbs", "root", ""); } } catch (SQLException e) { e.printStackTrace(); System.out.println("getConnection()错误"); } return conn; } // 执行增、删、改SQL语句-------------------- /** * * @param sql * @return int表示影响的行数 * @throws SQLException */ public int executeUpdate(String sql) throws SQLException { if (getConn() == null) { System.out.println("与数据库连接失败!"); return -1; } stm = conn.createStatement(); return stm.executeUpdate(sql); } // 重载执行增、删、改SQL语句-------------------- public int executeUpdate(String sql, Object[] obj) throws SQLException { if (getConn() == null) { System.out.println("与数据库连接失败!"); return -1; } pstm = conn.prepareStatement(sql); if (obj != null) { for (int i = 0; i < obj.length; i++) { pstm.setObject(i + 1, obj[i]); } } return pstm.executeUpdate(); } // 执行查询SQL语句---------------------------- public ResultSet executeQuery(String sql) throws SQLException { if (getConn() == null) { System.out.println("与数据库连接失败!"); return null; } stm = conn.createStatement(); rs = stm.executeQuery(sql); return rs; } // 重载执行查询SQL语句---------------------------- public ResultSet executeQuery(String sql, Object[] obj) throws SQLException { //第一步获取链接 if (getConn() == null) {//该步骤完成了与数据库的链接操作 System.out.println("与数据库连接失败!"); return null; } //将数据准备一下 pstm = conn.prepareStatement(sql); if (obj != null) { for (int i = 0; i < obj.length; i++) { pstm.setObject(i + 1, obj[i]); } } //执行完整sql语句 rs = pstm.executeQuery(); return rs; } // 关闭ResultSet public void closeResultSet() { if (rs != null) { try { rs.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } // 关闭Connection public void closeConnection() { if (conn != null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } // 关闭Statement和PreparedStatement public void closeStatement() { if (stm != null) { try { stm.close(); } catch (SQLException e) { e.printStackTrace(); } } if (pstm != null) { try { pstm.close(); } catch (SQLException e) { e.printStackTrace(); } } }}
1 0
- JavaWeb之BaseDao的写法
- 一种BaseDAO的写法
- SSH中baseDao的写法
- springboot的通用BaseDAO写法
- 通过泛型实现持久层 BaseDao 的写法
- Hibernate DAO层 的BaseDao泛型写法
- javaweb之web工程中各类地址的写法
- JavaWeb-常用地址的写法:
- JavaWeb中路径的写法
- Java中Dao模式中两种Dao的数据库操作(BaseDao的写法)
- JDBC之BaseDao类
- 多线程之basedao
- JavaEE_JDBC_数据库连接方式 以及JDBC BaseDao写法
- Spring整合hibernate(4)之BaseDao的编写示例
- Python3 学习之basedao.py的优化详解
- Hibernate常用的BaseDao
- BaseDao 的设置
- BaseDao的方法不起作用
- 数据库事务_笔记1
- git 开发日常使用
- 263. Ugly Number
- Gym 100947E Qwerty78 Trip
- poj3984迷宫问题
- JavaWeb之BaseDao的写法
- 完美解决 Linux 下 Sublime Text 中文输入
- 计算框架MR
- Poj 1797 Heavy Transportation【Dijkstra变形】
- 25匹马,5条赛道,一匹马一个赛道,比赛只能得到5匹马之间的快慢程度,求1,2,3名
- Leetcode题解 104. Maximum Depth of Binary Tree
- 【解决】MappingException提示Association references unmapped class错误
- 佛五戒
- hadoop作业提交和MapReduce基础分析