|

- package com.zjw.jdbc;
- import java.io.InputStream;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.util.Properties;
- public class DBUtils {
- static Connection ct = null;
-
- // 连接数据库参数
- private static String url = "";
- private static String username = "";
- private static String driver = "";
- private static String password = "";
- // 读配置文件
- private static Properties pp = null;
- private static InputStream fis = null;
- static {
- // 加载驱动,只需要一次
- try {
- pp = new Properties();
- //fis = new FileInputStream("src/dbinfo.properties");
- //在java web中,读取文件要使用类加载器,资源目录默认src
- fis=SqlHelp.class.getClassLoader().getResourceAsStream("com/zjw/jdbc/dbinfo.properties");
- pp.load(fis);
- //从属性文件中读取信息
- url = pp.getProperty("url");
- username = pp.getProperty("username");
- driver = pp.getProperty("driver");
- password = pp.getProperty("password");
- Class.forName(driver);
- } catch (Exception e) {
- e.printStackTrace();
- System.exit(-1);
- }
- }
- // 得到连接
- public static Connection getConnection() {
-
- try {
- ct= DriverManager.getConnection(url, username, password);
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return ct;
-
- }
-
- //关闭连接
- public static void closeConn(ResultSet rs,PreparedStatement ps,Connection ct) {
-
- if(rs!= null)
- try {
- rs.close();
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- if(ps!= null)
- try {
- ps.close();
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- if(ct != null)
- try {
- ct.close();
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- }
- }
- /*
- * 主要用于对数据库的crud操作
- */
- package com.zjw.jdbc;
- import java.io.*;
- import java.sql.*;
- import java.util.*;
- /**
- * @author Delver_Si
- *
- */
- public class SqlHelp {
- private Connection ct = null;
- private PreparedStatement ps = null;
- private ResultSet rs = null;
-
- // 查询方法,得到ArrayList集合
- public ArrayList<Object[]> executeQuery(String sql,String...paras) {//...可变参数
-
- ArrayList<Object[]> al = new ArrayList<Object[]>();
- try {
- ct=DBUtils.getConnection();
- ps = ct.prepareStatement(sql);
- for(int i=0;i<paras.length;i++){
- ps.setString(i+1, paras);
- }
- rs = ps.executeQuery();
-
- ResultSetMetaData rsmd=rs.getMetaData();
- //返回结果集有多少列
- int columNum= rsmd.getColumnCount();
- while(rs.next()){
- Object[] objects=new Object[columNum];
- for(int i=0;i<objects.length;i++){
- objects=rs.getObject(i+1);
- }
- al.add(objects);
- }
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }finally{
-
- DBUtils.closeConn(rs, ps, ct);
- }
-
-
- return al;
- }
-
- //增删改方法
- public int executeUpdate(String sql) {
- int i=0;
- // 获得连接
- try {
- ct=DBUtils.getConnection();
- // 创建一个基于该连接的语句对象
- ps = ct.prepareStatement(sql);
- // 执行sql语句
- i =ps.executeUpdate();
-
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- DBUtils.closeConn(rs, ps, ct);
- }
- return i;
- }
- }
- dbinfo.properties.bak(oracle )
- url=jdbc:oracle:thin:@127.0.0.1:1521:ORCL
- username=scott
- driver=oracle.jdbc.driver.OracleDriver
- password=tiger
复制代码
|
上一篇:累了困了,玩一玩下一篇:个人对论坛的一些建议!
|