JNDI和连接池

JNDI
JNDI(Java Naming and Directory Interface,java命名和目录接口),是一组在java应用中访问命名和目录服务的API;通过名称将资源与服务进行关联
应用步骤:
1.修改Tomcat\conf\context.xml(JNDI查找的名称)文件
<Environment name="jndi" value="hello,jndi" type="java.lang.String"></Environment>
2.使用lookup()查找
// TODO Auto-generated method stub
PrintWriter pw=resp.getWriter();
//创建上下文对象
Context ctx;
try {
ctx = new InitialContext();
//通过jndi上下文对象调用lookup方法获得文件中命名的内容
String jndi=(String) ctx.lookup("java:comp/env/jndi");
pw.write(jndi);
} catch (NamingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
连接池
为什么要使用有连接池:
传统数据库连接方式的不足:
1.每一次请求时需要与数据库进行连接,资源占用较多;
2.当并发访问数量较大时,网站速度受到极大影响
3.在访问结束后必须要关闭连接释放资源
4.系统的安全性和稳定性相对较差
企业级开发需要稳健和高效的数据访问层:
1.完成对数据库的CRUD操作
2.能够处理数据库发生的各种错误
3.可以灵活的修改配置
4.提供方便使用的工具
5.高性能

连接池:连接池是在内存中预设好一定数量的连接对象,以备用户在进行数据库操作时直接使用
性能:数据库连接的建立、断开均由统一管理
连接池技术与传统数据库连接的比较:
1.数据库操作性能得到提升
2.通过连接池管理数据库的连接与释放、提高了系统资源的使用效率
JNDI和连接池
数据源(DataSource):
javax.sql.DataSource接口负责建立与数据库的连接
从Tomcat的数据源获得连接
把连接保存在连接池中
获取数据源:
如何获得DAtaSource对象:数据源由Tomcat提供,不能再程序中创建实例;使用JNDI获得DataSource引用
JNDI和连接池
访问数据源:
JNDI和连接池
JNDI和连接池
JNDI和连接池
JNDI和连接池
JNDI和连接池