package jdbcCon;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.net.URL;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
public class BaseJDBCOpertor {
public Connection conn = null;
public PreparedStatement prestmt=null;
/**
*<p>描述:�?过读取配置文件方式获得jdbc连接</p>
* @return
* @para 参数
* @return Connection
* @author 邱霄�?
* @date 2013-8-15
* @version 1.0
* @throws ClassNotFoundException
* @throws SQLException
* @modifier 修改�?
* @modifyDate 修改时间
* @modifyContent 修改内容
*/
private static Connection getConnection(){
FileReader reader=null;
Properties property;
try {
//URL src= BaseJDBCOpertor.class.getResource("/");
// String path=src.toString().substring(6).replace("%20", " ")+"jdbcConnection/conn.properties";//获取配置文件的路径
String path=System.getProperty("user.dir");
path+="/conn.properties";
reader=new FileReader(path);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
if(reader!=null){
property = new Properties();
try {
property.load(reader);
Class.forName(property.getProperty("DRIVERLOAD"));//加载数据库的驱动
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try {
Connection con = DriverManager.getConnection(property.getProperty("URL"), property.getProperty("USER"), property.getProperty("PASSWORD"));
return con;
} catch (SQLException e) {
System.out.println("不能连接到指定的数据库,请检查相应的基本信息!");
e.printStackTrace();
}
}
return null;
}
/**
*<p>描述:获得连�?/p>
* @return
* @para 参数
* @return boolean
* @author 邱霄�?
* @date 2013-8-15
* @version 1.0
* @modifier 修改�?
* @modifyDate 修改时间
* @modifyContent 修改内容
*/
public boolean openConnection(){
try{
conn=getConnection();
}catch (Exception e) {
e.printStackTrace();
return false;
}
return true;
}
/**
*<p>描述:加载sql语句</p>
* @param sql
* @return
* @para 参数
* @return boolean
* @author 邱霄�?
* @date 2013-8-15
* @version 1.0
* @modifier 修改�?
* @modifyDate 修改时间
* @modifyContent 修改内容
*/
public boolean prepareStatement(String sql){
if(conn== null){
return false;
}
try{
prestmt=conn.prepareStatement(sql);
}catch (SQLException e) {
System.err.println("Error in PrepareStatement(String) : ");
e.printStackTrace(System.err);
return false;
}
return true;
}
public PreparedStatement setPrepareStatement(String sql){
if(conn== null){
return null;
}
try{
String str="SELECT * FROM STUDENT WHERE NAME=?";
prestmt=conn.prepareStatement(str);
prestmt.setString(1, sql);
return prestmt;
}catch (SQLException e) {
System.err.println("Error in PrepareStatement(String) : ");
e.printStackTrace(System.err);
return null;
}
}
/**
*<p>描述:加载sql 语句 带配置信�?/p>
* @param sql
* @param resultSetType
* @param resultSetConcurrency
* @return
* @para 参数
* @return boolean
* @author 邱霄�?
* @date 2013-8-15
* @version 1.0
* @modifier 修改�?
* @modifyDate 修改时间
* @modifyContent 修改内容
*/
public boolean prepareStatement(String sql,int resultSetType,int resultSetConcurrency) {
if (conn == null) //数据库没有连�?
{
return false;
}
try {
prestmt =
conn.prepareStatement(sql, resultSetType, resultSetConcurrency);
} catch (SQLException e) {
System.err.println("Error in PrepareStatement(String,int,int) : ");
e.printStackTrace(System.err);
e.printStackTrace();
return false;
}
return true;
}
/**
*<p>描述:执行查�?/p>
* @return
* @para 参数
* @return ResultSet
* @author 邱霄�?
* @date 2013-8-15
* @version 1.0
* @modifier 修改�?
* @modifyDate 修改时间
* @modifyContent 修改内容
*/
public ResultSet excuteQuery() {
if (prestmt == null) {
return null;
}
try {
return prestmt.executeQuery();
} catch (SQLException e) {
System.err.println("Error in excuteQuery() : ");
e.printStackTrace(System.err);
}
return null;
}
public boolean execute() {
if (prestmt == null) {
return false;
}
try {
return prestmt.execute();
} catch (SQLException e) {
System.err.println("Error in excute() : ");
e.printStackTrace(System.err);
}
return false;
}
/**
*<p>描述:关闭连�?/p>
* @para 参数
* @return void
* @author 邱霄�?
* @date 2013-8-15
* @version 1.0
* @modifier 修改�?
* @modifyDate 修改时间
* @modifyContent 修改内容
*/
public void closeConnection() {
try {
if (prestmt != null) {
try {
prestmt.close();
} catch (SQLException ee) {
}
}
if (conn != null && !conn.isClosed()) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
public String restr(){
return "dasb";
}
public Map<String,String> returnResult(String str) throws SQLException{
ResultSet rs=null;
String NAME=null,scorevalue="$";
Map<String,String> m = new HashMap<String,String>();
ArrayList<String> lt = new ArrayList<String>();
setPrepareStatement(str);
if (prestmt == null) {
return null;
}
try {
rs=prestmt.executeQuery();
} catch (SQLException e) {
System.err.println("Error in excuteQuery() : ");
e.printStackTrace(System.err);
}
if(rs!=null){
while(rs.next()){
NAME=rs.getString("NAME");
lt.add(rs.getString("score"));
}
}
for(int i = 0;i < lt.size(); i ++){
scorevalue+=lt.get(i)+"$";
}
m.put(NAME,scorevalue);
return m;
}
}
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.net.URL;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
public class BaseJDBCOpertor {
public Connection conn = null;
public PreparedStatement prestmt=null;
/**
*<p>描述:�?过读取配置文件方式获得jdbc连接</p>
* @return
* @para 参数
* @return Connection
* @author 邱霄�?
* @date 2013-8-15
* @version 1.0
* @throws ClassNotFoundException
* @throws SQLException
* @modifier 修改�?
* @modifyDate 修改时间
* @modifyContent 修改内容
*/
private static Connection getConnection(){
FileReader reader=null;
Properties property;
try {
//URL src= BaseJDBCOpertor.class.getResource("/");
// String path=src.toString().substring(6).replace("%20", " ")+"jdbcConnection/conn.properties";//获取配置文件的路径
String path=System.getProperty("user.dir");
path+="/conn.properties";
reader=new FileReader(path);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
if(reader!=null){
property = new Properties();
try {
property.load(reader);
Class.forName(property.getProperty("DRIVERLOAD"));//加载数据库的驱动
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try {
Connection con = DriverManager.getConnection(property.getProperty("URL"), property.getProperty("USER"), property.getProperty("PASSWORD"));
return con;
} catch (SQLException e) {
System.out.println("不能连接到指定的数据库,请检查相应的基本信息!");
e.printStackTrace();
}
}
return null;
}
/**
*<p>描述:获得连�?/p>
* @return
* @para 参数
* @return boolean
* @author 邱霄�?
* @date 2013-8-15
* @version 1.0
* @modifier 修改�?
* @modifyDate 修改时间
* @modifyContent 修改内容
*/
public boolean openConnection(){
try{
conn=getConnection();
}catch (Exception e) {
e.printStackTrace();
return false;
}
return true;
}
/**
*<p>描述:加载sql语句</p>
* @param sql
* @return
* @para 参数
* @return boolean
* @author 邱霄�?
* @date 2013-8-15
* @version 1.0
* @modifier 修改�?
* @modifyDate 修改时间
* @modifyContent 修改内容
*/
public boolean prepareStatement(String sql){
if(conn== null){
return false;
}
try{
prestmt=conn.prepareStatement(sql);
}catch (SQLException e) {
System.err.println("Error in PrepareStatement(String) : ");
e.printStackTrace(System.err);
return false;
}
return true;
}
public PreparedStatement setPrepareStatement(String sql){
if(conn== null){
return null;
}
try{
String str="SELECT * FROM STUDENT WHERE NAME=?";
prestmt=conn.prepareStatement(str);
prestmt.setString(1, sql);
return prestmt;
}catch (SQLException e) {
System.err.println("Error in PrepareStatement(String) : ");
e.printStackTrace(System.err);
return null;
}
}
/**
*<p>描述:加载sql 语句 带配置信�?/p>
* @param sql
* @param resultSetType
* @param resultSetConcurrency
* @return
* @para 参数
* @return boolean
* @author 邱霄�?
* @date 2013-8-15
* @version 1.0
* @modifier 修改�?
* @modifyDate 修改时间
* @modifyContent 修改内容
*/
public boolean prepareStatement(String sql,int resultSetType,int resultSetConcurrency) {
if (conn == null) //数据库没有连�?
{
return false;
}
try {
prestmt =
conn.prepareStatement(sql, resultSetType, resultSetConcurrency);
} catch (SQLException e) {
System.err.println("Error in PrepareStatement(String,int,int) : ");
e.printStackTrace(System.err);
e.printStackTrace();
return false;
}
return true;
}
/**
*<p>描述:执行查�?/p>
* @return
* @para 参数
* @return ResultSet
* @author 邱霄�?
* @date 2013-8-15
* @version 1.0
* @modifier 修改�?
* @modifyDate 修改时间
* @modifyContent 修改内容
*/
public ResultSet excuteQuery() {
if (prestmt == null) {
return null;
}
try {
return prestmt.executeQuery();
} catch (SQLException e) {
System.err.println("Error in excuteQuery() : ");
e.printStackTrace(System.err);
}
return null;
}
public boolean execute() {
if (prestmt == null) {
return false;
}
try {
return prestmt.execute();
} catch (SQLException e) {
System.err.println("Error in excute() : ");
e.printStackTrace(System.err);
}
return false;
}
/**
*<p>描述:关闭连�?/p>
* @para 参数
* @return void
* @author 邱霄�?
* @date 2013-8-15
* @version 1.0
* @modifier 修改�?
* @modifyDate 修改时间
* @modifyContent 修改内容
*/
public void closeConnection() {
try {
if (prestmt != null) {
try {
prestmt.close();
} catch (SQLException ee) {
}
}
if (conn != null && !conn.isClosed()) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
public String restr(){
return "dasb";
}
public Map<String,String> returnResult(String str) throws SQLException{
ResultSet rs=null;
String NAME=null,scorevalue="$";
Map<String,String> m = new HashMap<String,String>();
ArrayList<String> lt = new ArrayList<String>();
setPrepareStatement(str);
if (prestmt == null) {
return null;
}
try {
rs=prestmt.executeQuery();
} catch (SQLException e) {
System.err.println("Error in excuteQuery() : ");
e.printStackTrace(System.err);
}
if(rs!=null){
while(rs.next()){
NAME=rs.getString("NAME");
lt.add(rs.getString("score"));
}
}
for(int i = 0;i < lt.size(); i ++){
scorevalue+=lt.get(i)+"$";
}
m.put(NAME,scorevalue);
return m;
}
}