使用 weblogic 的 oracle 数据源

你。 提交于 2020-04-28 12:37:29

1. 生成数据源需要的wlfullclient.jar


wlfullclient.jar生成方式

进入weblogic的安装目录


例如 

E:\tools\weblogic\wls12213\wlserver\server\lib 

运行 

java -jar wljarbuilder.jar


就能生成wlfullclient.jar文件



2. weblogic 配置数据源


基本上一路下一步。填写数据库基本信息即可。




看到测试成功,即为配置正常。


3. 项目配置修改


此处只列出spring项目想改方式。

修改spring-context.xml,注释掉原有的dataSource的

添加以下注解

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean" >
<property name="jndiName">
<value>bgc-web-test</value>
</property>
<property name="resourceRef">
<value>true</value>
</property>
<property name="jndiEnvironment">
<props>
<prop key="java.naming.provider.url">t3://127.0.0.1:7001</prop>
<prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory</prop>
</props>
</property>
</bean>














4. 部署项目


操作步骤

部署 ==> 安装 ==> 选择war包 ==> 下一步 ==> ··· ==> 完成


5. 通过其他方式验证数据源是否正确


import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;

/**
* @author: pnunu
* @Date: 2020/4/27 16:03
* @description:
*/




public class DatabaseConnection {
public static void main(String[] args) throws Exception {
System.out.println(getConnection());
}
//初始化上下文需要用到的工厂类
private final static String INITIAL_CONTEXT_FACTORY = "weblogic.jndi.WLInitialContextFactory";
//WebLogic服务器的访问地址
private final static String PROVIDER_URL = "t3://127.0.0.1:7001";
//WebLogic服务器中的JNDI数据源名称
private final static String ORACLE_JNDI_NAME = "jdni-name";


//存储从JNDI容器中取出来的数据源
private static DataSource dsOracle = null;

static {
try {
//初始化WebLogic Server的JNDI上下文信息
Context context = getInitialContext();
//获取数据源对象
dsOracle = (DataSource) context.lookup(ORACLE_JNDI_NAME);
} catch (Exception e) {
e.printStackTrace();
}
}

/**
* MethodName: getInitialContext
* Description: 获得WebLogic ServerJNDI初始上下文信息
*
* @return
* @throws Exception
*/






private static Context getInitialContext() throws Exception {
Properties properties = new Properties();
//指定工厂类
properties.put(Context.INITIAL_CONTEXT_FACTORY, INITIAL_CONTEXT_FACTORY);
//指定服务器访问地址
properties.put(Context.PROVIDER_URL, PROVIDER_URL);
return new InitialContext(properties);
}

/**
* MethodName: getOracleConnection
* Description: 获取Oracle数据库连接
*
* @return
* @throws SQLException
*/






public static Connection getConnection() throws SQLException {
return dsOracle.getConnection();
}


/**
* MethodName: CloseConnection
* Description: 关闭数据库连接
*
* @return
* @throws SQLException
*/






public static void Close() throws SQLException {
if (dsOracle != null) {
dsOracle.getConnection().close();
}
}
}

























































易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!