⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dbinit.java

📁 struts的演示代码
💻 JAVA
字号:
	package com.hrsoft.db;	import java.sql.*; 	import java.util.*; 	import java.io.*; 	import com.hrsoft.db.DBConnectionManager; 	public class dbinit{		// implements Database       		private   Connection conn      = null;         		private   Statement stmt      = null;   		private   PreparedStatement prepstmt = null;   		private   ResultSet rs      = null;   		private   ResultSetMetaData rsmd = null;		private   DBConnectionManager dcm=null;       		private   String Driver      = null;    		private   String url         = null;    		private   String user         = null;    		private   String passwd      = null; 		private boolean isConnect   = false; 		private String odbc         = null; 			private void init(String odb) {			try{				dcm = DBConnectionManager.getInstance(odb);       				//System.out.println(dcm);       				if(dcm == null){      					//this.conn == null ||   					System.out.println("Database Connect false!");      					//throw new Exception("Database Connect false!");  					//return; 					}else{       						this.conn = dcm.getConnection();						//this.setStmt(1);//默认						}               				}catch (Exception e)   {      					e.printStackTrace();      				}       		} 		public dbinit() {      			init("jdbc");      			this.odbc   = "jdbc";  			}     		public dbinit(String odb) {    			if(odb == null)			  odb="jdbc";    			this.odbc   = odb;     			init(odb);      		}        	//zxf modify 		public void setConn(boolean bcommit){			try{				conn.setAutoCommit(bcommit);			}			catch (SQLException e) {				e.printStackTrace();          }		}		public void setCommit(){			try{				 conn.commit();			}			catch (SQLException e) {				e.printStackTrace();          }		}		public void setRollback(){			try{				conn.rollback();			}			catch (SQLException e) {				e.printStackTrace();          }		}		public Statement getStmt(){			return stmt;		}		public ResultSetMetaData executeMetaData(String sql){			try{				  setStmt(1);				  ResultSet rs = stmt.executeQuery(sql);				  rsmd = rs.getMetaData();				}catch(Exception ex)				{					rsmd =  null;					System.err.println("dbinit.executeMetaData():"+ex.getMessage());				}finally				{					return rsmd;				}		}		public void setStmt(int iEnum){			try{				switch(iEnum)				{						case 0:						  stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);						  break;					case 1:						  stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);						  break;					  					case 2:						  stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);						  break;					 					case 3:						  stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);						  break;					 									case 4:						  stmt = conn.createStatement(ResultSet.TYPE_FORWARD_ONLY,ResultSet.CONCUR_UPDATABLE);						  break;					 					case 5:						  stmt = conn.createStatement(ResultSet.TYPE_FORWARD_ONLY,ResultSet.CONCUR_READ_ONLY);						  break;					  					default :						  stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);						  break;					}				}				catch(Exception ex){					  System.err.println("DBConnect.setStmt:"+ex.getMessage());				}		}				public void setStmtPrep(String sql,int iEnum){			try{				switch(iEnum)				{						case 0:						  prepstmt = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);						  break;					case 1:						  prepstmt = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);						  break;					  					case 2:					      prepstmt = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);						  break;					 					case 3:						  prepstmt = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);						  break;					 									case 4:						  prepstmt = conn.prepareStatement(sql,ResultSet.TYPE_FORWARD_ONLY,ResultSet.CONCUR_UPDATABLE);						  break;					 					case 5:						  prepstmt = conn.prepareStatement(sql,ResultSet.TYPE_FORWARD_ONLY,ResultSet.CONCUR_READ_ONLY);						  break;					  					default :						  prepstmt = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);						  break;					}				}				catch(Exception ex){					  System.err.println("DBConnect.setStmtPrep:"+ex.getMessage());				}		}		        public oracle.jdbc.OracleCallableStatement set_SP_Stmt(String spName){			try{                return (oracle.jdbc.OracleCallableStatement)conn.prepareCall(spName);			   }            catch(Exception e)			{			  System.out.println("DBConnect.set_SP_Stmt:"+e.getMessage());			  return null;			}	    }		//*zxf end 		public String getCatalog(){			String tmp = "";       			try{          				if(this.conn != null) 					tmp = this.conn.getCatalog();  				}catch(SQLException e) {					e.printStackTrace(); 					}      			return tmp; 		}                  		public ResultSet executeQuery(String strSQL) { 			try { 				this.setStmt(1);				this.stmt = getStmt();				if(this.stmt != null){  					this.rs = this.stmt.executeQuery(strSQL);   					}   				}			catch(SQLException e) {  					//this.close();					e.printStackTrace();   				} 			finally {   				try{         					// Always close properly  					        				}catch(Exception e){   					e.printStackTrace();  				}    			}			return this.rs; 		}   		public boolean executeUpdate(String strSQL){   			boolean isSuccess    = false;    			try{				setStmt(0);//可更新				stmt.executeUpdate(strSQL);     				isSuccess   = true;     				}			catch(SQLException e)   { 				//this.close(); 				e.printStackTrace(); 				return isSuccess = false;			}			finally {   				try{         				// Always close properly  				       				}catch(Exception e){   					e.printStackTrace();  				}    			}			return isSuccess;   		}       		//public void prepareStatement(String sql,int iType) 		//	throws SQLException { 		//	setStmtPrep(sql,iType); 		//}       		public ResultSet executeQuery() throws SQLException {			if (prepstmt != null) {  				return prepstmt.executeQuery();				}    			else				return null;  		}       		public void executeUpdate() throws SQLException {			if (this.prepstmt != null)  				this.prepstmt.executeUpdate(); 			} 		public void executeBatch() 				throws SQLException {  				if (this.prepstmt != null)     					this.prepstmt.executeBatch();   		}  		public void clearParameters()throws SQLException     {  			prepstmt.clearParameters();     			prepstmt=null;    		}      		public PreparedStatement PreparedStatements(String sql,int iType) { 			setStmtPrep(sql,iType);			return prepstmt;   		}      		public Statement getStatement() {  			return stmt; 		}             		public boolean prepareCall(String process){			//throws Exception     			boolean isSuccess    = false; 			//String procedure = "{call p_test2 (?) }";      			//String procedure = "{call "+process+" }";  			String procedure    = "{select "+process+"}";   			System.out.print(procedure);      			try{				CallableStatement cstmt = this.conn.prepareCall(procedure);  				cstmt.setString(1,"dddddd");				cstmt.setString(2,"ffffff");				cstmt.executeUpdate();    				//rs = cstmt.executeQuery();     				isSuccess   = true;             				}catch(SQLException e){					e.printStackTrace();     				}      			return isSuccess;		} 		public void setString(int index,String value) throws SQLException { 			prepstmt.setString(index, value);   		}       		public void setInt(int index,int value) throws SQLException {			prepstmt.setInt(index,value);  		}       		public void setBoolean(int index,boolean value) throws SQLException { 			prepstmt.setBoolean(index,value);		}		public void setDate(int index,java.sql.Date value) throws SQLException {   			prepstmt.setDate(index,value);   		}   		public void setLong(int index,long value) throws SQLException { 			prepstmt.setLong(index,value);    		}       		public void setFloat(int index,float value) throws SQLException { 			prepstmt.setFloat(index,value);  		}       		public void setBytes(int index,byte[] value) throws SQLException{   			prepstmt.setBytes(index,value);    		} 		public void addBatch() throws SQLException{   			prepstmt.addBatch(); 		}		public boolean Transaction(String sql){ 			//throws Exception      			boolean isSuccess    = false;     			try{        				this.prepstmt = this.conn.prepareStatement(sql);  				}catch(SQLException e){ 					e.printStackTrace();    					} 					/*........................					connection.beginTransaction();  					try{    						connection.commit();       					}catch(SQLException e) 					{						connection.rollback();   						e.printStackTrace();     					}   					....................... */			return isSuccess;  		}		public void close() throws Exception{ 			if (this.rs != null)  {				this.rs.close();				this.rs    = null;  				}      			if (this.stmt != null) { 				this.stmt.close();   				this.stmt = null;  				}      			if (this.prepstmt != null) { 				this.prepstmt.close();      				this.prepstmt = null;     				}     			if (conn!=null){				dcm.freeConnection(this.odbc,conn);  			}     				System.out.println("归还数据库连接池"); 		} 						}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -