java DBHelper
2015-06-19 00:00
489 查看
package db; import java.io.FileInputStream; import java.io.InputStream; 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.util.ArrayList; import java.util.List; import java.util.Properties; import javax.servlet.ServletContext; public class DBHelper { private Connection conn=null; private PreparedStatement stm=null; private ResultSet rs=null; private String stringurl=null; public DBHelper(ServletContext ser) { sqlGetConnection(ser); sqlGetConnectionstr(); } public DBHelper(String stringurl) { this.stringurl=stringurl; sqlGetConnectionstr(); } private void sqlGetConnection(ServletContext ser) { ServletContext servletContext = ser; String path=servletContext.getRealPath("/db.conf"); String url=null; InputStream in=null; Properties prop=new Properties(); try { in=new FileInputStream(path); prop.load(in); String IP=prop.getProperty("IP"); String port=prop.getProperty("Port"); String username=prop.getProperty("UserName"); String password=prop.getProperty("PassWord"); String dbname=prop.getProperty("DBName"); String defaultdb=prop.getProperty("DefaultDB"); url="jdbc:"+dbname+"://"+IP+":"+port+"/"+defaultdb+"?user="+username+"&password"+password; this.stringurl=url; in.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } private void sqlGetConnectionstr() { try { //装载驱动 try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { System.out.println("数据库驱动连接错去"); } conn=DriverManager.getConnection(this.stringurl,"root",""); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public void sqlClose() { try { if(rs!=null) { rs.close(); } if(conn!=null) { conn.close(); } if(stm!=null) { stm.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public void AddParameter(Object...setvalue) { try { int i=1; for(Object setv : setvalue) { if(setv.getClass().getName()=="java.lang.String") { stm.setString(i, setv.toString()); } System.out.println(setv.getClass().getName()); if(setv.getClass().getName()=="java.lang.Integer") { stm.setInt(i,Integer.parseInt(setv.toString())); } i++; } } catch (SQLException e) { // TODO Auto-generated catch block sqlClose(); e.printStackTrace(); } } public int sqlExcuteQuery(String stringsql,Object...setvalue) { sqlGetConnectionstr(); int i=0; try { stm=conn.prepareStatement(stringsql); AddParameter(setvalue); i=stm.executeUpdate(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { sqlClose(); } return i; } private ResultSet sqlResultSet(String stringsql,Object...setvalue) { sqlGetConnectionstr(); try { stm=conn.prepareStatement(stringsql); AddParame 7fe0 ter(setvalue); rs=stm.executeQuery(); } catch (Exception e) { // TODO Auto-generated catch block sqlClose(); e.printStackTrace(); } return rs; } public ResultSet sqlExcuteQueryResultSet(String stringsql,Object...setvalue) { sqlGetConnectionstr(); try { return sqlResultSet(stringsql,setvalue); } catch (Exception e) { // TODO Auto-generated catch block sqlClose(); e.printStackTrace(); } finally { sqlClose(); } return rs; } public int sqlExcuteQueryResultSetRow(String stringsql,Object...setvalue) { int countrow=0; try { sqlResultSet(stringsql,setvalue); while(rs.next()) { countrow++; } } catch (SQLException e) { sqlClose(); e.printStackTrace(); } finally { sqlClose(); } return countrow; } public List<List<Object>> sqlExcuteQueryList(String stringsql,Object...setvalue) { sqlGetConnectionstr(); List<List<Object>> list=null; int countrow=0; try { list=new ArrayList<List<Object>>(); sqlResultSet(stringsql,setvalue); //查看元数据 ResultSetMetaData rsmd=rs.getMetaData(); int countcloumn=rsmd.getColumnCount(); while(rs.next()) { List<Object> listrow=new ArrayList<Object>(); for(int i=1;i<=countcloumn;i++){ listrow.add(rs.getString(i)); } list.add(listrow); countrow++; } } catch (SQLException e) { sqlClose(); e.printStackTrace(); } finally { sqlClose(); } if(countrow==0) { return null; } else { return list; } } }
相关文章推荐
- java mySQLDBHelper类
- DBHelper SQL Server数据库操作类
- 小博老师解析Java核心技术 ——JDBC数据库操作类封装
- Oracle数据库驱动类DBHelper
- 小博老师解析Java核心技术 ——JDBC数据库操作类封装
- 兼容SQLSERVER、Oracle、MYSQL、SQLITE的超级DBHelper
- Java 实现Dbhelper 支持大数据增删改
- 常用的JDBC封装类DBHelper
- C#的DBHelper类,用于winform or 用于ASP.NET网站
- C# DBHelper类 参考(两个)
- dbhelper百度百科
- Java实现Dbhelper支持大数据增删改
- java的jsonhelp类
- Java 8时间和日期API 20例
- [翻译,Java]Java 7 Socket Direct Protocol / SDP
- Java IO
- 在Eclipse中使用Github(EGit)
- DTR Trading - Spring
- springMVC,mybaits整合
- Java Enumeration简单了解