1.先在%TOMCAT_HOME%\conf\server.xml中配置resource:
<Resource
name="jdbc/mysql"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
password="123456"
maxIdle="2"
maxWait="5000"
username="root"
url="jdbc:mysql://localhost:3306/test"
maxActive="4"/>
2.创建一个java项目(需要自己建一些包,然后打包放入tomcat下)或者tomcat项目,以tomcat项目为例(testJNDI),在web-inf下建立一个web.xml文件然后加入以下代码:
<resource-ref>
<description>jdbc/mysql</description>
<res-ref-name>jdbc/mysql</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
3.需要在%TOMCAT_HOME%\conf\server.xml中配置ResourceLink,用以link到这个resource:
<Context
docBase="D:/dev/workspace/common/testJNDI"
path="/testJNDI"
reloadable="true"
workDir="D:\dev\workspace\common\testJNDI\work">
<ResourceLink
global="jdbc/mysql"
name="jdbc/mysql"
type="javax.sql.DataSourcer"/>
</Context>
如果不配置ResourceLink会出现异常:
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
4.增加一个index.jsp用于测试连接情况:
<%@ page contentType="text/html; charset=gb2312"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.naming.*"%>
<%@ page import="javax.sql.*"%>
<%
Context ctx = null;
DataSource ds = null;
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
ctx = new InitialContext();
if (ctx == null)
out.println("no context");
ds = (DataSource) ctx.lookup("java:comp/env/jdbc/mysql");
if (ds == null)
out.println("no datasource");
conn = ds.getConnection();
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
String strSql = "select * from test";
rs = stmt.executeQuery(strSql);
while (rs.next()) {
out.println(rs.getString(2));
}
} catch (Exception ex) {
ex.printStackTrace();
out.println(ex.toString());
} finally {
if (rs != null)
rs.close();
if (stmt != null)
stmt.close();
if (conn != null)
conn.close();
if (ctx != null)
ctx.close();
}
%>
5.将mysql的connet jar放入到%TOMCAT_HOME%\common\lib下面:本交测试是mysql-connector-java-5.0.5-bin.jar。
本次测试出现了异常:
javax.naming.NameNotFoundException: Name mysql is not bound in this Context
是由于在配置Resource时候,Resource的name后多了一个空格。
name="jdbc/mysql "
分享到:
相关推荐
eclipse+mysql+tomcat配置JNDI实现例子 博文链接:https://uuplace.iteye.com/blog/88878
经过实践归纳的,参考了tomcat6.0关于配置JNDI的官方文档。经过测试可以配置成功和使用。
用dbcp连接池,mysql数据库,在tomcat服务器下,通过hibernate配置jndi数据源. 我想此标题已经比较明确了。 在此说明一点,hibernate开发小组不推荐在hibernate下使用dbcp,如果一定要的话,请慎重考虑。
Tomcat5配置MysqlJDBC数据库连接池(JNDI方式)
配置了tomcat之后发现jndi好简单啊,可是碰到了hibernate该怎么做呢,本例详细解析
Tomcat通过JNDI方式连接SqlServer数据库 开发JSP详解
Spring Boot 2.x嵌入式tomcat JNDI数据源(开发配置文件)+ WAR 该代码旨在通过JNDI数据源查找保持数据库访问。 在开发中,使用配置了JNDI数据源的嵌入式tomcat运行在部署为WAR时,它将在服务器上查找真实的JDNI...
一个简单的tomcat6.0+mysql5.5整合spring3.0和hibernate3.3的一个简单的实例,其中的datasource是tomcat JNDI配置的 type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://...
使用 JNDI 示例访问 Tomcat7 数据源描述:访问 Tomcat 7 中配置的两个数据源(Oracle 和 MySQL)的 Web 应用程序添加一名作者技术:Java、Tomcat 7、JDBC 摘要:访问Tomcat 7中配置的数据源的Web应用程序它是什么?...
1.8 Tomcat5启动流程与配置详解 1.9 HttpServlet详解 1.10 Ant使用入门 1.11 Maven Ant之间的比较 1.12 详解MANIFEST.MF文件 1.13 Maven入门--概念与实例 1.14 Subversion 1.15 jar war ear区别 1.16 如何在...
Tomcat中配置JNDI DataSource 配置环境:Windows 2003+Tomcat +mysql 5+ecilpses 3.1 首先,将MYSQL的驱动放在$CATALINA_HOME/common/lib目录下 其次,在$CATALINA_HOME/conf/server.xml文件的标签之前添加如下内容...
配的是mysql数据源,其他请参考官方文档tomcat.apache.org/tomcat-6.0-doc/jndi-datasource-examples-howto.html
在Spring中使用JTA事务管理 1 通过集成JOTM,直接在Spring中使用JTA事务 1.1. 将JOTM以下类库添加到类路径中 1.2. 编写JOTM配置文件,放到类...2.3. 配置Tomcat环境,配置JNDI的数据源 2.4. Spring中相应的配置 3 小结
在tomcat6.0和MySQL5的环境下能运行成功,内含详细的说明和需要用到的文件,不能运行的话加QQ:459789479
安装说明: 文件目录为StrutsArticle --------建立数据表: ...JNDI Name: -> jdbc/StrutsArticle Data Source URL ->jdbc:mysql://localhost:3306/ strutsarticle JDBC Driver Class-> org.gjt.mm.mysql.Driver
使用技术:javabean , jstl, el , ligerUI, jndi , servlet , jsp,idatis 数据库:mysql5.5 浏览器支持: ie6以上版本,谷歌,火狐 毕业的学生也可以拿此系统去做毕业设计哦~ 各种文档开放 希望有兴趣的人能加我...
When I first started using products such as Apache, MySQL, Apache JServer, Sun's Java Web Server, and the first versions of Tomcat, it was in situations where we were all starting out getting our feet...
在tomcat 的lib文件夹中 中导入mysql 驱动包【mysql包文件夹中有】 数据库连接需要在Tomcat/conf目录中的context.xml文件里写入 ....... <Resource name="jdbc/jndidemo" auth="Container" type="javax.sql....