postgresql
Open Liberty是源自WebSphere Liberty的有趣的新型OSS Java EE应用服务器。 您可以将Open Liberty配置为使用PostgreSQL作为其默认数据源,如下所示:
将<datasource>
, <jdbcDriver>
和<library>
指令添加到server.xml
配置中:
<?xml version="1.0" encoding="UTF-8"?>
<server description="OpenLiberty Java EE 8 Server"><featureManager><feature>javaee-7.0</feature></featureManager><httpEndpoint id="defaultHttpEndpoint" host="*" httpPort="9080" httpsPort="9443"/><keyStore id="defaultKeyStore" password="Liberty"/><!-- Postgres coffee-shop-db definition --><dataSource id="DefaultDataSource"jndiName="jdbc/sample"jdbcDriverRef="postgresql-driver"type="javax.sql.ConnectionPoolDataSource"transactional="true"><properties serverName="coffee-shop-db"portNumber="5432"databaseName="postgres"user="postgres"password="postgres"/></dataSource><jdbcDriver id="postgresql-driver"javax.sql.XADataSource="org.postgresql.xa.PGXADataSource"javax.sql.ConnectionPoolDataSource="org.postgresql.ds.PGConnectionPoolDataSource"libraryRef="postgresql-library"/><library id="postgresql-library"><fileset id="PostgreSQLFileset" dir="/opt/ol/wlp/lib"includes="postgresql-9.4-1201.jar"/></library></server>
通过主机coffee-shop-db
可用coffee-shop-db
将通过默认的Postgres端口5432
使用postgres
作为数据库名称,用户名和密码)访问。
驱动程序库,这里是postgresql-9.4-1201.jar
,需要驻留在服务器安装的lib/
目录中。
可以从Java EE应用程序透明地使用默认数据源。 在persistence.xml
文件中只需指定一个持久性单元,类似于以下代码片段:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistencehttp://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"><persistence-unit name="prod" transaction-type="JTA"/></persistence>
如果应用程序包含多个数据库,则要求持久性单元指定其相应数据源的JNDI名称。
经过官方Docker镜像open-liberty:javaee7
。
翻译自: https://www.javacodegeeks.com/2018/01/postgresql-open-liberty.html
postgresql