背景:

    上一篇博客中介绍了J2EE的十三种技术之一——JDBC,主要用于提供了统一访问多种数据库的方式。这篇文章我们继续介绍J2EE的技术——JNDI。

JNDI:

     Java Naming and Directory Interface,Java命名和目录接口。作为技术规范之一,它提供了一种标准的Java命名系统接口。

J2EE的十三种技术——JNDI

    它为开发人员提供了查找和访问各种命名和目录服务通用、统一的接口,举个例子,比如我们翻书找一个知识点的时候,我们都会去看目录,通过目录的帮助,我们可以快速准确的找到所需要的东西。

    JNDI就类似于这个功能,如下图所示。


J2EE的十三种技术——JNDI


    JNDI是一种查找服务,可以用它来查找Web应用环境变量、EJBs、数据库连接池、JMS目标和连接工厂等。但不要将JNDI当作数据库使用,JNDI对象储存在内存中。

使用:

第一步:配置数据源


    第二步:在程序中引用

Connection conn=null;
try {
  Context ctx=new InitialContext();
  Object datasourceRef=ctx.lookup("java:MySqlDS"); //引用数据源
  DataSource ds=(Datasource)datasourceRef;
  conn=ds.getConnection();
  /* 使用conn进行数据库SQL操作 */
  ......
  c.close();
} 
catch(Exception e) {
  e.printStackTrace();
} 
finally {
  if(conn!=null) {
    try {
      conn.close();
    } catch(SQLException e) { }
  }
}

总结:

 JNDI 在 J2EE 中的角色就是“交换机”、“粘合剂”。J2EE 组件在运行时间接地查找其他组件、资源或服务的通用机制。J2EE 规范要求所有 J2EE 容器都要提供 JNDI 规范的实现。JNDI避免了程序与数据库之间的紧耦合,使应用更加易于配置、易于部署。

相关文章:

  • 2021-11-05
  • 2021-11-06
  • 2022-01-11
  • 2021-09-01
  • 2022-12-23
  • 2021-11-09
猜你喜欢
  • 2021-11-19
  • 2021-07-15
  • 2021-10-02
  • 2021-11-09
  • 2022-03-08
  • 2021-12-17
  • 2021-08-30
相关资源
相似解决方案