博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用jndi连接数据库
阅读量:4514 次
发布时间:2019-06-08

本文共 1371 字,大约阅读时间需要 4 分钟。

作为新手,首次尝试同jndi连接数据库,遇到不少困难,总结一下知识点,以免忘记:

    JNDI是J2EE中一个很重要的标准,通常我们是在J2EE编程中用到,Tomcat中提供了在JSP和Servelt中直接使用JNDI的方法,主要是通过dbcp连接池

    重点讲使用:

        1.配置context.xml

    注意地址是:tomcat安装目录下的conf该目录下应该有了context.xml文件。貌似以前的版本是在项目目录中的META-INF目录下配置,我刚开始时参考是也是老版本的操作方法,谁知道试了一晚都不行。。。如果不是那里配置的话会可能出现这样的错误提示:javax.naming.NameNotFoundException: Name jdbc is not bound in this Context?

        现在开始配置:

<Context path="/Manager" reloadable="true">

<Resource
name="hello"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
username="root"
password="123456"
maxIdle="4"
maxActive="4"
maxWait="5000"
url="jdbc:mysql://127.0.0.1/jspdev"
/>
</Context>
其中:
name:指定Resource的JNDI名字
type:指定Resource所属的Java类名
driverClassName:指定连接数据库的JDBC驱动程序
username:指定连接数据库的用户名
password:指定连接数据库的口令
maxIdle:指定数据库连接池中的最大空闲连接数目,0表示不受限制
maxActive:指定数据库连接池中的最大活动连接数目,0表示不受限制
maxWait:指定连接池中连接处于空闲状态的最长时间,超过会抛出异常,-1表示无限
url:指定连接数据库的URL

 

  2.将jdbc驱动包放在tomcat安装目录的lib文件夹下

  3. 在Web应用中使用数据源:

javax.naming.Context提供了查找JNDI Resource的接口,可以通过三个步骤来使用数据源对象:
A.获得对数据源的引用:
Context ctx = new InitalContext();
DataSource ds =
(DataSource)ctx.lookup("java:comp/env/hello");
B.获得数据库连接对象:
Connection con = ds.getConnection();
C.返回数据库连接到连接池:
con.close();
在连接池中使用close()方法和在非连接池中使用close()方法的区别是:前者仅仅是把数据库连接对象返回到数据库连接池中,是连接对象又恢复到空闲状态,而非关闭数据库连接,而后者将直接关闭和数据库的连接。

刚刚接触jdni对于原理还不清楚,先记住方法先

转载于:https://www.cnblogs.com/yaoxing92/archive/2013/02/21/2921430.html

你可能感兴趣的文章
error MSB8008: 指定的平台工具集(v120)未安装或无效 解决办法
查看>>
BootstrapTable-导出数据
查看>>
Linux学习笔记 -- 系统目录结构
查看>>
[转载]ExtJs4 笔记(9) Ext.Panel 面板控件、 Ext.window.Window 窗口控件、 Ext.container.Viewport 布局控件...
查看>>
程序设计:找质数
查看>>
第三次作业结对编程
查看>>
Andorid Volley加载网络图片, 每次都会重新加载的问题
查看>>
php+layui数据表格实现数据分页渲染
查看>>
POJ-1077/HDU-1043
查看>>
pronunciation from Longman 2
查看>>
将数组排序组成最小的整数
查看>>
sqlserver学习--1(登陆,时间函数,查看表结构,查看建表语句,IDENTITY() 函数,查询表名称,查询表结构)...
查看>>
MYSQL 日期函数
查看>>
Oracle触发器之替代触发器
查看>>
NodeJS基础教程之一
查看>>
你真的了解SDWebImage吗?
查看>>
BZOJ 1101 Luogu P3455 POI 2007 Zap (莫比乌斯反演+数论分块)
查看>>
C#嵌套类
查看>>
2017《面向对象程序设计》课程作业三
查看>>
[HDU] 1068 Girls and Boys(二分图最大匹配)
查看>>