在tomcat中配置JNDI

1.关于tomcat的server.xml配置文件

在tomcat的配置文件conf/server.xml文件的<Host>标签中加入<Context>标签可以标记当前Web应用,应用随系统启动而加载,如:

<Context
            path=""
            docBase="E:\TestPro\WebRoot"
            reloadable="true" >
</Context>

这里讲path属性标记为空,访问系统时就不用加项目名称了,可以直接访问,开发调试比较方便。<Context>代表了运行在<Host>上的单个Web应用,一个<Host>可以有多个<Context>元素,每个Web应用必须有唯一的URL路径,这个URL路径在<Context>中的属性path中设定。

<Context>元素的各属性的意义:

1)path:指定访问该Web应用的URL入口。

2)docBase:指定Web应用的文件路径,可以给定绝对路径,也可以给定相对于<Host>的appBase属性的相对路径,如果Web应用采用开放目录结构,则指定Web应用的根目录,如果Web应用是个war文件,则指定war文件的路径。

3)reloadable:如果这个属性设为true,tomcat服务器在运行状态下会监视在WEB-INF/classes和WEB-INF/lib目录下class文件的改动,如果监测到有class文件被更新的,服务器会自动重新加载Web应用。

2.在tomcat中配置JNDI

如果开发中使用到JNDI,要将数据库信息放入容器中托管,有两种方式:

1)在conf/server.xml中增加<Resource>标签

<Context
            path=""
            docBase="E:\TestPro\WebRoot"
            reloadable="true" >
 <Resource name="dbtest" auth="Container"
  type="javax.sql.DataSource" driverClassName="oracle.jdbc.driver.OracleDriver"
  url="jdbc:oracle:thin:@192.168.16.23:1521:orcl"
  username="test" password="1234" maxActive="20" maxIdle="10"
  maxWait="-1"/>
</Context>

2)在conf/context.xml中增加<Resource>标签

与上面所述类似,讲Resource标签中的内容加入到Context标签中

以上两种方式不同之处在于第一种只对当前Context对应的应用有效,而第二种则对整个容器中的所有应用有效。

3.在Java中调用JNDI

package com.yhd.test.db;

import java.sql.Connection;
import java.sql.SQLException;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.servlet.http.HttpServlet;
import javax.sql.DataSource;

public class TestDBConnection extends HttpServlet {

@Override
public void init() throws javax.servlet.ServletException {
String poolName = "cmsplat";
try {
Context initCtx = new InitialContext();
Context envCtx = (Context)initCtx.lookup("java:comp/env");
DataSource ds = (DataSource)envCtx.lookup(poolName);
Connection connection = null;
try {
connection = ds.getConnection();
if (connection == null || connection.isClosed()) {
System.out.println("连接失败~");
} else {
System.out.println("连接正常");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (NamingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
};

}
 
时间: 2024-12-09 00:52:14

在tomcat中配置JNDI的相关文章

FineReport 部署到tomcat后配置jndi连接

1.首先要在tomcat中配置JNDI 1)拷贝数据驱动包(mysql为例)mysql-connector-java-5.1.6-bin.jar到tomcat下的lib目录: 2)修改F:\apache-tomcat-7.0.73\conf\context.xml: <?xml version="1.0" encoding="UTF-8"?> <!-- <Manager pathname="" /> --> &

Spring MVC 使用tomcat中配置的数据源

Spring MVC 使用tomcat中配置的数据源 配置tomcat数据源 打开tomcat目录下的conf目录,编辑sever.xml目录.在<GlobalNamingResources>标签中添加数据源配置: <Resource name="jdbc/dbsourse" scope="Shareable" type="javax.sql.DataSource" factory="org.apache.tomcat

在Tomcat中配置连接池和数据源

1.DataSource接口介绍 (1)DataSource 概述 JDBC1.0原来是用DriverManager类来产生一个对数据源的连接.JDBC2.0用一种替代的方法,使用DataSource的实现,代码变的更小巧精致,也更容易控制. 一个DataSource对象代表了一个真正的数据源.根据DataSource的实现方法,数据源既可以是从关系数据库,也电子表格,还可以是一个表格形式的文件.当一个DataSource对象注册到名字服务中(JNDI),应用程序就可以通过名字服务获得DataS

在 Tomcat 中配置 SSL/TLS 以支持 HTTPS

本件详细介绍了如何通过几个简单步骤在 Tomcat 中配置 SSL/TLS .使用 JDK 生成自签名的证书,最终实现在应用中支持 HTTPS 协议. 生产密钥和证书 Tomcat 目前只能操作 JKS.PKCS11.PKCS12 格式的密钥存储库.JKS 是 Java 标准的"Java 密钥存储库"格式,是通过 keytool 命令行工具创建的.该工具包含在 JDK 中.PKCS12 格式一种互联网标准,可以通过 OpenSSL 和 Microsoft 的 Key-Manager 来

[转载]JavaEE学习篇之——网络传输数据中的密码学知识以及Tomcat中配置数字证书EE

原文链接:http://blog.csdn.net/jiangwei0910410003/article/details/21716557 今天是学习JavaWeb的第二天,我们来了解什么呢?就了解一下Tomcat中配置数字证书的相关内容,但是在说这部分内容的时候,我们貌似得先说一下数字证书的相关概念,那说到数字证书的时候我们还得了解一些密码学的相关知识,这就是连锁反应吗?好吧不多说了,先来看一下密码学中关于网络中数据传输的知识. 首先来了解一下网络上传输数据的加密方式: 第一种是对称加密:就是

Tomcat中使用JNDI加载JDBC数据源

以前写JDBC的时候总是手工写一个类,用硬代码写上className.url.用户名和密码什么的,然后通过DriverManager获取到Connection.那样写是很方便,但是如果想更改的话,需要修改源码再编译,给后期修改带来不便.最近看到可以使用JNDI的方法使用xml文件配置JDBC数据源,xml文件存放在war下面,这样的话就很方便我们修改jdbc的连接属性了. 首先了解下JNDI吧,百度搜索结果:JNDI(Java Naming and Directory Interface,Jav

JNDI数据源(在Tomcat下配置JNDI多数据源实例)

一,添加数据库驱动包加入classpath. 这里我用到了oracle和mysql.所以由两个jar包:ojdbc14.jar和mysql-connector-java-5.1.13-bin.jar. (有的也说需要添加commons-dbcp-1.4.jar,commons-pool-1.5.4.jar和commons-collections.jar,我做了测试,不用的.网上查了下,DBCP使用Jakarta-Commons Database Connection Pool,它依赖以下三个包:

Tomcat中配置自定义404错误页面

404,50x这种错误经常遇到. 如果%CATALINA_HOME%\conf\web.xml和具体应用中都有设置%CATALINA_HOME%\webapps\ROOT\WEB-INF\web.xml 则应用中的生效. 如何设置一个友好的用户体验,以windows环境为例: 添加发生异常时,默认的文件,文件位置如下(如果没有设置reloadable为true或autoDeploy="true",则需要重启tomcat让更改的web.xml生效): (1)%CATALINA_HOME%

在tomcat中配置连接池

在tomcat的conf/Catalina/localhost目录下配置项目路径,tomcat启动是会直接根据配置去加载项目. 虽然配置就一句话,但经常忘,今天记下来. 如果你的项目成名是:mypro,那你的文件命名为:mypro.xml. 文件里一句话:<Context docBase="D:\Workspaces\mypro\WebRoot" path="/mypro" reloadable="true"/> docBase是项目