tomcat中配置servlet.xml的JNDI或JDBC连接数据库【原】
tomcat中配置servlet.xml的JNDI或JDBC连接数据库
一. JNDI
1. tomcat环境
找到X:\xxx\......\apache-tomcat-6.0.39\conf\server.xml,在<Host>节点中配置如下:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
<Context path="/platformproxy" docBase="C:/Users/King/Workspaces/KingTool/WebContent/" reloadable="false"> <Resource name="jdbc/platformproxy" factory="org.apache.commons.dbcp.BasicDataSourceFactory"
type="javax.sql.DataSource" maxActive="50" maxIdle="10" maxWait="30"
username="myusername" password="mypassword"
driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@192.168.1.8:1521/orcl"/>
</Context>
</Host>
补充说明:如果报错如下错Cannot create PoolableConnectionFactory (Io 异常: Invalid connection string format, a valid format is: "host:port:sid" ),试着把 factory="org.apache.commons.dbcp.BasicDataSourceFactory"删掉.
设置<context的reloadable为"false">,可以让项目更改java文件免重启直接生产.
在eclipse的项目中配置数据dataSource如下:
<!-- 数据源定义一 -->
<bean id="myDataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:comp/env/jdbc/platformproxy</value> <!-- 需要带java:comp/env/ -->
</property>
</bean>
tomcat完整的配置:
http://www.cnblogs.com/whatlonelytear/articles/7217415.html
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false">
<Context docBase="D:\application\myserver\WebContent" path="/fileupload" reloadable="false">
<Resource
name="jdbc/TestDB" JNDI数据源的name,查找时用:java:comp/env/jdbc/TestDB
type="javax.sql.DataSource" 数据源类型
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory" 数据源工场
driverClassName="com.mysql.jdbc.Driver" JDBC驱动类
url="jdbc:mysql://localhost:3306/test?
characterEncoding=UTF-8&autoReconnectForPools=true&rewriteBatchedStatements=true&useCursorFetch=true&defaultFetchSize=20" 数据库URL地址
username="xxx" 访问数据库用户名
password="xxx" 访问数据库的密码
maxWait="3000" 从池中取连接的最大等待时间,单位ms.
initialSize="10" 初始化连接
maxIdle="60" 最大空闲连接
minIdle="10" 最小空闲连接
maxActive="80" 最大活动连接
validationQuery = "SELECT 1 FROM DUAL" 验证使用的SQL语句
testWhileIdle = "true" 指明连接是否被空闲连接回收器(如果有)进行检验.如果检测失败,则连接将被从池中去除.
testOnBorrow = "false" 借出连接时不要测试,否则很影响性能
timeBetweenEvictionRunsMillis = "30000" 每30秒运行一次空闲连接回收器
minEvictableIdleTimeMillis = "1800000" 池中的连接空闲30分钟后被回收
numTestsPerEvictionRun="10" 在每次空闲连接回收器线程(如果有)运行时检查的连接数量
removeAbandoned="true" 连接泄漏回收参数,当可用连接数少于3个时才执行
removeAbandonedTimeout="180" 连接泄漏回收参数,180秒,泄露的连接可以被删除的超时值
logAbandoned="true" 连接泄漏回收日志记录
/>
</Context>
</Host>
2.weblogic环境
在eclipse的项目中配置数据dataSource如下:
<!-- 数据源定义一 -->
<bean id="myDataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>jdbc/platformproxy</value> <!-- 不需要带java: -->
</property>
</bean>
二. jdbc
直接在eclipse的项目中配置数据dataSource如下:
<bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
<property name="url" value="jdbc:oracle:thin:@192.168.1.8:1521:orcl" />
<property name="username" value="myusername" />
<property name="password" value="mypassword" />
</bean>
如果连接的数据源为双数据源时如下:
<bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
<property name="url" value="jdbc:oracle:thin:@(DESCRIPTION =(ADDRESS_LIST=(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.8)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.8)(PORT = 1521)))(LOAD_BALANCE = yes)(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = zswx) (FAILOVER_MODE = (TYPE = SELECT) (METHOD = BASIC) (RETRIES = 180) (DELAY = 5) ) ) )" />
<property name="username" value="U_IPCIS_POLICY_PLATFORM" />
<property name="password" value="11" />
</bean>
注意url的value,从别的地方复制过去只要是一行(不要换行)即可,不然可能会报错
tomcat中配置servlet.xml的JNDI或JDBC连接数据库【原】的更多相关文章
- 使用JNDI或JDBC连接数据库
一. JNDI 1. tomcat环境 找到X:\xxx\......\apache-tomcat-6.0.39\conf\server.xml,在<Host>节点中配置如下: <H ...
- JNDI和在tomcat中配置DBCP连接池 元数据的使用 DBUtils框架的使用 多表操作
1 JNDI和在tomcat中配置DBCP连接池 JNDI(Java Naming and Directory Interface),Java命名和目录接口,它对应于J2SE中的javax.namin ...
- Tomcat中的Server.xml配置详解
Tomcat中的Server.xml配置详解 Tomcat Server的结构图如下: 该文件描述了如何启动Tomcat Server <Server> <Listener /> ...
- tomcat中的server.xml文件配置了URIEncoding="UTF-8"需要注意的问题
1. get请求传递中文时本地连正式库访问都正常,正式环境下单独访问报错 代码: 请求:project/projectInfo/export/?cks=’项目类型 public String ...
- tomcat中配置jndi数据库源
tomcat添加依赖 lib目录下添加依赖mysql-connector-java-8.0.16 配置数据源 介绍两种方法:tomcat中配置或web应用中配置 tomcat/conf/context ...
- 在Tomcat中配置连接池和数据源
1.DataSource接口介绍 (1)DataSource 概述 JDBC1.0原来是用DriverManager类来产生一个对数据源的连接.JDBC2.0用一种替代的方法,使用DataSource ...
- Spring MVC 使用tomcat中配置的数据源
Spring MVC 使用tomcat中配置的数据源 配置tomcat数据源 打开tomcat目录下的conf目录,编辑sever.xml目录.在<GlobalNamingResources&g ...
- 在Tomcat中配置404自定义错误页面详解
这篇文章主要介绍了在Tomcat中配置404自定义错误页面全解,需要的朋友可以参考下 一直使用tomcat,今天想到一个问题,自定义404错误页面, 为了获得很好的用户感受,是不应当向用户暴露404这 ...
- tomcat关于配置servlet的url-pattern的问题详解
目录 1 servlet url-pattern的匹配问题 1.1 精确匹配 1.2 路径匹配 1.3 后缀匹配 注意:路径和后缀匹配无法同时设置 2 url-pattern中/和/*的区别 3 ur ...
随机推荐
- [2017BUAA软件工程]第0次博客作业
[2017BUAA软件工程]第0次博客作业 结缘计算机 你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢? 计算机是你喜欢的领域吗?是你擅长的领域吗? 我当时报考高考志愿的时候就已经是想好报 ...
- PAT 1009 说反话
https://pintia.cn/problem-sets/994805260223102976/problems/994805314941992960 给定一句英语,要求你编写程序,将句中所有单词 ...
- Linux recursively find files
https://stackoverflow.com/questions/5905054/how-can-i-recursively-find-all-files-in-current-and-subf ...
- Qt_颜色选择对话框(QColorDialog)
转自豆子空间 使用QColorDialog也很简单,Qt提供了getColor()函数,类似于QFileDialog的getOpenFileName(),可以直接获得选择的颜色. include &l ...
- 小程序的wx.onAccelerometerChange
https://www.2cto.com/kf/201802/724174.html(copy) 也许有人会问,小程序中都是竖直app形态,要横竖屏判断有什么用?即使判断出了横屏状态,你能把小程序横过 ...
- 简单FTP服务器搭建
1 配置IIS 打开控制面板-卸载程序-点击 打开或关闭windows功能-勾选 internet信息服务-确定 2 配置iis web站点 开始菜单-搜索iis并进入iis管理器(计算机-右键-管理 ...
- C#實現XML的增刪查改
命名空間:using System.Xml; 1.查找某個節點是否存在: private XmlDocument xmldoc; private string mod="1"; p ...
- python之itemgetter函数:对字典列表进行多键排序
itemgetter函数:对字典列表进行多键排序 from operator import itemgetter list_people = [ {'name': 'Mike', 'age': 22, ...
- python面对对象编程中会用到的装饰器
1.property 用途:用来将对像的某个方法伪装成属性来提高代码的统一性. class Goods: #商品类 discount = 0.8 #商品折扣 def __init__(self,nam ...
- 【Linux】Centos配置ssh无密码登录
[测试环境] 刚好重新做mgr就搞下吧,主要论文好长~想多做几遍再看~ master1 192.168.13.111 master2 192.168.13.112 master3 192.168. ...