Java JDBC和JNDI代码解释javeee
我是JavaEE世界的新手,在我的应用程序中,我想连接到数据库。我能够用下面的代码完成这项任务,但是有人能给我解释一下吗?每条线都做什么 代码:Java JDBC和JNDI代码解释javeee,java,jdbc,jndi,Java,Jdbc,Jndi,我是JavaEE世界的新手,在我的应用程序中,我想连接到数据库。我能够用下面的代码完成这项任务,但是有人能给我解释一下吗?每条线都做什么 代码: try { InitialContext initContext = new InitialContext(); Context env = (Context) initContext.lookup("java:comp/env"); ds = (DataSource) env.lookup("jdbc/test2"); } c
try {
InitialContext initContext = new InitialContext();
Context env = (Context) initContext.lookup("java:comp/env");
ds = (DataSource) env.lookup("jdbc/test2");
} catch (NamingException e) {
throw new ServletException();
}
我还发现,我可以使用tomcat在我的JSP中使用下面的注释,从而实现与上面相同的结果。我可以在任何web服务器(例如GlassFish或Jboos)上使用此注释吗
加油站代码:
@Resource(name = "jdbc/test2")
private DataSource ds;
Java命名和目录接口™ (JNDI)是一个应用程序
提供命名和目录的编程接口(API)
使用Java编写的应用程序的功能™ 程序设计
语言
上下文
对象提供了将名称绑定到对象、从对象解除名称绑定、重命名对象和列出绑定的方法
JDNI执行与上下文相关的所有命名操作。因此,JDNI定义了一个InitialContext
,它为命名和目录操作提供了起点。一旦有了初始上下文,就可以使用它查找其他上下文和对象
JDNI包中的许多方法在需要指示无法执行请求的操作时抛出NamingException
。JDNI有一个丰富的异常层次结构,源于NamingException
类。异常的类名是不言自明的,并已列出
您可以使用@Resource
注释来注入资源。您可以找到有关正确使用的更多信息
资料来源: