JNDI配置資料庫連線池
1.配置tomcat中conf目錄下的context.xml檔案
<Resource name = "jdbc/ds"
auth = "Container"
type = "javax.sql.DataSource"
maxActive = "100"
maxIdle = "30"
maxWait = "10000"
username = "sa"
password = "123456a"
driverClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
url = "jdbc:sqlserver://localhost:1433;databaseName=QQDB;"
/>
2.得到資料來源
javax.naming.Context ctx = null;
DataSource ds = null;
try {
ctx = new javax.naming.InitialContext();
ds = (DataSource)ctx.lookup("java:comp/env/jdbc/ds");
System.out.println("資料來源:"+ds);
} catch (NamingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
3.注意:由於JNDI資料來源是由web容器驅動的,所以要將 資料庫驅動Copy到tomcat中的lib目錄下,
並且只能在web頁面下訪問才有效,不能進行區域性測試(有待改進)
測試JNDI配置資料庫連線池(Action)
package com.wang.owbHome.web.action;
import java.sql.Connection;
import java.sql.SQLException;
import javax.naming.NamingException;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.jsp.jstl.sql.Result;
import javax.sql.DataSource;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.wang.owbHome.business.util.DB;
public class TestDataSourceAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
//TODO 測試資料連線池程式碼
javax.naming.Context ctx = null;
DataSource ds = null;
try {
ctx = new javax.naming.InitialContext();
ds = (DataSource)ctx.lookup("java:comp/env/jdbc/ds");
System.out.println("資料來源:"+ds);
} catch (NamingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Connection conn = ds.getConnection();
DB db = new DB();
db.setConnection(conn);
String sql1 = "select * from QQUser";
db.setSqlValues(sql1);
try {
Result rs = db.executeQuery();
if(rs == null || rs.getRowCount() == 0){
System.out.println("沒有結果");
}else{
System.out.println("共有" + rs.getRowCount() +"個結果!");
}
db.closeConn();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("ni");
return mapping.findForward("success");
}
}
相關文章
- .net 資料庫連線池配置資料庫
- mysql資料庫連線池配置教程MySql資料庫
- [求助]資料庫連線池配置問題資料庫
- 資料庫連線池資料庫
- spring如何用JNDI連線資料庫?Spring資料庫
- 《四 資料庫連線池原始碼》手寫資料庫連線池資料庫原始碼
- 資料庫連線池-Druid資料庫連線池原始碼解析資料庫UI原始碼
- druid資料庫連線池的配置類UI資料庫
- Tomcat6資料庫連線池配置Tomcat資料庫
- Tomcat 5.5 配置 MySQL 資料庫連線池TomcatMySql資料庫
- 資料庫連線池原理資料庫
- Proxool資料庫連線池資料庫
- JAVA資料庫連線池Java資料庫
- Flask資料庫連線池Flask資料庫
- 【MySQL】自定義資料庫連線池和開源資料庫連線池的使用MySql資料庫
- python資料庫連線池Python資料庫
- 手寫資料庫連線池資料庫
- 瞭解資料庫連線池資料庫
- 資料庫連線池的理解資料庫
- 資料庫連線池的使用資料庫
- 資料庫連線池淺析資料庫
- WASCE的資料庫連線池資料庫
- PROXOOL資料庫連線池使用資料庫
- 關於資料庫連線池資料庫
- 資料庫連線池實現資料庫
- Javaweb-資料庫連線池JavaWeb資料庫
- tomcat連線池配置,解決資料庫超時Tomcat資料庫
- Tomcat4的資料庫連線池配置 (轉)Tomcat資料庫
- 在JdonFramework中使用JNDI連線Mysql資料庫問題?FrameworkMySql資料庫
- Tomcat4.X 資料庫l連線池的配置Tomcat資料庫
- Tomcat5.5.12的資料庫連線池的配置Tomcat資料庫
- 急:webshere配置資料庫sybase的連線池的問題Web資料庫
- MySql資料庫連線池專題MySql資料庫
- JavaWeb之事務&資料庫連線池JavaWeb資料庫
- Python資料庫連線池DButilsPython資料庫
- 聊聊資料庫連線池 Druid資料庫UI
- JDBC資料庫連線池實現JDBC資料庫
- 資料庫連線池的工作原理資料庫