java的JDBC连接的万能版总结(dao模式)
来源:互联网 发布:古建筑三维模型软件 编辑:程序博客网 时间:2024/06/11 05:40
java的JDBC连接数据库Mysql,sqlserver, Oracle dao模式
public class BaseDao {String DBUser = "root"; // 用户名String DBPwd = "root";// 密码String DBHost = "localhost"; // 服务器地址String DBName = "myschool";// 数据库名称int Port = 3306; // 端口号int DBType = 1; // 1mysql,2sqlserver,3orcaleConnection conn; // 连接对象PreparedStatement ps; // 查询对象ResultSet rs; // 结果集/** * 打开连接 */public void open() {try {if (DBType == 1) {Class.forName("com.mysql.jdbc.Driver");conn = DriverManager.getConnection("jdbc:mysql://" + DBHost+ ":" + Port + "/" + DBName, DBUser, DBPwd);}else if (DBType == 2) {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");conn = DriverManager.getConnection("jdbc:sqlserver://" + DBHost + ":"+ Port + ";databasename=" + DBName, DBUser,DBPwd);} else if (DBType == 3) {// 编写orcalaClass.forName("Oracle.jdbc.driver.OracleDriver");conn = DriverManager.getConnection("jdbc:oracle:thin:@" + DBHost + ":"+ Port + ":" + DBName, DBUser,DBPwd);}} catch (Exception e) {// TODO: handle exception}}/** * 关闭连接 */public void close() {try {if (rs != null)rs.close(); // 如果结果集存在,就关闭结果集ps.close(); // 关闭查询对象conn.close(); // 关闭连接查询} catch (Exception e) {// TODO: handle exception}}/** * 执行 增删 * @param sql * @param parm * @return a 为受影响的行数 */public int exectueUpdate(String sql, Object[] parm) {open();int a = 0;try {ps = conn.prepareStatement(sql);if (parm != null) {for (int i = 0; i < parm.length; i++) {ps.setObject(i + 1, parm[i]);}}a = ps.executeUpdate(); // 执行} catch (Exception e) {// TODO: handle exception}close();return a;}/** * 执行查询 * @param sql * @param parm * @return */ public ResultSet exectueQuery(String sql,Object[] parm){ open();try {ps = conn.prepareStatement(sql);if (parm != null) {for (int i = 0; i < parm.length; i++) {ps.setObject(i + 1, parm[i]);}} rs=ps.executeQuery();} catch (Exception e) {// TODO: handle exception} return rs; } }
使用继承或者new也可以
package com.xing.myschool.dao;import java.sql.SQLException;import java.util.ArrayList;import com.xing.myschool.entity.Student;public class StudentDao extends BaseDao {public int add(Student stu) {String sql = "insert into student values(?,?,?,?)";Object[] parm = { stu.getStudentid(), stu.getStudentName(),stu.getStudentSex(), stu.getStudentAge() };int a = exectueUpdate(sql, parm);return a;}public int delete(int studentId) {String sql = "delete from student where Id=? ";Object[] parm = { studentId };int a = exectueUpdate(sql, parm);return a;}public int update(Student stu) {String sql = "update Student set name=?, age=?,sex=? where Id=?;";Object[] parm = { stu.getStudentName(), stu.getStudentAge(),stu.getStudentSex(), stu.getStudentid() };int a = exectueUpdate(sql, parm);return a;}public ArrayList<Student> getall() {String sql = "select * from student";ArrayList<Student> list = new ArrayList<Student>();rs = exectueQuery(sql, null);try {while (rs.next()) {Student stuu = new Student();stuu.setStudentid(rs.getInt("id"));stuu.setStudentName(rs.getString("name"));stuu.setStudentSex(rs.getString("sex"));stuu.setStudentAge(rs.getInt("age"));list.add(stuu);}} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}close();return list;}}
所有的代码地址:点击打开链接
使用的软件为:MyEclipse
阅读全文
0 0
- java的JDBC连接的万能版总结(dao模式)
- JDBC连接MYSQL的DAO设计模式
- java jdbc连接Mysql数据库Dao模式下的带配置文件的(properies)
- JDBC连接数据库之编写通用的Dao(7)
- 使用JDBC的连接数据库的步骤和DAO模式的使用
- JDBC Dao的设计模式框架搭建
- 我的JDBC Dao模式链接数据库
- 简单学习 JDBC的DAO模式
- java中常用JDBC的连接模式
- java 下连接数据库的万能类
- java 下连接数据库的万能类
- java 下连接数据库的万能类
- java 下连接数据库的万能类
- java 下连接数据库的万能类
- JDBC(3)JAVA连接数据库之 抽象DAO操作
- 使用反射实现万能DAO(基于JDBC)
- JDBC—总结(2).Dao模式
- JDBC连接DB2的总结
- 【51Nod】1266 蚂蚁
- 【Linux进阶】Ubuntu 16.04安装ElasticSearch
- "Optimization of AC Control in Hybrid Electric Vehicles during Urban Drive Conditions"笔记
- Google VR开发笔记 第0话.前言
- 【BZOJ2427】【树形DP】【Tarjan】 软件安装 题解
- java的JDBC连接的万能版总结(dao模式)
- Marshal.SizeOf和sizeof的区别
- first-missing-positive
- Android学习心得(24) --- Android Handler消息机制源码分析
- MyBatis练习:统计每日比赛胜负场次
- 来自贺老师
- android 内部打开微信
- Server:sffe是什么?
- IOS 38