1.自定义一个.XML如:context.xml
context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource
name="jdbc/xxx"
type="javax.sql.DataSource"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="5"
maxWait="500"
username="xx"
password="xx"
url="jdbc:oracle:thin:@192.168.1.159:1521:db01"
maxActive="1000"/>
</Context>
注:可以配置多个<Resource>,也是就连接资源,同样可以配置各种数据库的连接资源。
2.将已经定义好了的xml放到tomcat的conf/Catalina下
3.从xml中读取资源
import java.sql.Connection;
import javax.sql.DataSource;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.naming.Context;
import javax.naming.InitialContext;
/**
* @author admin
*
*/
public class DBLink{
public static Connection getConnection() throws Exception{
Context initct=new InitialContext();
Context envCtx=(Context)initct.lookup("java:comp/env");
DataSource sr=(DataSource)envCtx.lookup("jdbc/xxx");
Connection conn=sr.getConnection();
return conn;
}
public static int SQLUpdate(Connection conn,String sql){
System.out.println(sql);
int i=0;
try{
Statement stmt=conn.createStatement();
i=stmt.executeUpdate(sql);
stmt.close();
}
catch(Exception e){
e.printStackTrace();
//System.out.println(e.toString());
}
return i;
}
public static int getRecordnum(Connection conn,String sql)throws Exception{
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
ResultSet res=stmt.executeQuery(sql);
res.last();
int i=res.getRow()-1;
res.close();
stmt.close();
return i;
}
public static ResultSet SQLQuery(Connection conn,String sql)throws Exception{
Statement stmt=conn.createStatement();
ResultSet res=stmt.executeQuery(sql);
return res;
}
public static int pagenum(int recordnum,int perpage){
int pgnum=1;
for(recordnum=recordnum-pgnum*perpage;recordnum>=0;pgnum++);
return pgnum;
}
public static void closeConnection(Connection conn){
if(conn!=null){
try{
conn.close();
}
catch(Exception ee){
ee.printStackTrace();
}
}
}
}