非全局jndi配置步骤 :此种配置方式不需要在server.xml中配置数据源,而只在tomcat/conf/Catalina/localhost下的启动配置中配置即可。注意红色字体名称必须和相同。

0、需要在tomcat/common/lib下加入数据库连接的jar包

1、web.xml配置

<resource-ref>
     <description>my DB Connection</description>
     <res-ref-name>mydataSource </res-ref-name>  
     <res-type>javax.sql.DataSource</res-type>
     <res-auth>Container</res-auth>
 </resource-ref>

2、applicationContext.xml下配置

<bean id="dataSource"
    class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName" value="java:comp/env/mydataSource " />
</bean>

3、在tomcat的conf下的localhost下的配置如下

<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="F:/workspace/cuapp/WebRoot" path="cuapp" reloadable="false">
<Resource name="mydataSource" auth="Container" type="javax.sql.DataSource"
                   url="jdbc:oracle:thin:@192.168.2.104:1521:ora10g"
                driverClassName="oracle.jdbc.driver.OracleDriver"
                password="aa"
                username="aa"
                initialSize="2"
                maxActive="3"
                maxIdle="1"
                minIdle="1"
                maxWait="10000"
                removeAbandoned="true"
                logAbandoned="true"
                removeAbandonedTimeout="60"
                timeBetweenEvictionRunsMillis="900000"
                minEvictableIdleTimeMillis="1800000"
                numTestsPerEvictionRun="100"
                validationQuery="select count(0) from dual"
                poolPreparedStatements="true"
                maxOpenPreparedStatements="100"/>
</Context>

 

全局jndi配置 :此种配置需要在server.xml中配置数据源。

0、需要在tomcat下加入数据库连接的jar包

1、web.xml配置

<resource-ref>
    <description>my DB Connection</description>
    <res-ref-name>mydataSource </res-ref-name>   must be same as server.xml
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>

2、applicationContext.xml下配置

<bean id="dataSource"
    class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName" value="java:comp/env/mydataSource " />
</bean>

3、server.xml中配置为

<!-- Global JNDI resources -->
 <GlobalNamingResources>
   <!-- Test entry for demonstration purposes -->
   <Environment name="simpleValue" type="java.lang.Integer" value="30"/>
   <!-- Editable user database that can also be used by
        UserDatabaseRealm to authenticate users -->
   <Resource name="UserDatabase" auth="Container"
             type="org.apache.catalina.UserDatabase"
      description="User database that can be updated and saved"
          factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
         pathname="conf/tomcat-users.xml" />
   <Resource name="mydataSource" auth="Container" type="javax.sql.DataSource"
                               url="jdbc:oracle:thin:@192.168.2.104:1521:ora10g"
                           driverClassName="oracle.jdbc.driver.OracleDriver"
                           password="aa"
                           username="aa"
                           initialSize="5"
                           maxActive="10"
                           maxIdle="5"
                           minIdle="2"
                           maxWait="10000"
                           removeAbandoned="true"
                           logAbandoned="true"
                           removeAbandonedTimeout="60"
                           timeBetweenEvictionRunsMillis="900000"
                           minEvictableIdleTimeMillis="1800000"
                           numTestsPerEvictionRun="100"
                           validationQuery="select count(0) from dual"
                           poolPreparedStatements="true"
                           maxOpenPreparedStatements="100"/>
 </GlobalNamingResources>

4、tomcat/conf下localhost下的配置如下

<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="F:/workspace/cuapp/WebRoot" path="xj-adminportal" reloadable="false">
    <ResourceLink name="mydataSource " global="mydataSource " type="javax.sql.DataSource"/>
</Context>
 
当一个人找不到出路的时候,最好的办法就是将当前能做好的事情做到极致,做到无人能及。

JNDI+Tomcat配置数据源的两种方式的更多相关文章

  1. MyBatis配置数据源的两种方式

    ---------------------siwuxie095                                     MyBatis 配置数据源的两种方式         1.配置方 ...

  2. web.config文件中配置数据库连接的两种方式

    web.config文件中配置数据库连接的两种方式 标签: 数据库webconfig 2015-04-28 18:18 31590人阅读 评论(1)收藏举报    分类: 数据库(74)  在网站开发 ...

  3. spring配置属性的两种方式

    spring配置属性有两种方式,第一种方式通过context命名空间中的property-placeholder标签 <context:property-placeholder location ...

  4. springmvc配置AOP的两种方式

    spingmvc配置AOP有两种方式,一种是利用注解的方式配置,另一种是XML配置实现. 应用注解的方式配置: 先在maven中引入AOP用到的依赖 <dependency> <gr ...

  5. Spring Boot配置过滤器的两种方式

    过滤器(Filter)是Servlet中常用的技术,可以实现用户在访问某个目标资源之前,对访问的请求和响应进行拦截,常用的场景有登录校验.权限控制.敏感词过滤等,下面介绍下Spring Boot配置过 ...

  6. jdk配置java_home的两种方式

    在开发java项目的时候,要先安装jdk,安装完jdk之后我们要配置环境变量.今天说一下java home环境变量. 配置环境变量有两种方式,一种就是在计算机的环境变量里面配置.这个是很简单的.如果你 ...

  7. guice基本使用,配置模块的两种方式(三)

    guice是使用module进行绑定的,它提供了两种方式进行操作. 第一种是继承AbstractModule抽象类. package com.ming.user.test; import com.go ...

  8. spring in action学习笔记十六:配置数据源的几种方式

    第一种方式:JNDI的方式. 用xml配置的方式的代码如下: 1 <jee:jndi-lookup jndi-name="/jdbc/spittrDS" resource-r ...

  9. Spring总结——控制反转,注入(配置和注解两种方式)

    一.Spring的容器: 1.什么是控制反转:传统的方法,当某个java对象A需要调用对象B时,是由调用者(对象A)通过new关键字来创建对象B的(也可以说类A依赖类B),而在Spring中,则是由s ...

随机推荐

  1. luoguP1312 Mayan游戏 题解(NOIP2011)

    luoguP1312 Mayan游戏 题目 #include<bits/stdc++.h> #define ll long long #define rg register #define ...

  2. python面试题之Python如何实现单例模式?

    #使用__metaclass__(元类)的高级python用法 class Singleton2(type): def __init__(cls, name, bases, dict): super( ...

  3. 2019牛客暑期多校训练营(第一场) - A - Equivalent Prefixes - 单调栈

    A - Equivalent Prefixes - 单调栈 题意:给定两个n个元素的数组a,b,它们的前p个元素构成的数组是"等价"的,求p的最大值."等价"的 ...

  4. 全文搜索引擎 elasticsearch.net

    原文:https://www.cnblogs.com/lonelyxmas/p/10767436.html

  5. 【学习总结】尚硅谷2019java数据结构和算法

    相关链接 github:javaDSA 目录 第一章 内容介绍和授课方式 第二章 数据结构和算法概述 第三章 稀疏数组和队列 第四章 链表 第五章 栈 第六章 递归 第七章 排序算法 第八章 查找算法 ...

  6. Linux防火墙--iptables--白名单配置

    1.服务器22端口和1521端口开通给指定IP [root@node2 sysconfig]# iptables -t filter -nL INPUT Chain INPUT (policy ACC ...

  7. Android kotlin静态属性、静态方法

    只需要用 companion object 包裹相应代码块即可.以静态属性为例: class Constants { companion object { val BASE_URL = "h ...

  8. oracle多表连接方式Hash Join Nested Loop Join Merge Join

    在查看sql执行计划时,我们会发现表的连接方式有多种,本文对表的连接方式进行介绍以便更好看懂执行计划和理解sql执行原理. 一.连接方式:        嵌套循环(Nested  Loops (NL) ...

  9. zoj 3325 Machine(线段树)

    题意:0~n-1的数组,初始值为0:执行m个操作,每次操作执行后输出当前值为0的连续段的段数. 操作1: p i j : i~j区间的每个元素值减1 操作2: r i j :i~j区间的每个元素值加1 ...

  10. xampp 配置HTTPS

    参考:  https://blog.csdn.net/qq_35128576/article/details/81326524