用JAVA代码获取Weblogic配置的JNDI 数据源连接

时间:2023-12-23 13:20:02

第一步:生成与JDK版本对应的weblogicjar,利用cmd 进入到weblogic_home 路径下进入到server/lib目录,然后运行  JDK  1.6 命令 "java -jar wljarbuilder.jar" ,会生成wlfullclient.jar :

用JAVA代码获取Weblogic配置的JNDI 数据源连接

第二步:建立一个JAVA工程,然后将上面生成的jar拷贝到你建立工程的classpath 下:

用JAVA代码获取Weblogic配置的JNDI 数据源连接

第三步:新建一个java类,命名为JndiTest,代码如下:

package jdbc;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Hashtable; import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource; public class JndiTest { public static void main(String[] args) throws Exception {
Hashtable ht = new Hashtable();
ht.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
ht.put(Context.PROVIDER_URL, "t3://127.0.0.1:7001"); Context context=new InitialContext(ht); //注意:lookup 中的参数 是你在weblogic中配置的JNDI名称 DataSource ds = (DataSource) context.lookup("jdbc-oracle"); //配置的JNID名
Connection conn = ds.getConnection("weblogic", "weblogic"); //登陆weblogic的用户名、密码
Statement stmt=conn.createStatement();
String sql="select e.* from emp e";
ResultSet rs=stmt.executeQuery(sql);
while (rs.next()){
System.out.println(rs.getInt(1));
}
} }

运行之后输出如下:

7369
7499
7521
7566
7654
7698
7782
7788
7839
7844
7876
7900
7902
7934

忘记了说明,我配的数据源是连接本地的scott用户。

用JAVA代码获取Weblogic配置的JNDI 数据源连接

用JAVA代码获取Weblogic配置的JNDI 数据源连接

以上是我配的JDNI基本数据了.

注意:配置连接本地的JDNI,也许不用在配置TNS了,因为你安装oracle的时候,默认已经配置了 !在项目开发的过程中,我们连接的通常是远程的IP地址,所以配置数据源的时候,不要忘记配置TNS,否则是无法建立连接的。当然,你要获取weblogic 配置的JNDI,运行JAVA代码的时候,必须先启动Weblogic服务!

至此,简单的使用JAVA代码获取weblogic配置的JNDI连接到此结束了!

Web应用获取weblogic配置的数据源

若是在Web应用中,直接用如下三行代码即可获取配置的JNDI数据源。

      Context ctx=new InitialContext();
DataSource ds=(DataSource)ctx.lookup("jdbc-oracle");
Connection conn=ds.getConnection();