跟我上“云”端(三)eclipselink+jboss实现多租户基本配置

本文主要介绍,如何在jboss EAP6.2中使用eclipselink

开发工具:jboss EAP6.2+maveneclipselink版本:2.6.0添加eclipselink的module使用预包装的集成库,下载地址:(eclipselink+jobss EAP6.2集成module)

下载完成以后解压,并使用maven编译,解压后的文件:

查看其中的pom.xml文件: 其中properties结点中加入自己想使用的eclipselink版本,并修改 eclipselink.version为自己定义的版本:

如原文件:

<properties><project><eclipselink>><eclipselink>><eclipselink>><eclipselink}</eclipselink.version><jboss-version></jboss-version><as7module.srcdir>${project.basedir}/src/main/as7module</as7module.srcdir><as7module.destdir>${project.build.directory}/as7module</as7module.destdir><ECLIPSELINK_JAR_NAME>eclipselink-${eclipselink.version}.jar</ECLIPSELINK_JAR_NAME><INTEGRATION_JAR_NAME>${project.artifactId}-${project.version}.${project.packaging}</INTEGRATION_JAR_NAME> </properties>

修改后:

<properties><project><eclipselink>><eclipselink>><eclipselink>><eclipselink>><eclipselink}</eclipselink.version><jboss-version></jboss-version><as7module.srcdir>${project.basedir}/src/main/as7module</as7module.srcdir><as7module.destdir>${project.build.directory}/as7module</as7module.destdir><ECLIPSELINK_JAR_NAME>eclipselink-${eclipselink.version}.jar</ECLIPSELINK_JAR_NAME><INTEGRATION_JAR_NAME>${project.artifactId}-${project.version}.${project.packaging}</INTEGRATION_JAR_NAME> </properties>使用命令窗口进入到此目录,执行命令:mvn -DskipTests clean install

运行完以后生成target目录如下:

拷贝target/as7module目录下id和org两个文件夹到$JBOSS_HOME/modules/system/layers/base目录下(如果已经存在org目录,就合并)

启动jboss,执行

$JBOSS_HOME/bin/jboss-cli.bat –connect执行如下命令:/system-property=eclipselink7.eclipselinkintegration.JBossArchiveFactoryImpl)执行完会发现在standalone.xml文件中多出如下配置: =>此时可以一起设置eclipselink.target-server执行: /system-property=eclipselink.target-server:add(value=JBoss)设置eclipselink.target-server在persistence.xml中删除原有hibernate的配置,添加下面的provider和property<provider>org</provider><property name=”eclipselink.target-server” value=”JBoss”/>设置实体自动扫描如果不进行任何配置默认情况下需要在persistence.xml中列出你系统中的所有的实体,如下:<class>mtsample.hotel.model.RentHistory</class><class>mtsample.hotel.model.HotelGuest</class><class>mtsample.hotel.model.Tenant</class><class>mtsample.hotel.model.Room</class><class>mtsample.hotel.model.Category</class><class>mtsample.hotel.model.HotelAdmin</class>……当进行第一步的设置以后实体就可以自动被扫描。设置静态织入(static weaving),使实体支持继承。什么时候需要实体继承,这其实是个很常用的功能,实体中会有一些通用的属性,比如id,或者时间戳,,但是使用eclipselink的实体继承时,由于某些原因会不能在运行时动态织入,需要配置在编译时静态织入。确切的说,如何设置静态织入取决于你使用的构件插件,如果你使用的是Ant,eclipselink提供了一个Ant的任务,org.eclipse.persistence.tools.weaving.jpa.StaticWeaveAntTask. 如果你使用的是maven,可以使用maven的静态织入插件,这个插件不属于eclipselink项目。>>1.0.3>>weave>>>>eclipselink>></build>你还需要在persistence.xml文件中添加如下属性:<property name=”eclipselink.weaving” value=”static”/>到此你就可以使用eclipselink开发你的企业级多租户项目了。本文翻译参考了:

https://developer.jboss.org/wiki/HowToUseEclipseLinkWithAS7?_sscc=t

人生不能缺乏的是雨夜--淅沥地,独自的雨夜。这样的雨夜里,

跟我上“云”端(三)eclipselink+jboss实现多租户基本配置

相关文章:

你感兴趣的文章:

标签云: