读取properties文件,连接数据库与金典的查询方法(返回list)
2017-06-22 00:00
549 查看
package write_demo;
import java.io.File;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Properties;
public class JDBCUtils {
/**
* 连接数据库
* */
public static Connection getConnection() throws Exception {
//读取jdbc.properties文件,获取数据库信息
Properties info = new Properties();
info.load(new FileInputStream(new File("jdbc.properties")));
String url = info.getProperty("url");
String driverClass = info.getProperty("driverClass");
String user = info.getProperty("user");
String password = info.getProperty("password");
//加载驱动
Class.forName(driverClass);
//连接数据库
Connection conn = DriverManager.getConnection(url, user, password);
return conn;
}
/**
* 关闭数据库连接对象
* */
public static void close(ResultSet rs,Statement st,Connection conn){
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(st != null){
try {
st.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
/**
* 金典查询
* */
@SuppressWarnings("unchecked")
public static List select(String sql) {
Statement stat = null;
ResultSet rs = null;
ResultSetMetaData rsmd = null;
java.sql.Connection conOrcale = null;
List ll = new ArrayList();
try {
conOrcale = JDBCUtils.getConnection();
stat = conOrcale.createStatement();
// 得到结果集
rs = stat.executeQuery(sql);
// 用于获取关于 ResultSet 对象中列的类型和属性信息的对象
rsmd = rs.getMetaData();
while (rs.next()) {
try {
Map rowData = new HashMap();
for (int i = 1; i <= rsmd.getColumnCount(); i++)
rowData.put(rsmd.getColumnName(i), rs.getString(i));
ll.add(rowData);
} catch (Exception e) {
e.printStackTrace();
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
conOrcale.close();
stat.close();
rs.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return ll;
}
//测试jdbc是否连接成功
@SuppressWarnings("unchecked")
public static void main(String[] args) throws Exception {
//System.out.println(getConnection());
List list = select("select * from h_hyjx_yellowpages");
for (Object obj : list) {
System.out.println(obj);
}
}
}
import java.io.File;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Properties;
public class JDBCUtils {
/**
* 连接数据库
* */
public static Connection getConnection() throws Exception {
//读取jdbc.properties文件,获取数据库信息
Properties info = new Properties();
info.load(new FileInputStream(new File("jdbc.properties")));
String url = info.getProperty("url");
String driverClass = info.getProperty("driverClass");
String user = info.getProperty("user");
String password = info.getProperty("password");
//加载驱动
Class.forName(driverClass);
//连接数据库
Connection conn = DriverManager.getConnection(url, user, password);
return conn;
}
/**
* 关闭数据库连接对象
* */
public static void close(ResultSet rs,Statement st,Connection conn){
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(st != null){
try {
st.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
/**
* 金典查询
* */
@SuppressWarnings("unchecked")
public static List select(String sql) {
Statement stat = null;
ResultSet rs = null;
ResultSetMetaData rsmd = null;
java.sql.Connection conOrcale = null;
List ll = new ArrayList();
try {
conOrcale = JDBCUtils.getConnection();
stat = conOrcale.createStatement();
// 得到结果集
rs = stat.executeQuery(sql);
// 用于获取关于 ResultSet 对象中列的类型和属性信息的对象
rsmd = rs.getMetaData();
while (rs.next()) {
try {
Map rowData = new HashMap();
for (int i = 1; i <= rsmd.getColumnCount(); i++)
rowData.put(rsmd.getColumnName(i), rs.getString(i));
ll.add(rowData);
} catch (Exception e) {
e.printStackTrace();
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
conOrcale.close();
stat.close();
rs.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return ll;
}
//测试jdbc是否连接成功
@SuppressWarnings("unchecked")
public static void main(String[] args) throws Exception {
//System.out.println(getConnection());
List list = select("select * from h_hyjx_yellowpages");
for (Object obj : list) {
System.out.println(obj);
}
}
}
相关文章推荐
- C# 读取 appconfig文件配置数据库连接的方法
- 如何读取配置文件并连接后台数据库,且对数据库进行操作实例(查询或修改等)
- 2.通过原始的Driver接口通过读取Properties属性文件获取JDBC数据库连接Connection
- Spring使用C3P0,从db.properties文件中读取信息,连接数据库
- Java读取properties文件连接数据库
- 2.通过原始的Driver接口通过读取Properties属性文件获取JDBC数据库连接Connection
- 命令行状态下读取数据库连接文件的方法
- 读取properties文件连接数据库
- 读取配置jdbc.properties文件连接数据库
- 60. C# -- 读取 appconfig文件配置数据库连接的方法
- [读取文件数据],open()的返回类型和【list.append(),造成显性写入\n】。方法参数的缺省带来的影响?
- 读取数据库返回的数据集List中元素的方法
- 通过读取properties文件动态生成对数据库的连接
- 页面有中文查询数据库,返回空,properties文件解决中文乱码
- Java系列-读取properties文件连接数据库
- 在使用servlet时读取database.properties数据库配置文件信息方法
- jdbc中从properties文件中读取数据库连接字符串
- 基于PHP读取TXT文件向数据库导入海量数据的方法
- Java读取properties文件 的六种方法【转】
- DOM4J 读取XML配置文件进行数据库连接