本文转自:http://www.blogjava.net/liver/archive/2009/05/31/279309.html
一、配置JNDI数据源
这一步有几种配置方式,比如直接修改Tomcat/conf/server.xml文件,但这样修改是全局的,个人不太喜欢这样的方式,本着的原则是能不全局就不全局,以保证项目能够尽量少的影响到其他项目,尽量少的进行修改。因此这里才用局部配置的方式。
把下边的代码保存为context.xml文件,并放到WebRoot/META-INF目录下。
[size=medium]<!-- 根据实际情况修改 -->
<Context>
<Resource
name="jdbc/test"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/test"
username="root"
password="root"/>
</Context>[/size]
二、编辑web.xml文件,在里边添加如下内容
引用
<servlet>
<servlet-name>Test</servlet-name>
<servlet-class>com.nantian.jndi.Test</servlet-class>
<init-param>
<param-name>jndi</param-name>
<param-value>java:comp/env/jdbc/test</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Test</servlet-name>
<url-pattern>/Test</url-pattern>
</servlet-mapping>
三、最后就是测试配置是否成功了
新建一个Servlet文件Test.java,写下如下内容
package com.nantian.jndi;
import java.sql.Connection;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.sql.DataSource;
public class Test extends HttpServlet {
public void init(ServletConfig config) throws ServletException {
String jndi = config.getInitParameter("jndi");
try {
Context ctx = new InitialContext();
DataSource ds = (DataSource) ctx.lookup(jndi);
Connection conn = ds.getConnection();
System.out.println("连接获取成功:"+conn);
} catch (NamingException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
这样就可以了测试了,这个例子连接的是mysql数据库,别忘记添加mysql驱动的jar包。部署工程,运行Tomcat,在服务器启动的时候就可以看到System.out.println("连接获取成功:"+conn);这条语句输出的信息了。
分享到:
相关推荐
Tomcat源代码主要分为几个关键部分:`catalina`(核心引擎)、`coyote`(HTTP/HTTPS协议处理)、`jasper`(JSP编译器)、`naming`(JNDI服务)、`jdbc-pool`(数据库连接池)和`common`、`server`、`shared`三个类库...
8. DataSource的使用:为了更好地管理数据库连接,可以使用JNDI(Java Naming and Directory Interface)来配置数据源,这样可以避免在代码中硬编码数据库连接信息。配置示例如下: ```xml <name>factory ***...
5. **JNDI**:Java命名和目录接口是Java平台中查找和管理资源的接口,如数据库连接、邮件服务器配置等。JNDI使得应用程序可以通过统一的方式查找和绑定各种命名和目录服务。 6. **实验环境与配置**:这部分可能涉及...
**JSP(JavaServer Pages)** ...这个课程可能涵盖了如何使用JSP创建动态网页,如何设计MySQL数据库,以及如何配置和使用C3P0连接池。对于初学者,这是一个很好的实践项目,可以深入理解Web开发的各个环节。
6. **JNDI(Java Naming and Directory Interface)**:在JSP应用服务器中,如Tomcat,可以使用JNDI查找数据库连接,将数据库连接配置在服务器的配置文件中,而不是硬编码在JSP页面中。 7. **事务管理**:JDBC也...
在这个论坛中,用户可能讨论到如何在这些不同的应用服务器环境下配置Oracle数据库连接,例如设置数据源(DataSource)、处理JNDI查找,或者解决在不同服务器环境下遇到的兼容性和性能问题。此外,论坛也可能涵盖与...
2. **JNDI(Java Naming and Directory Interface)**:JNDI提供了一个查找和管理分布式系统资源的命名和目录服务,例如数据库连接池。 3. **EJB(Enterprise JavaBeans)**:EJB是JavaEE中的企业级组件模型,用于...
8. **JNDI(Java Naming and Directory Interface)**:JNDI提供了一种查找和访问各种命名和目录服务的统一接口,常用于在J2EE环境中查找和绑定资源,如数据库连接池、邮件服务器等。 9. **JTA(Java Transaction ...
通过研究源码,你可以了解到Tomcat如何处理HTTP请求,如何管理Web应用程序的生命周期,以及如何实现会话管理、安全性、连接池等关键功能。这对于Java Web开发者来说是一个宝贵的学习资源,特别是对于那些希望深度...
4. **JDBC Data Source**:这是符合JNDI(Java Naming and Directory Interface)的连接池驱动,通常用于应用服务器环境中,如WebLogic或Tomcat。它提高了性能和可管理性。 接下来,我们来看看如何使用Oracle JDBC...
6. **JNDI(Java Naming and Directory Interface)**:JNDI提供了查找和管理分布式系统资源的接口,例如数据库连接池、邮件服务器等。通过JNDI,开发者可以学习如何在应用中查找和绑定服务。 7. **Web容器与应用...
JNDI(Java Naming and Directory Interface)助手则帮助开发者在Web容器中注册和查找资源,例如数据库连接池、邮件服务器配置等。 "cloudbees-web-container-extras-master"可能是一个包含源代码的主分支,用户...
5. **JNDI(Java Naming and Directory Interface)**:JNDI提供了一个接口,使得Java程序可以查找和访问各种命名和目录服务,如数据库连接池、邮件服务器等。 6. **JMS(Java Message Service)**:JMS是Java EE的...
7. **JNDI(Java Naming and Directory Interface)**:JNDI用于查找和绑定应用中的资源,如数据库连接池。在实验中,学生可能需要了解如何使用JNDI来获取数据库连接。 8. **JTA(Java Transaction API)和JPA...
- **Oracle9i 数据源的配置**:同样需要定义连接池等信息。 **6.3 实体 Bean 发布前的准备工作**: - 确保数据源配置正确。 - 实体类和配置文件准备就绪。 **6.4 单表映射的实体 Bean**: - 定义实体类,使用 `@...
为了方便数据库连接的获取和管理,可以设计一个工具类,该类使用连接池技术来管理数据库连接,提高资源利用率。 - **连接池技术**:利用连接池技术来管理数据库连接,减少频繁创建和关闭数据库连接带来的性能开销。 ...
7. **JNDI(Java Naming and Directory Interface)**:JNDI提供了一个接口,用于查找和管理应用程序的资源,如数据库连接池、邮件服务器配置等。它允许应用在运行时动态查找和绑定资源。 8. **JTA(Java ...