jsp中用JNDI建立数据库连接

太平洋在线 42 0

  例:

  //用JNDI建立连接

  public static Connection getConnectionByJNDI(){

  Connection conn=null;

  DataSource source=null;

  try{

  try{

  Context ic =new InitialContext();

  source=(DataSource) ic.lookup("java:comp/env/jdbc/restrant"); //java:comp/env/为前缀

  }catch(NamingException ne){

  conn=source.getConnection();

  }catch(SQLException e){

  return conn;

  说明:

  javax.naming.Context 提供了查找JNDI Resource 的接口,如上:

  [Context接口的lookup(String name)方法返回与指定的名字绑定的对象]

  Context ic =new InitialContext();

  source=(DataSource) ic.lookup("java:comp/env/jdbc/restrant");

  得到DataSource后通过DataSource的getConnection()方法获得数据库连接对象Connection.

  conn=source.getConnection();

  当然还有JNDI的配置

  一、在Tomcat 根目录confcontext.xml 文件中<Context>节点上添加<Resource>信息,

  例:

  <?xml version='1.0' encoding='utf-8'?>

  <Context>

  <WatchedResource>WEB-INF/web.xml</WatchedResource>

  <Resource name="jdbc/restrant" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="sa" password="123456" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="jdbc:sqlserver://localhost:1433;DataBaseName=restrant"/>

  </Context>

  说明:

jsp中用JNDI建立数据库连接-第1张图片-太平洋在线下载

  二、应用程序的WEB-INFweb.xml 文件配置

  <web-app>

  <resource-ref>

  <description>restrant</description>

  <res-ref-name>jdbc/restrant</res-ref-name>

  <res-type>javax.sql.DataSource</res-type>

  <res-auth>Container</res-auth>

  </resource-ref>

  </web-app>

  说明:

jsp中用JNDI建立数据库连接-第2张图片-太平洋在线下载

  三、添加数据库驱动文件

  把JDBC驱动程序复制到Tomcat 的 commonlib 目录下

标签: 中用 连接 建立 数据库 JNDI

抱歉,评论功能暂时关闭!