您的位置:首页 > 数据库 > Oracle

java通过配置属性文件连接Oracle数据库

2008-11-05 21:06 441 查看
做web项目开发中,通过配置属性文件实现连接数据库(Oracle)的功能。
1.将属性文件放在WEB-INF/classes目录下
例如属性文件:demo_db.properties
DRIVERS=oracle.jdbc.driver.OracleDriver
URL=jdbc:oracle:thin:@localhost:1521:MyOra
USER=user
PASSWORD=123456
2.写一个连接数据库的类
例如:DBUtils.java

package com.ctcjz.db;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.ResourceBundle;

public class DBUtils {

private static final String OPTION_FILE_NAME = "demo_db";

private static String drivers;

private static String url;

private static String user;

private static String password;

static {

ResourceBundle res = ResourceBundle.getBundle(OPTION_FILE_NAME);

drivers = res.getString("DRIVERS").trim();

url = res.getString("URL").trim();

user = res.getString("USER").trim();

password = res.getString("PASSWORD").trim();

}

public static Connection getConnection() throws SQLException {

Connection conn = null;

try {

Class.forName(drivers).newInstance();

conn = DriverManager.getConnection(url, user, password);

} catch (Exception e) {

e.printStackTrace();

}

if (conn == null) {

throw new SQLException("ctcjz.DBUtils: Cannot get connection.");

}

return conn;

}

public static void close(Connection conn) {

if (conn == null)

return;

try {

conn.close();

} catch (SQLException e) {

System.out.println("ctcjz.DBUtils: Cannot close connection.");

}

}

public static void close(Statement stmt) {

try {

if (stmt != null) {

stmt.close();

}

} catch (SQLException e) {

System.out.println("ajax.DBUtils: Cannot close statement.");

}

}

public static void close(ResultSet rs) {

try {

if (rs != null) {

rs.close();

}

} catch (SQLException e) {

System.out.println("ctcjz.DBUtils: Cannot close resultset.");

}

}

}

3.具体使用

//获取指标列表

String getAreaList() {

JSONArray array = new JSONArray(); //定义JSON数组

String sql = "select AREACODE,AREANAME,STATUS from modelarea";//定义SQL语句

Connection conn = null; //声明Connection对象

PreparedStatement pstmt = null; //声明PreparedStatement对象

ResultSet rs = null; //声明ResultSet对象

try {

conn = DBUtils.getConnection(); //获取数据库连接

pstmt = conn.prepareStatement(sql); //根据sql创建PreparedStatement

rs = pstmt.executeQuery(); //执行查询,返回结果集

while (rs.next()) {

JSONObject obj = new JSONObject();

obj.put("areaCode", rs.getString(1));

obj.put("areaName", rs.getString(2));

obj.put("status", rs.getString(3));

array.add(obj);

}

} catch (SQLException e) {

System.out.println(e.toString());

} finally {

DBUtils.close(rs); //关闭结果集

DBUtils.close(pstmt); //关闭PreparedStatement

DBUtils.close(conn); //关闭连接

}

return array.toString();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐