在demo1中我们简单实现了一个通过JNDI来获得person这个对象,但是因为运行在同一个项目中,表现的形式不是那么强烈。
下面我们使用远程的web服务器上的数据源来测试一下。远程weblogic服务器上定义一个数据源。在本地通过JNDI获得这个数据源,并且查询远程数据源中的数据。
在操作之前先来创建先决条件:
1.查看本地IP,确保weblogic服务器和本地不在一起
2.登陆weblogic,定义数据源(具体定义步骤在此就不细讲,不会的可以在网上查一下)
以上是JNDI服务器的设置,简单说就是在weblogic上面创建数据源。
下面使用JNDI获得这个数据源。
6.在第一节JNDI概念中说过,Java只提供了JNDI的接口,具体的实现都是不同厂商提供。所以我们势必要导入weblogic的JNDI的实现。
如何生成weblogic JNDI的实现?
生成与JDK版本对应的weblogicjar,利用cmd 进入到weblogic_home 路径下进入到server/lib目录,然后运行 JDK 1.6 命令 " java -jar wljarbuilder.jar" , 会生成wlfullclient.jar :
我们还有操作数据,所以也要使用JDBC的实现,后台的数据库使用的是Oracle,所以在项目中还要导入数据库的驱动。
7.我们还是建立普通的Java项目,导入上面创建好的weblogic的jar包和数据库操作的jar包。
8.开发代码:
import java.rmi.registry.LocateRegistry; import java.sql.Connection; import java.sql.ResultSet; import java.sql.Statement; import javax.naming.Context; import javax.naming.InitialContext; import javax.sql.DataSource; public class Test { public static void findPerson() throws Exception{ //配置JNDI工厂和JNDI的url System.setProperty(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory"); System.setProperty(Context.PROVIDER_URL, "t3://10.1.71.**:7001"); //初始化 InitialContext ctx = new InitialContext(); //获取datasoures DataSource ds = (DataSource) ctx.lookup("dataSourceDBaihis"); //授权 Connection conn = ds.getConnection("weblogic", "*****"); //登陆weblogic的用户名、密码 //正常操作数据 Statement stmt=conn.createStatement(); String sql="select riskcode,riskname from pd_lmrisk"; ResultSet rs=stmt.executeQuery(sql); while (rs.next()){ System.out.println("险种编码:"+rs.getString(1)+" 险种名称:"+rs.getString(2)); } } public static void main(String[] args) throws Exception { findPerson(); } }
PS:url和weblogic的用户名和密码请自行填写
9.运行结果:
10.请求示意图:
相关推荐
在Spring框架中,通过JNDI(Java Naming and Directory Interface)可以方便地访问WebLogic服务器中的数据源。这为应用程序提供了高度解耦的数据访问机制,使得应用程序能够更加灵活地管理与数据库的连接。本文将...
WebLogic数据源调用是Java应用在WebLogic服务器上与Oracle数据库交互的关键步骤。WebLogic Server作为一款流行的Java EE应用服务器,提供了强大的数据源管理功能,使得应用程序能够以透明、高效且可管理的方式连接到...
Java远程调用(Remote Method Invocation,RMI)是Java平台中一种重要的分布式计算技术,它允许在不同网络环境中的Java对象之间进行透明的交互。在本文中,我们将深入探讨三种不同的RMI实现方法:原始方式、Spring...
总结来说,JNDI和LDAP的结合使得Java开发者能轻松地管理和操作分布式目录服务,为企业的身份验证、授权和数据管理提供了强大支持。学习并熟练掌握这两者之间的交互对于提升Java应用的复杂性和可扩展性至关重要。通过...
WebLogic 下配置 JNDI 数据源 WebLogic 是一款功能强大的 Java 应用服务器,提供了强大的集成和管理功能,而 JNDI(Java Naming and Directory Interface)是 Java 中的一种命名和目录接口,用于在 Java 应用程序中...
标题中的"jndi-1_2_1.zip_jndi_jndi-1.2.1.jar"表明这是一个关于JNDI的版本1.2.1的开源软件包,其中包含了一个名为"jndi-1.2.1.jar"的JAR文件。这个JAR文件包含了JNDI库的所有实现,使得开发者可以在他们的Java项目...
### 在WebLogic 9.1下配置JNDI数据源详解 #### 一、引言 JNDI(Java Naming and Directory Interface)是Java平台的一个API,它允许Java应用程序查找和定位远程对象和服务。在企业级Java应用开发中,通过JNDI可以...
Java数据源配置包JNDI,是Java应用程序与数据库交互的一种常见方式,特别是在服务器环境中,如Tomcat。JNDI(Java Naming and Directory Interface)是一个Java API,它允许应用程序查找和管理分布式环境中的资源,...
### Tomcat调用WebLogic EJB的实现方法与步骤 #### 概述 在实际的开发环境中,有时候需要实现不同应用服务器之间的交互。比如,在Tomcat应用服务器中调用部署在WebLogic服务器上的EJB(Enterprise JavaBeans)组件...
在Java EE环境中,数据源通常由应用服务器提供,如Tomcat、WebLogic、JBOSS等,它们预先配置好并注册到JNDI上下文中,供应用通过JNDI查找使用。 3. **配置数据源** 在不同的应用服务器中,配置数据源的方法略有...
WebLogic v9.2 EJB和JNDI Demo
RMI允许Java对象在不同的Java虚拟机之间进行远程调用,而LDAP则是一种用于存储和检索结构化信息的目录服务协议。 JNDI注入攻击通常发生在应用程序不当处理JNDI查找时,攻击者可以通过构造恶意的JNDI引用来执行任意...
### WebLogic 10.3.6 + DB2 数据源配置详解 #### 一、准备工作:复制DB2的JDBC驱动包至WebLogic域的lib目录 在进行数据源配置前,首先需要确保DB2的JDBC驱动已正确安装,并且能够被WebLogic服务器识别。为此,需要...
### WebLogic 数据源配置详解 #### 一、新建数据源 **步骤1:登录WebLogic控制台** 在开始配置之前,首先需要登录到WebLogic Server的管理控制台。...通过遵循上述步骤,你可以顺利地完成WebLogic数据源的配置任务。
Weblogic JDBC 数据源配置和详细参数说明 一、JDBC 概述 JDBC(Java Database Connectivity)是 Java 语言中的一种标准数据库连接技术,几乎所有需要访问数据库的 J2EE 应用程序都直接或间接地使用了它。JDBC 提供...
JNDI(Java Naming and Directory Interface)是一种Java API,它允许应用程序查找和使用资源,如数据源、邮件服务器等。在Java Web应用中,通过JNDI查找数据源可以实现数据库连接的管理和复用,提高应用的可移植性...
配置WebLogic数据源对于开发和部署基于WebLogic的应用程序至关重要,因为它确保了应用程序能够正确地与数据库进行通信。正确配置数据源不仅可以提高应用程序的性能,还能确保数据的安全性和可靠性。同时,良好的数据...
2. **创建数据源**:在WebLogic管理控制台中,选择“配置”->“数据源”,然后创建一个新的数据源。选择JDBC驱动类型,如"Oracle Thin",并填写相应的JNDI名称、URL、用户名和密码。 - URL格式通常是:`jdbc:...
JNDI允许Java应用程序查找和操作各种类型的资源,如数据源、对象服务、邮件服务器等,而无需知道这些资源的具体实现细节。JNDI在分布式环境中特别有用,因为它提供了一种统一的方式来定位和管理网络资源。 JNDI的...