Java数据库连接、操作以及应用规范编码举例
2007-08-29 11:42
519 查看
[align=center]Java数据库连接[/align] |
此文主要是数据源连接,并且数据库连接和操作全部封装,在应用层中直接调用。 |
[align=center]数据库连接类[/align] | [align=center]数据库操作类[/align] | [align=center]数据库应用类[/align] |
一.数据库连接类(DBcon.java) |
package **; import java.sql.*; /** * 数据库连接,单态模式 * @author qianbing */ public class DBcon { private Connection con = null; private final String JDBC_DRIVER = "sun.jdbc.odbc.JdbcOdbcDriver";//定义数据驱动 private final String JDBC_URL = "jdbc:odbc:test";//连接数据源 private final String JDBC_USER = "sa";//SQL登陆用户名 private final String JDBC_PWD = "sa";//SQL登陆密码 private static DBcon obj = new DBcon(); public static DBcon newInstance() { return obj; }//封装实例化该类 /** * @return connection */ public Connection getConnection() { try { Class.forName(JDBC_DRIVER); con = DriverManager.getConnection(JDBC_URL,JDBC_USER,JDBC_PWD); } catch(Exception e) { System.out.println("数据库连接错误"+e.getMessage()); } return con; }//封装连接 } |
二.数据库操作类(DBoper.java) |
package **; import java.sql.*; /** * 数据库操作类 * @author qianbing * */ public class DBOper { private Connection con = null; private PreparedStatement pre = null; private ResultSet result = null; public DBOper() { try { con = DBcon.newInstance().getConnection(); } catch(Exception e){ } } /** * * @param SQL */ public void createPreparedStatement(String SQL) { try { pre = con.prepareStatement(SQL); } catch(Exception e) { System.out.println("PreparedStatement Error"+e.getMessage()); } } /** * * @param index * @param value */ public void setInt(int index,int value) { try { pre.setInt(index, value); } catch(Exception e){ System.out.println("setInt error"+e.getMessage()); } } public void setDate(int index,Date value){ try{ pre.setDate(index,value); } catch(Exception e){ System.out.println("setDate error"+e.getMessage()); } } /** * * @param index * @param value */ public void setString(int index,String value) { try { pre.setString(index, value); } catch(Exception e){ System.out.println("setString error"+e.getMessage()); } } /** * * @return */ public ResultSet executeQuery() { try { result = pre.executeQuery(); } catch(Exception e){ } return result; } public int executeUpdate() { int rows = 0; try { rows = pre.executeUpdate(); } catch(Exception e){ } return rows; } /** * 其他方法重写,参照以上方法 */ /** * 关闭数据库各参数 */ public void closeAll() { try { if(null != result) { result.close(); result = null; } if(null != pre) { pre.close(); pre = null; } if(null != con) { con.close(); con = null; } } catch(Exception e) { System.out.println("Close Error"+e.getMessage()); } } } |
三.数据库应用类(ExampleAsset.java) |
package Example; import java.sql.Date; import java.util.*; import java.sql.*; import bean.*; import db.*; /** * <p>Title: </p> * * <p>Description: </p> * * <p>Copyright: Copyright (c) 2007</p> * * <p>Company: </p> * * @author not attributable * @version 1.0 */ public class ExampleAsset { private DBOper db = null; private ResultSet rs = null; public ExampleAsset() { } /* *将数据从数据库中按条件取出存入Vector数组中 */ public Vector SearchEorR(String SQL,AssetBean bean){ Vector objvct=new Vector(); Vector objvct1=new Vector(); db=new DBOper(); try { db.createPreparedStatement(SQL); db.setString(1,bean.getSortBean()); rs=db.executeQuery(); while (rs.next()) { objvct = new Vector(); objvct.add(rs.getString(1));//设备编号 objvct.add(rs.getString(2));//名称 objvct.add(rs.getString(3));//类别 objvct.add(rs.getString(4));//型号 objvct.add(rs.getInt(5));//数量 objvct.add(rs.getFloat(6));//价值 objvct1.add(objvct); } }catch (Exception ex) { ex.printStackTrace(); }finally{ db.closeAll(); } return objvct1; } /* *将数据从数据库中取出存入Vector数组中 */ public Vector SearchEorR1(String SQL){ Vector objvct=new Vector(); Vector objvct1=new Vector(); db=new DBOper(); try { db.createPreparedStatement(SQL); rs=db.executeQuery(); while (rs.next()) { objvct=new Vector(); objvct.add(rs.getString(1));//设备编号 objvct.add(rs.getString(2));//名称 objvct.add(rs.getString(3));//类别 objvct.add(rs.getString(4));//型号 objvct.add(rs.getInt(5));//数量 objvct.add(rs.getFloat(6));//价值 objvct1.add(objvct); } }catch (Exception ex) { ex.printStackTrace(); }finally{ db.closeAll(); } return objvct1; } /* *下拉筐 */ public ArrayList arryListSort(String SQL2){ ArrayList listSort = new ArrayList(); db=new DBOper(); try{ db.createPreparedStatement(SQL2); rs=db.executeQuery(); while (rs.next()){ listSort.add(rs.getString(1)); } } catch(Exception ex){ ex.printStackTrace(); } finally{ db.closeAll(); } return listSort; } /* *更新库存物资表中的数量 */ public int update(String SQL3,int count1,AssetBean bean){ int count=0; db= new DBOper(); try{ db.createPreparedStatement(SQL3); db.setInt(1,count1); db.setString(2,bean.getSortBean()); count=db.executeUpdate(); } catch(Exception e){ e.printStackTrace(); } finally{ db.closeAll(); } return count; } /* * *插入数据 */ public int insert(String SQL4,String number,String day1,String AD,String purpose,String remark,String name){ int count=0; db= new DBOper(); try{ db.createPreparedStatement(SQL4); db.setString(1,number); db.setString(2,day1); db.setString(3,AD); db.setString(4,purpose); db.setString(5,remark); db.setString(6,name); count=db.executeUpdate(); } catch(Exception e){ e.printStackTrace(); } finally{ db.closeAll(); } return count; } /** * update * * @param SQLCOUNT String * @param countC int * @param beanAsset AssetBean * @return int */ } |
相关文章推荐
- 4.4 串操作应用举例 还没仔细看
- 一步一步学Python(1) 基本逻辑控制举例和编码风格规范
- Linux操作以及c编程规范 、附带个问题
- 委托的应用之二:使用多播委托编码Observer模式。以及事件的引入
- 位操作的基础与应用举例
- 串操作应用举例
- 二分法的应用----------利用随机类生成数组,并用二分法对数组的元素进行查找以及插入操作
- 深入解析Java中的编码转换以及编码和解码操作
- UTF-8编码字节含义-以及应用
- C#操作Excel的类以及其使用举例说明
- B树(B-Tree)的由来、数据结构、基本操作以及数据库索引的应用
- Java操作Excel文件以及在Android中的应用
- Java操作Excel文件以及在Android中的应用
- android文件读写以及不同应用之间的文件读写操作
- orcale优化统计以及占位操作、统计函数的应用(2)
- MPEG-4与H.264的区别 , 编码 以及 应用
- js值字符集编码以及对其应用的理解
- DB2安装部署以及应用部署配置操作
- B树(B-Tree)的由来、数据结构、基本操作以及数据库索引的应用
- 文章标题 Java中io流的一些简单操作(包含文件复制,向硬盘中写入文本文件,以及io流高级应用序列化和反序列化)