理解JNDI+理解“连接池“

  • JNDI是什么

                java Naming and Directory Interface:java命令与目录接口

                目录服务的Java API

  • JNDI能做什么

                通过将名称与资源或服务进行关联,为查询和访问各种命名和目录服务提供通用,统一的接口

  • JNDI的作用与优点

                简化应用对于资源的配置及维护工作

                可以更大范围,不同应用之间共享资源

JNDI API  2-1:

        配置资源:

                修改Tomcate的context.xml文件,配置Environment环境变量

找到E:\apache-tomcat-8.5.31\conf 下的context.xml写
<!--
    	name:变量名
	value:变量值
	type:数据类型
    -->
<Environment name="tjndi" value="helloJNDI!" type="java.lang.String"/>

JNDI API  2-2:

  • 在JSP页面编写代码,通过JNDI访问发布消息
    • 通过Context的lookup()方法查询资源       
<%
    //创建Context
    Context context=new InitialContext();
    //前缀 java:comp/env/
    String lookup = (String) context.lookup("java:comp/env/tjndi");
    out.print(lookup);
  %>

配置数据源:

  •         配置Tomcat安装配置目录/conf/context.xml文件
<Resource name="jdbc/base" auth="Container" type="javax.sql.DataSource" maxTotal="100"
maxIdle="20" maxWaitMillis="10000" username="root" password="123.com" 
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/test?serverTimezone=GMT-8&amp;characterEncoding=utf8"/> 

//我的数据库名字是我上面写的代码的url中的test   可以修改

  • 修改XML:
2.修改xml
     <!--添加数据源-->
<resource-ref>
    <res-ref-name>jdbc/base</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>

//3.再将mysql的jar包  复制到  E:\apache-tomcat-8.5.31\lib

//4.修改BaseDao

//5.创建一个测试类看是否连接成功

//5.在创建一个页面测试是否连接成功:TestUserJNDI.jsp
<%
  BaseDao bd=new BaseDao();
  Connection conn= bd.getConn();

  if (conn!=null){
    out.print("连接成功");
  }else{
    out.print("连接失败");
  }
  bd.CloseAll(conn,null,null);
%>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值