当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:16:00  来源:本站整理

循速渐进学用Session Bean(四)[Java编程]

赞助商链接



  本文“循速渐进学用Session Bean(四)[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

Session Bean要求、限制和答应

在EJB标准中,对Session Bean有一些限制和要求.这些限制会指出哪些是bean必须做的,哪些是不能做的,以及bean必须实现的一些办法和接口.也有一些标准指出哪些处理是答应做的,这是为了避免你认为这些处理是被别的限制禁止的.

实现SessionBean接口

session bean必须实现javax.ejb.SessionBean接口

声明该类为Public,而不是Final大概Abstract

要记着EJB容器需求成立bean实例,因此该类必须是public,并且不是抽象的.

成立一个Pubic,无参数的构造器

一样,由于EJB容器必须成立bean的实例.假如构造器是protected大概private,容器就不能成立实例.

不要实现finalize办法

固然你很少需求定义一个finalize办法,不过EJB标准中还是明文禁止在session和entity bean中定义finalize办法.假如你的bean需求做任何排除的操作,它们应当在ejbRemove大概ejbPassivate办法中举行.

实现create办法和全部的remote办法

一个session bean必须实现Home接口中指定的全部create办法,以及Remote接口中指定的全部办法.在实现这些办法时,有一些额外的要求:

. 这些办法必须是public,而不能是static大概final

. 参数和返回的范例必须是有效的RMI/IIOP返回范例.在普通的情形下,这意味着必须是原有的范例(int, char, double等),可串行化的对象大概Remote接口.

. 办法名不能以ejb开首(这将令EJB的配置工具感到迷惑,并且大概带来冲突)

可挑选的实现Remote接口

关于一个bean可以实现Remote接口,这个特点也是挺重要的.在实现类中,此中的办法签名必须和Reomote接口中的一样,除了一点,就是实现类中的办法并不抛出RemoteException.也就是说,固然关于Remote接口的每个办法,在实现类中都必必要有呼应的办法对应,并且不需求作以下的声明:

public class ShoppingCartImpl implements SessionBean, ShoppingCart

实现Remote接口的缘由是:在漏掉一个办法时编译器将会奉告你,也就是说,假如没有实现Remote接口中的一个办法,编译器将会产生一个错误.不然,你将不知道漏掉了一个办法,直到你运行一个配置工具大概是打包工具为止.越迟发现错误,就要花越长的时间来改正它.

在实现Remote接口时,大概会碰到的问题是利用this关键字来传送对象,而不是利用session context中的getEJBObject办法.普通,当利用this而不是getEJBObject时,编译器将会产生一个错误,因为它等待一个实现Remote接口的对象,而实现类却这样做.通过实现Remote接口,你通过了编译,但是你在运行时又碰到了错误,这是由于与EJB容器等待的差别,实现类并非一个到Remote接口的精确引用.

提醒

固然实现Remote接口可以指出在编译时的错误,但是这样也会招致呈现一些直到运行时才会发现的错误,令改正起来很费时间.所以你最好不要实现Remote接口,而在配置时发现一些错误.
  以上是“循速渐进学用Session Bean(四)[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • <b>循速渐进学用Session Bean(一)</b>
  • 循速渐进学用Session Bean(二)
  • <b>循速渐进学用Session Bean(三)</b>
  • 循速渐进学用Session Bean(四)
  • 循速渐进学用Session Bean(五)
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .