分享
 
 
 

oracle自带的连接池的使用以及连接SQL2K数据库的测试

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

分为三个文件:第一个文件是引用ORACLE自带的连接池的类,第二个文件是连接SQL2K的类文件,第三个是一个JSP文件,用于显示结果

******************

OraPooledSQL.java

******************

______________________________________________________________________

/*

* Created on 2004-7-9

*

* To change the template for this generated file go to

* Window>Preferences>Java>Code Generation>Code and Comments

*/

package myclass.DBconn;

/**

* @author Ericsson

*

* To change the template for this generated type comment go to

* Window>Preferences>Java>Code Generation>Code and Comments

*/

import java.sql.*;

import javax.sql.*;

import oracle.jdbc.pool.*;

public class

{

private PooledConnection dbpool;

/**

@param ConnectionURL

连接名 如:jdbc:oracle:thin:@192.168.1.232:1521:orcl

@param UserID 用户名

@param PassWord 用户密码

*/

public OraPooledSQL(String ConnectionURL,String UserID,String PassWord)

{

try{

OracleConnectionPoolDataSource ocpds = new OracleConnectionPoolDataSource();

ocpds.setURL(ConnectionURL);

ocpds.setUser(UserID);

ocpds.setPassword(PassWord);

dbpool = ocpds.getPooledConnection();

System.out.println("connect_test Success");

}

catch(Exception ex)

{

System.err.println("Error in PooledSQL-construct : ");

ex.printStackTrace(System.err);

}

}//end OraPooledSQL

//close dbpool

protected void finalize()

{

if( dbpool != null )

{

try

{

dbpool.close();

}

catch(Exception ex)

{

}

}

}

/**

用于更新、添加或删除的SQL语句

@param SQL SQL语句字串,如:insert into tablename values(id,......)

*/

public int Update(String SQL)

{

Statement stmt = null;

int rc = 0;

Connection connection = null;

try

{

connection = dbpool.getConnection();

stmt = connection.createStatement();

rc = stmt.executeUpdate(SQL);

}

catch( Exception ex )

{

System.err.println("Error in Update - OraPooledSQL : ");

ex.printStackTrace(System.err);

}

return rc;

} //end Update()

/**

用于查询的SQL语句

@param SQL SQL语句字串,如:select * from tablename

*/

public ResultSet Query(String SQL)

{

Statement stmt = null;

ResultSet rs = null;

Connection connection = null;

try

{

connection = dbpool.getConnection();

stmt = connection.createStatement();

rs = stmt.executeQuery(SQL);

}

catch( Exception ex )

{

System.err.println("Error in Query - SQLBean : ");

ex.printStackTrace(System.err);

}

return rs;

} //end Query

} //end Class

______________________________________________________________________

***************

DBconn.java

***************

______________________________________________________________________

/*

* Created on 2004-7-8

*

* To change the template for this generated file go to

* Window>Preferences>Java>Code Generation>Code and Comments

*/

package myclass.DBconn;

import java.sql.*;

/**

* @author Ericsson

*

* To change the template for this generated type comment go to

* Window>Preferences>Java>Code Generation>Code and Comments

*/

public class DBconn {

String url = "jdbc:odbc:lmt";

String DBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";

public static Connection con = null;

ResultSet rs = null;

Statement stmt;

public DBconn() {

try{

Class.forName(DBDriver);//加载数据库驱动程序

}//try

catch(java.lang.ClassNotFoundException e){//出错情况的处理

System.out.println("DBconn():" + e.getMessage());

}

}//DBconn()

/**

* executeQuery操作,用于数据查询,主要是Select

* @param sql 查询字段

* @return 数据集

* @throws SQLException 捕捉错误

*/

public ResultSet executeQuery(String sql){

rs = null;

try {

con = DriverManager.getConnection(url,"sa","");

stmt = con.createStatement();

rs = stmt.executeQuery(sql);

}//try

catch(SQLException ex){//出错情况的处理

System.err.println("aq.executequery:" + ex.getMessage());

}

return rs;

}//executeQuery();

/**

* executeUpdate操作,用于数据更新,主要是Update,Insert

* @param sql 查询字段

* @throws SQLException 捕捉错误

*/

public void executeUpdate(String sql) throws SQLException {

try {

stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);

stmt.executeUpdate(sql);

}

catch (SQLException ex) {

ex.printStackTrace();

System.out.println("dbTrans.executeUpdate:"+ex.getMessage());

throw ex;

}

}

}//class

______________________________________________________________________

***************

db_test.jsp

***************

______________________________________________________________________

<%@ page contentType="text/html; charset=GBK" %>

<%@ page import = "java.net.URL"%>

<%@ page import = "java.sql.*"%>

<%@ page import = "myclass.DBconn.OraPooledSQL" %>

<html>

<head>

<title>数据库连接测试</title>

</head>

<jsp:useBean id="DBconn" scope="session" class="myclass.DBconn.DBconn" />

<jsp:setProperty name="DBconn" property="*" />

<body>

<%

java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyyy年MM月dd日");

java.util.Date currentTime_1 = new java.util.Date();

out.print(formatter.format(currentTime_1)+"<br>");

OraPooledSQL orcl = new OraPooledSQL("jdbc:oracle:thin:@192.168.1.232:1521:orcl","webstat","khkj");

ResultSet orcl_rs = orcl.Query("SELECT * FROM s_table");

ResultSet Rs = DBconn.executeQuery("SELECT * FROM test");

%>

<table width="180" border="1" align="left" cellpadding="0" cellspacing="0" bordercolorlight="#C0C0C0" bordercolordark="#FFFFFF">

<tr align="center" bgcolor="#99CCFF"><td colspan="2">连接SQL2K测试</td></tr>

<%while(Rs.next()){ //循环显示查询结果 %>

<tr>

<td><%out.print(Rs.getString("name"));%></td>

<td><%out.print(Rs.getString("sex"));%></td>

</tr>

<%}

Rs.close();%>

</table>

<table width="180" border="1" align="left" cellpadding="0" cellspacing="0" bordercolorlight="#C0C0C0" bordercolordark="#FFFFFF">

<tr align="center" bgcolor="#99CCFF"><td colspan="2">oracle连接池测试</td></tr>

<%while(orcl_rs.next()){ //循环显示查询结果 %>

<tr>

<td><%out.print(orcl_rs.getString("name"));%></td>

<td><%out.print(orcl_rs.getString("caption"));%></td>

</tr>

<%}

orcl_rs.close();%>

</table>

</body>

</html>

______________________________________________________________________

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有