JAVA 链接WAS的JDBC数据源

刚刚接触WAS,配置数据源时参考了很多资料,最终配置成功,记录一下以便以后参考。

private static String userID = "userId";
private static String pwd = "123";
private static String jndiName = "JNDI/TEST";
private static String providerUrl = "iiop://localhost:2809";

static{
       try{
			Hashtable<String,String> hashTable = new  Hashtable<String,String>();
			hashTable.put("java.naming.factory.initial", "com.ibm.websphere.naming.WsnInitialContextFactory");
			hashTable.put("java.naming.provider.url", providerUrl);
			context =  new InitialContext(hashTable);
			dataSource = (DataSource)context.lookup(jndiName);
		}catch(Exception e){
			e.printStackTrace();
		}
	}

 拿到DateSource后就可以拿到Connection了:

conn = dataSource.getConnection(userID,pwd);

 拿到了Connection 后,就是java连接数据源的jdbc操作了

 

注:因为InitialContext 只支持Hashtable ,所以创建的参数使用Hashtable

### 如何配置Oracle数据源 #### Spring Boot 中配置 Oracle 数据源 在Spring Boot应用程序中,可以通过`application.properties`或`application.yml`文件来配置Oracle数据源。对于基本的数据源配置,可以指定JDBC URL、用户名和密码以及驱动程序名称。 ```properties spring.datasource.url=jdbc:oracle:thin:test/test@127.0.0.1:1521/oracle spring.datasource.username=test spring.datasource.password=test spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver ``` 当存在多个数据源时,在主要使用的数据源上标注`@Primary`注解有助于区分默认数据源[^1]。 #### 使用 Nacos 配置中心管理 Oracle 数据源 Nacos作为一个动态服务发现与配置管理平台,同样支持对Oracle数据源的配置。通过设置特定属性如`nacos.datasource.type`为`ORACLE`并提供相应的连接字符串和其他必要参数完成配置工作。 ```yaml spring: jpa: hibernate: naming: physical-strategy: com.alibaba.nacos.config.server.configuration.NacosPhysicalNamingStrategy nacos: datasource: type: ORACLE relational: dsList: - url: jdbc:oracle:thin:@192.168.0.12:1521:XE username: oracle password: oracle driver-class-name: oracle.jdbc.driver.OracleDriver ``` 此方式允许更灵活地管理和分发应用环境下的数据库访问信息[^2]。 #### WebSphere 应用服务器中的 Oracle 数据源配置 针对WebSphere这样的企业级Java EE容器而言,其提供了图形界面用于简化创建和维护外部资源的过程。具体到调整Oracle数据源的最大活动连接数量为例,则可通过修改数据库实例的相关初始化参数实现优化目的;例如增大`processes`参数值至适当水平以适应更高的并发请求量[^3]。 #### 实现多数据源之间的平滑切换 为了满足某些场景下跨不同数据库执行查询的需求,可以在项目里引入额外依赖库,并利用自定义注解机制达到无缝转换的效果。只需简单地标记目标组件即可指示框架选用哪一个具体的持久层对象参与操作流程之中。 ```java // 定义一个名为 "slave" 的数据源 @Bean(name = "slaveDataSource") @ConfigurationProperties(prefix = "spring.slave.datasource") public DataSource secondaryDataSource() { return DataSourceBuilder.create().build(); } // 切换到 slave 数据源的方法示例 @DS("slave") public void someMethodUsingSlaveDB(){ // 方法体... } ``` 上述代码片段展示了如何声明一个新的数据源bean并通过编程手段控制事务边界内的SQL语句所指向的实际物理存储位置[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值