接触 J2EE 也有些时间了。最近打算自己写一个 EJB 容器,琢磨了一下,打算就着技术书籍和 Apusic 的源码来搞个小研究。

先在这开个坑,毕竟每天在家,除了上班准点报道,下班又准点报道,周末连坐下来想事情的时间也被各种扯淡事情打断,也是很烦的。:)

1月24日:

先把几个重要概念梳理一下。平常我们用 javax.ejb.* 的 API 时,很少需要考虑别的东西。这里面就有中间件(容器)的功劳。举例来说,我们的客户端调用一个包含业务方法的 bean(这个 bean 可以实现 javax.ejb.SessionBean 接口),而这个 bean 是由一个 EJBHome 对象创建的。出于简化 web 开发者工作的目的,EJBHome 对象应该在 web 应用中以调用 javax.ejb.* 中接口的形式来获得。所以,EJBHome 对象的默认实现就交给中间件来做。EJBHome 对象应该负责查找和缓存 bean 实例,以及删掉调用得最少的 bean 实例的缓存。

然后我们看看 Apusic 是怎么处理各种 bean 的。在源码的 com.apusic.ejb.container.EJBManager 类中,不同类型的 bean 会触发产生不同类型的容器。处理的 bean 类型是标准的 SessionBean(包含 Stateful 和 Stateless 以及 Singleton)、EntityBean、MessageDrivenBean 。而具体生成的步骤,则在源码的 com.apusic.ejb.generator.ClientDrivenGenerator 的 generate(int) 方法中。

2月20日:

怎么把各种 EJB 接口调用的方法最终转为使用其实现类,目前观察是依靠自带的 org.objectweb 包对编译后的机器码进行替换。后面继续写写这部分的内容。

解构金蝶 Apusic 中间件相关推荐

  1. 离线安装金蝶Apusic中间件

    汇总有帮助的链接,供参考: 国产化--离线安装金蝶中间件--部署应用注意事项 金蝶容器Apusic中重新部署war包 SpringBoot打war包,使用tomcat或金蝶中间件启动 我一直没有找到A ...

  2. 解构金蝶EAS 开发工具

      最近上手了金蝶 EAS 的二次开发,工作之余也顺带研究了一下结构,便于日后排查,这个研究仅针对 EAS 7.5 , 即 BIM 6.1.0 .我们重点关注BOS Modular 的基本结构.整个 ...

  3. rocketmq docker集群_【解构云原生】RocketMQ高可用方案调研及On K8S设计展望(下)...

    本文由作者授权网易云发布,未经许可,请勿转载. 作者:李海燕,网易杭州研究院云计算技术部工程师 上文链接:[解构云原生]RocketMQ高可用方案调研及On K8S设计展望(上) 四.RocketMQ ...

  4. react项目中的参数解构_一天入门React学习心得

    一天入门React学习心得 阅读前必读 本文写的仓促,算是一个学习笔记吧,算是一个入门级的学习文章.如果你刚刚入门,那么可能一些入门的视频可能更加适合你.但如果具备一些知识,比如Vue,那么视频就不适 ...

  5. 转文:华为鸿蒙操作系统全景解构

    转自:智能计算芯世界 原文:https://mp.weixin.qq.com/s/NtMHKKL_ShAeoRbrC_De5w 从技术.生态两角度看,操作系统对于 ICT 厂商而言具有重要意义,鸿蒙操 ...

  6. 华为鸿蒙操作系统全景解构

    从技术.生态两角度看,操作系统对于 ICT 厂商而言具有重要意义,鸿蒙操作系统的推出,对华为.对我国自主可控进程的意义不言而喻. 微内核.方舟编译器是鸿蒙生态的两大核心要素.微内核更适应复杂的程序功能 ...

  7. 【转】技术人如何加速成长?提升你的思维和学习方式【思想上勤奋、借事修人、第一性原理、结构化思维/金字塔原理、复盘、解构和重组】

    原创 涵爸 阿里技术 收录于话题  #技术人成长之路 阿里妹导读:每个人都会经历一个新人的阶段,不管是初入职场,还是到一个新的工作环境.作为技术新人,我们常常会面临哪些困惑?普通人和非凡人的差异在哪里 ...

  8. 在麒麟V10服务器上安装与运行金蝶AAS中间件

    1 简介 金蝶 Apusic 应用服务器(AAS)是由金蝶天燕开发的应用系统运行平台,为应用系统提供便捷开发.灵活部署.可靠运行.高效管理及快速集成等关键支撑.支持 Java 企业级规范和主流应用框架 ...

  9. 计算机系统软件最核心软件是,华为鸿蒙操作系统HarmonyOS全景研究与解构

    从技术.生态两角度看,操作系统对于 ICT 厂商而言具有重要意义,鸿蒙操作系统的推出,对华为.对我国自主可控进程的意义不言而喻. 微内核.方舟编译器是鸿蒙生态的两大核心要素.微内核更适应复杂的程序功能 ...

最新文章

  1. Spring Boot 2.X 对 web 的开发支持(二)
  2. zabbix.php访问不了_zabbix_配置Nginx连接php
  3. 如何建立程序代码包的联接?
  4. python设置word背景色_Python数据可视化:WordCloud入门
  5. ElasticSearch概述及安装
  6. 二叉树的中序遍历_94. 二叉树的中序遍历 - 中等
  7. win7的一些小知识
  8. caffe利用shell创建train.txt和val.txt做数据输入
  9. c语言开发调试环境搭建_Linux搭建C++开发调试环境
  10. 从游击队到正规军(三):基于Go的马蜂窝旅游网分布式IM系统技术实践
  11. 在ubuntu20.04上安装最新版的qq
  12. 疯狂java 怎么样_《疯狂Java讲义》(一) ---- 关于学习Java的反思
  13. html a4纸张大小像素,CSS设置A4纸张大小
  14. Python+旧衣物捐赠系统 毕业设计-附源码290942
  15. 字符串连接-Guava-Joiner
  16. 使用pyenv和virtualenv搭建python虚拟环境实践总结
  17. java飞翔的小鸟游戏实验报告,BirdGame 飞翔的小鸟游戏源码,仿照 编写的java版本 ,所有的 功能完整。 s 249万源代码下载- www.pudn.com...
  18. latex大括号 多行公式_怎样在word中快速输入复杂的公式(在线识别数学、物理或化学公式)?...
  19. 8月22-23日 【广州】《社区商业项目开发定位、规划、招商、运营与模式创新》
  20. Peppa's menu

热门文章

  1. python word2vector训练wiki中文文本语料
  2. web响应式布局与BootStrap框架
  3. 拼团小程序源码_百人拼团小程序系统
  4. 2022-01-24-安全网关配置方式(腾讯云ipaas)
  5. 王通:当下的SEO从业者该如何升级
  6. 粒子背景php,Particles.js实现粒子动态背景动画
  7. 预付费平台关于电改政策的设计与应用
  8. Mybatis 字段加解密
  9. 11.03 P73 模拟+堆+贪心
  10. 计算机图文混合排版教学设计,《我为古诗来配画——图文混合排版》教学设计.doc...