wildfly ejb开发环境搭建(二):项目配置及开发

在上一篇文章中,已经说了怎么配置wildfly数据源,接下来开始搭建基于idea+maven的ejb开发环境,并且实现代码的maven的wildfly插件自动部署

一、准备工作

安装jdk,idea,这些基础的,在此就不具体讲解了,不清楚请自行百度

笔者开发环境:idea2019.1+jdk1.8+maven3

代码例子 https://gitee.com/liuyouzhang/wildfly11_ejb_demo

二、代码模块说明

ejbcommon模块,为基础模块,因为ejbserver模块直接需要使用此模块的类,所以ejbserver项目中,使用maven-shade-plugin插件,将ejbcommon模块的类打包时,打包到一起。

ejbserver模块,为ejb的server模块,运行在wildfly容器中,提供ejb的bean服务,这里使用的是staless session bean(无状态的会话bean)。

       ejb的此概念,不清楚可以百度自行了解。

       这里可以参考 Spring的有状态bean 无状态bean来理解,有状态会话bean意味着需要与调用者一一绑定,是有上下文状态的,一个调用者session,就会产生一个服务端的bean,可想而知资源消耗很大,服务端要为每个会话的每个调用,都维护一个专属的bean为之服务。假如有1000个调用,则就有1000个bean。

       无状态的会话bean,就是这个服务端的bean,是不保存相关调用者的上下文数据的,所以可以做池化处理,针对所有的调用请求,所有的bean都可以拿来使用。假如有1000个调用,则可能只有20个bean,作为一个bean池,拿来直接重复使用(bean 的内部数据会覆盖,栈数据会不同,这里的重复使用主要是指bean容器管理的bean的实例会被重复使用,所以bean 的全局字段不要存在共享数据)。

      由于服务端编程的特点,是要从高可用高并发的角度去设计的,所以服务肯定是会设计为无状态的,基本上有状态的会话bean使用场景很少,可能一些跟前端的会话紧密交互的、处理C/S架构的前端交互数据的,这里要使用有状态的会话bean。比如一些采用C/S架构的erp系统,直接处理用户client的数据的服务端bean。

ejbclinet模块,为ejb的client,可以在任意的java环境中调用(不一定需要运行在jboss容器中),也可以在spring应用中调用,或者像示例代码中的,直接在普通java类的main方法中调用。

三、运行例子

代码导入之后,配置ejbserver模块中,wildfly服务器的配置信息,这里使用的是本地安装的wildfly服务器。也可以使用临时的由maven插件下载的wildfly服务器。

使用maven名称 mvn wildfly:deploy,将ejbserver模块部署到wildfly服务器中,idea右键运行ejbclient中的main方法,即可看到输出结果。

四、注意事项

可能有几个jar包,maven引用时,是不在中央仓库的,因此需要自己到网上找并下载下来,自行导入到本机的本地仓库中。

安装命令:

   mvn install:install-file -DgroupId=imsdriver(jar包的groupId) -DartifactId=imsdriver(jar包的artifactId) -Dversion=1.0(jar的版本号) -Dpackaging=jar -Dfile=D:\jar\imsdriver.jar(jar包的具体路径)

 

参考文章:

https://blog.csdn.net/qq_17058993/article/details/83027234

https://blog.csdn.net/weixin_39590977/article/details/86102758

https://blog.csdn.net/cyan20115/article/details/106549064

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值