热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

SpringBoot获取WAS配置的JNDI数据库连接

在使用WAS(WebsphereApplicationServer)部署应用时,如果想获取WAS中配置的数据源,通过JNDI来获取数据库连接,需要在部署应用的目录(应用安装目录e

在使用 WAS(Websphere Application Server)部署应用时,如果想获取 WAS 中配置的数据源,通过 JNDI 来获取数据库连接,需要在部署应用的目录(应用安装目录 => ear 包 => war 包 => WEB-INF 目录)下的 ibm-web-bnd.xml 和 web.xml 文件中配置如下内容:



  • 在 web.xml 中配置资源引用



    jndiRefName
    javax.sql.Datasource
    Container
    Shareable

    jndiRefName 是自定义的资源引用名称,在代码中使用的就是该名称



  • 在 ibm-web-bnd.xml 中绑定真正的连接池资源


    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee
    http://websphere.ibm.com/xml/ns/javaee/ibm-web-bnd_1_0.xsd" version="1.0">

    这里的 jndiRefName 需要和 web.xml 的索引名称一致,而 JNDIResourceName 则需要和 WAS 中配置的 JDBC 资源中的 JDNI 名称保持一致。



如此,只要在配置文件中配置 spring.datasource.jndi-name 的值为 jndiRefName 即可,此时,spring boot 中的 JndiDataSourceAutoConfiguration 类便会自动加载,通过 JndiDataSourceLookup 类去获取一个数据源。


WAS 中配置的数据源类型是 com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource,其是 com.ibm.ws.runtime.jar 包中的类,该 jar 包 通常在 WAS 服务器中的 /washome/IBM/WebSphere/AppServer/plugins/ 目录下。



推荐阅读
author-avatar
爱着你心却痛_534
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有