Spring访问WebLogic JNDI数据源的两种配置方法
4星 · 超过85%的资源 需积分: 50 46 浏览量
更新于2024-09-13
2
收藏 995B TXT 举报
本文将介绍如何在Spring框架中配置并获取WebLogic服务器的JNDI数据源,分别针对本地WebLogic服务器和远程WebLogic服务器的两种情况。
在Spring框架中,我们经常需要从应用服务器(如WebLogic)中获取数据源以进行数据库操作。WebLogic服务器提供了JNDI(Java Naming and Directory Interface)服务,允许应用程序查找和绑定命名对象,如数据源。下面我们将详细讨论两种方式来实现这一目标。
第一种方式:本地WebLogic Server获取
对于本地WebLogic服务器,获取数据源的过程相对简单,因为不需要提供额外的连接信息。Spring配置文件中的`<bean>`标签可以这样设置:
```xml
<bean id="sysDB" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>hzsh_ds</value>
</property>
</bean>
```
这里,`sysDB`是bean的ID,`org.springframework.jndi.JndiObjectFactoryBean`是类名,它会查找名为`hzsh_ds`的JNDI数据源。由于是本地WebLogic服务器,所以不需要指定用户名、密码、IP地址或端口号。
第二种方式:从其他WebLogic Server获取
当需要从远程WebLogic服务器获取数据源时,我们需要提供更多的连接信息。配置如下所示:
```xml
<bean id="sysDB" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="sbrj_ds"/>
<property name="resourceRef" value="false"/>
<property name="jndiEnvironment">
<props>
<prop key="java.naming.provider.url">t3://150.18.31.23:7902</prop>
<prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory</prop>
<prop key="java.naming.security.principal">weblogic</prop>
<prop key="java.naming.security.credentials">weblogic11g</prop>
</props>
</property>
</bean>
```
在这个配置中,除了`jndiName`指定了数据源名称`sbrj_ds`外,还添加了`resourceRef`属性以明确这不是一个本地引用。更重要的是,通过`jndiEnvironment`属性设置了远程服务器的连接信息:
- `java.naming.provider.url`:指定WebLogic服务器的T3协议URL,包括IP地址`150.18.31.23`和端口`7902`。
- `java.naming.factory.initial`:设置JNDI初始上下文工厂类,这里是`weblogic.jndi.WLInitialContextFactory`,特定于WebLogic服务器。
- `java.naming.security.principal`:定义连接的用户名,这里是`weblogic`。
- `java.naming.security.credentials`:与用户名对应的密码,这里是`weblogic11g`。
这两种方法都允许Spring应用在WebLogic环境中透明地访问数据源,从而简化数据库操作。通过JNDI,应用可以在不直接硬编码连接参数的情况下,灵活地管理数据源,这对于多环境部署和微服务架构尤为重要。
总结来说,Spring通过`JndiObjectFactoryBean`可以帮助我们轻松地从WebLogic服务器获取JNDI数据源,无论是本地还是远程。理解这两种配置方式有助于更好地管理和维护基于Spring的应用在WebLogic上的数据库连接。
2011-06-27 上传
2020-08-30 上传
2010-02-04 上传
2009-08-01 上传
2017-09-13 上传
2023-09-05 上传
2019-03-18 上传
hjj8gz
- 粉丝: 0
- 资源: 5
最新资源
- Angular实现MarcHayek简历展示应用教程
- Crossbow Spot最新更新 - 获取Chrome扩展新闻
- 量子管道网络优化与Python实现
- Debian系统中APT缓存维护工具的使用方法与实践
- Python模块AccessControl的Windows64位安装文件介绍
- 掌握最新*** Fisher资讯,使用Google Chrome扩展
- Ember应用程序开发流程与环境配置指南
- EZPCOpenSDK_v5.1.2_build***版本更新详情
- Postcode-Finder:利用JavaScript和Google Geocode API实现
- AWS商业交易监控器:航线行为分析与营销策略制定
- AccessControl-4.0b6压缩包详细使用教程
- Python编程实践与技巧汇总
- 使用Sikuli和Python打造颜色求解器项目
- .Net基础视频教程:掌握GDI绘图技术
- 深入理解数据结构与JavaScript实践项目
- 双子座在线裁判系统:提高编程竞赛效率