1. 将sqljdbc4.jar放到/TOMCATHOME/LIB目录下
2. 在conf目录下建立context.xml文件,内容如下:
encoding='utf-8'?>
docBase="${catalina.home}/webapps/proName"
debug="5" reloadable="true"
crossContext="true">
name="jdbc/sqlserver"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433;DatabaseName=dbname"
username="testuser"
password="1qaz"
maxActive="50"
maxIdle="30"
maxWait="500"
removeAbandoned="true"
removeAbandonedTimeout="60"
logAbandoned="true"/>
3. 将sqljdbc4.jar、sqljdbc.jar放到项目-web-inf-lib目录下
4. 在web.xml中加入:
DB
Connection
jdbc/sqlserver
javax.sql.DataSource
Container
5. 测试,建立一个jsp页面,起名叫testdb.jsp:
pageEncoding="utf-8"%>
import="java.sql.Connection"%>
import="java.sql.Statement"%>
import="java.sql.PreparedStatement"%>
import="java.sql.ResultSet"%>
import="javax.sql.DataSource"%>
import="javax.sql.*"%>
import="javax.naming.Context"%>
import="javax.naming.InitialContext"%>
String path = request.getContextPath();
String basePath = request.getScheme() +
"://"
+
request.getServerName() + ":" + request.getServerPort()
+ path +
"/";
%>
/p>
Transitional//EN">
href="">
MyJSP 'index.jsp' starting
page
http-equiv="pragma" content="no-cache">
http-equiv="cache-control" content="no-cache">
http-equiv="expires" content="0">
http-equiv="keywords"
content="keyword1,keyword2,keyword3">
http-equiv="description" content="This is my
page">
Connection
conn = null;
Context
initCtx = new InitialContext();
if (initCtx
== null)
throw
new Exception("不能获取Context!");
Context ctx =
(Context) initCtx.lookup("java:comp/env");
Object obj =
(Object) ctx.lookup("jdbc/sqlserver");//获取连接池对象
DataSource ds
= (javax.sql.DataSource) obj; //类型转换
conn =
ds.getConnection();
Statement
stmt = conn.createStatement();
String sql =
"select * from userinfo";
ResultSet rs
= stmt.executeQuery(sql);
while
(rs.next()) {
out.println(rs.getString(1)
+ "
");
}
rs.close();
stmt.close();
conn.close();
out.println("连接池测试成功");
%>
可能出现的问题:
1. 1433端口关闭;解决方法:打开Sql Server Configuration
Manager,找到Sql Server网络配置,MSSQLSERVER的协议,打开TCP/IP协议