您的位置:首页 > 其它

我的EJB学习历程(一)

2004-06-28 17:04 190 查看
为了力求新的进步,我觉得从今天起开始学习EJB编程。 希望各位志同道合的朋友能一起参加进来。 我选用的参考书是wrox的EJB编程指南。这个书有1000多页,争取能全部完成他吧! 好了,不多说没用的了。现在开始进入第一章的学习。 第一章 Enterprise Javabeans 体系机构。 开始将讲了一大堆废话,从单层体系结构讲到了多层体系结构,又讲到了N层体系结构。这样引出了主题(J2EE)。不过这句话翻译的不错:其他需要特别注意的(是)服务器方资源包括线程,数据库连接,安全、事务等等。定制处理这些资源的基础结构是相当费劲的。这种工作在INTERNET环境中是不可能的。如果你的开发周期只有三个月,能够对数据库访问建立连接池、对象缓冲区或“精彩的”对象层吗? 晕!说了一大堆话终于引出了伟大的J2EE。不过要是不知道N层结构的真应该看看! 容器:说白了容器就是JAVA程序的运行环境。不知道我的理解是否正确。现在的程度就只能理解到这了。 书上说J2EE规范定义了四种容器类型: 1. 小应用程序(APPLET)。 2. 应用程序客户容器。(自己以为就是SWING) 3. WEB容器(SERVLET 和 JSP) 4. EJB容器。 看来123都已经掌握了,现在就差4了,所以EJB容器还是要学习的哦!~ 书上对EJB写了个更加深入的解释:EJB是个分布式组件模型,可以开发安全的、可伸缩的、事务性的多用户组件。简单的说,EJB是包含业务逻辑的可复用软件单元。就象JSP可以将应用程序与业务逻辑分开一样,EJB可以将应用程序逻辑和系统层服务分开,使开发人员集中考虑业务问题,而不必考虑系统编程。 J2EE API: RMI/IIOP:Remote Method Invocation类似网络连接使用的一些东西。 JNDI:Java Naming and Directory Interface。 JDBC:这个不用说了吧? JAVAMAIL/JAF:JAVA的MAIL服务,JAF是邮件的附件。 JMS:JAVA MESSAGE SERVER。JAVA消息服务。 设计中为何使用EJB:说了一大堆,我还是不确定是为什么。再接着看吧! 不过这次我更加的确定了,原来EJB容器就相当于一个“功能“服务器,可以把一些业务功能写在这个里边。然后用123来调用咯!(不知道这么说是不是有点搞笑)。 哈哈,我的理解正确了,果然书的第8页就说了,容器可以看成是执行环境! EJB的容器服务:(这里的容器服务都是不用编码,而是容器管理自己实现的啊。不错) 组件池和寿命周期管理:[/b] 哈哈,来点白话的,这是我个人理解的,组件池在容器启动的时候就自己生成了好多的BEAN的实例,假如说是10个吧,这个时候客户1来了,他就拿了BEAN1,这个时候别人是不能使用BEAN1的,再来了第2个客户,他不能拿BEAN1了,就只能拿BEAN2了。。。。。。。这个时候客户11来了,容器发现已经没有BEAN给他用了,于是就找个现在没人用的BEAN给他用,可是发现全都在被占用,没办法了,就只好再生成一个给他用了。哈哈,就是这么简单,可是有人会问了,这不是越生成越多吗?没关系,容器发现生成的BEAN没人用了,就会自动的给删掉,释放空间,释放系统资源嘛! 客户会话管理:[/b] 理解钝化和激活就行了。 钝化就是把客户的BEAN状态保存在池中。 激活就是把客户的这个BEAN状态再还给客户。 数据库连接池:[/b] 这个好象不用讲了吧!数据资源共享!这个名起的COOL B了。 事务管理:[/b] 事务很是昂贵啊! 验证和访问控制:[/b] 这个很简单! 容器如何提供服务:这一部分先不写,以后再写,因为我也不怎么理解。哈哈 EJB类型:*****这可是关键的地方。***** 分为3种类型: 会话BEAN[/b]:(寿命和所在客户的会话一样长啊) 1. 无状态会话BEAN。 2. 状态会话BEAN。 这两个BEAN非常的重要,但是在第3章才有讲。哈哈,先搁这! 实体BEAN[/b]: 自己理解就好象是数据库BEAN,就是把数据库的内容都读出来放在BEAN里,也不知道它具体是怎么读的,这样做会不会很浪费系统资源!??? 实体BEAN根据同步的不一样又可以分为: CMP(容器管理的持久性):容器负责BEAN与基础的数据库同步。 BMP(BEAN管理的持久性):这里要编程人员负责和基础数据库同步!容器在适当的时候调用编程人员写好的SQL语句! 真不明白,为什么已经有CMP了还要出了个BMP,书上是这么解释的: 有时需要增加设计的灵活性或在非关系型存储中支持持久性??这是人话吗? 还有个比方:EJB规范V1.1只允许实例变量和表格列之间的一对一映射。这样,使用这个版本时,如果要在实体BEAN中表示在多个表格中存储状态的累计对象,则无法使用CMP,而要使用BMP。EJB2.0规范定影了复杂的查询语言!还是很费解!~~~~不过应该是有用吧!!以后估计就能搞明白!呵呵!~~ 消息驱动BEAN。第6章讲!等着吧!兄弟们~~~~ 哈哈!看完第一章了。明天再看第2章!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: