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 stubPrintWriter 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 blocke.printStackTrace();}
连接池
为什么要使用有连接池:传统数据库连接方式的不足:1.每一次请求时需要与数据库进行连接,资源占用较多;2.当并发访问数量较大时,网站速度受到极大影响3.在访问结束后必须要关闭连接释放资源4.系统的安全性和稳定性相对较差企业级开发需要稳健和高效的数据访问层:1.完成对数据库的CRUD操作2.能够处理数据库发生的各种错误3.可以灵活的修改配置4.提供方便使用的工具5.高性能
连接池:连接池是在内存中预设好一定数量的连接对象,以备用户在进行数据库操作时直接使用性能:数据库连接的建立、断开均由统一管理连接池技术与传统数据库连接的比较:1.数据库操作性能得到提升2.通过连接池管理数据库的连接与释放、提高了系统资源的使用效率数据源(DataSource):javax.sql.DataSource接口负责建立与数据库的连接从Tomcat的数据源获得连接把连接保存在连接池中获取数据源:如何获得DAtaSource对象:数据源由Tomcat提供,不能再程序中创建实例;使用JNDI获得DataSource引用访问数据源: