当前位置: 代码迷 >> Java Web开发 >> 用jndi连接数据源的方法
  详细解决方案

用jndi连接数据源的方法

热度:413   发布时间:2005-05-08 17:48:00.0
用jndi连接数据源的方法

jndi连接数据源的方法

1, 首先配置环境,安装,jdktomcat5.0sqlserver。把sqlserver驱动加入 X:\Tomcat 5\common\lib目录下,X代表tomcat5.0的安装盘符。

2, 打开X:\Tomcat 5\conf\server.xml文件,在<Service>段中加入一个Context: <Context path="/jsptest" docBase="jsptest" debug="5" reloadable="true" crossContext="true"> </Context> 运行tomcat。打开浏览器在地址栏中输入http://localhost:8080/,如果页面正常显示说明配置成功。进入tomcat的管理页面http://localhost:8080/admin/frameset.jsp ,选择左边树型目录的Data Sources选项,然后在右边的Data Source Actions选项中选择Create New Data Source ,分别输入各项的值 JNDI NAME为jdbc/mssql Data Source URLjdbc:microsoft:sqlserver://192.168.1.14:1433;DatabaseName=pubs JDBC Driver Classcom.microsoft.jdbc.sqlserver.SQLServerDriver UserName Password为自己sqlserver的服务器地址,其他选项默认就可以了,最后保存退出。

3, 打开X:\Tomcat 5\conf\Catalina\localhost这个目录。下面会有一个jsptest.xml的的文件,打开后在<Context> </Context>加入 <ResourceLink global="jdbc/mssql" name="jdbc/mssql" type="javax.sql.datasource"/>然后保存文件

4, 在x:\Tomcat 5\webapps目录下新建名为jsptest的文件夹,然后在jsptest的文件夹里面建立名为WEB-INF的文件夹。在这个文件夹里面编写web.xml文件,代码如下 <?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>

<description> Examples for the 'standard' taglib (JSTL)

</description>

<listener>

<listener-class>org.apache.taglibs.standard.examples.startup.Init</listener-class>

</listener>

<welcome-file-list> <welcome-file>index.jsp</welcome-file>

<welcome-file>index</welcome-file>

</welcome-file-list>

<taglib>

<taglib-uri>/jstl-examples-taglib</taglib-uri>

<taglib-location>/WEB-INF/jstl-examples.tld</taglib-location> </taglib> <taglib>

<taglib-uri>http://jakarta.apache.org/taglibs/standard/scriptfree</taglib-uri> <taglib-location>/WEB-INF/scriptfree.tld</taglib-location>

</taglib>

<taglib>

<taglib-uri>http://jakarta.apache.org/taglibs/standard/permittedTaglibs</taglib-uri>

<taglib-location>/WEB-INF/permittedTaglibs.tld</taglib-location>

</taglib>

<resource-ref>

<description>connectDB test</description>

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

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

<res-auth>Container</res-auth> </resource-ref>

</web-app>

5.在jsptest的文件夹下建立测试的jsp文件,名字为connpool.jsp的jsp文件 代码如下 <!--测试数据源--> <%@ page contentType="text/html; charset=gb2312" %> <%@ page import="javax.naming.Context" %> <%@ page import="javax.sql.DataSource"%> <%@ page import="javax.naming.InitialContext"%> <%@ page import="java.sql.*"%> <% try{ Context initContext = new InitialContext(); DataSource ds = (DataSource)initContext.lookup("java:/comp/env/jdbc/mssql"); if(ds!=null) { out.println("已经获得DataSource!"); out.println("<br>"); Connection conn = ds.getConnection(); Statement stmt=conn.createStatement(); ResultSet rs=stmt.executeQuery("select * from authors"); out.println("以下是从数据库中读取出来的数据"); out.println("<br>"); while(rs.next()) { out.println("authorsName:"+rs.getString("au_lname")); out.println("<br>"); } rs.close(); stmt.close(); conn.close(); } else out.println("连接失败!"); } catch(Exception ne) { out.println(ne); }

%> 打开tomcat,在地址栏中输入http://localhost:8080/jsptest/connpool.jsp就可以看到从数据库中得到的数据了! 好了,终于写完了,头一次写那么多的东西,比较粗糙,不足之处希望大家可以来给我指点一下。我的qq:20691633

搜索更多相关主题的帖子: 数据源  Roman  Times  

----------------解决方案--------------------------------------------------------
呵呵
不错的了哈
向你学习ing

好贴,怎么能让沉了呢?我靠!!!

[此贴子已经被作者于2005-5-13 12:44:02编辑过]



----------------解决方案--------------------------------------------------------
写的不错嘛,学习中!!!!!
----------------解决方案--------------------------------------------------------
恩,好!支持一下。
----------------解决方案--------------------------------------------------------
支持!!!我加你,以后交流!~~
----------------解决方案--------------------------------------------------------
这个怎么看啊

[此贴子已经被作者于2005-11-22 12:50:14编辑过]



----------------解决方案--------------------------------------------------------
以下是引用末代地主在2005-11-22 12:50:00的发言:
这个怎么看啊

你点击一下“运行代码”就OK了


----------------解决方案--------------------------------------------------------

哦,多谢提示,不过我想问一个问题
<Context path="/jsptest" docBase="jsptest" debug="5" reloadable="true" crossContext="true"> </Context>
我配置了之后起动Tomcat出现异常提示,因为我用的虚拟目录,我也把参数jsptest改成了我的虚拟目录名,但虽然出现Tomcat出现异常提示,可也可以打开其它的jsp文件,还有一个问题,docBase="jsptest" debug="5" 这两设置分别设置的是什么?
多谢先!!!


----------------解决方案--------------------------------------------------------
怎么这个论坛这么冷,版主哪去了,想想办法啊。

----------------解决方案--------------------------------------------------------
  相关解决方案