动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Java教程 ]的信息

本月文章推荐
.用ANT 开发 Java 程序.
.Xalan-JavaXSLT处理器及其分割功.
.Java数据库编程中查询结果的输出.
.几行代码轻松搞定网页的简繁转换.
.大道至简 Java 23种模式一点就通.
.Java编程思想读书笔记(第5-7章.
.Oracle应用服务器实现Java CORBA.
.JBuilder9+Weblogic Platfrom 8..
.tomcat下中文的彻底解决.
.教您如何成为 EJB 专家详解系列连.
.用Mylar进行以任务为中心的编程.
.java中的易混问题收集.
.“Mastering EJB” 第二版开始免.
.Java NIO API详解.
.Hibernate入门 > JBX + Sqlserve.
.Java I/O API之性能分析 (上).
.关于Config参数和Context参数的访.
.JAVA专业术语集.
.深入equals方法.
.新Java技术工具亮相游戏开发商大.

基于weblogic 的ejb 学习笔记(二)

发表日期:2008-1-5 |


基于weblogic 的ejb 学习笔记(二)

编辑实体bean的高级课程
1. 怎样开发主健类
ejb的主健类主要用做持久存储和ejb容器中的唯一标识符.
通常主健类的字段直接映射到数据库中的主健字段.
假如主健只是由单个实体bean字段组成.且其数据类型是基本的Java类.如string,则bean作者不必开发自定义的主健类.
只需要在配置描述器中指定类的名字和主健字段即可

假如把主健映射到一个用户定义的类型,或者映射到多个字段,则bean的作者必须写出自定义的主健类.

主健类必须实现 java.io.serializable,而且包含主健字段.

对于cmp,字段名必须匹配实体bean中的相应的主健字段名,这将使ejb容器能够把适当的cmp字段赋值到主健类中的相应字段中.

2. 实现hashcode()方法
hashcode() 方法的实现原理是,利用主健字段,经适的处理后,生成并返回一个整数. 这个生成的整数称为散列码,用作表格的索引.
对于一个给定的主健,hashcode()方法的返回值应当总是一样的. 常见做法: 执行"异或" 操作.

3. 实现 equals() 方法
 正确地实现equals()方法也需要一定的技巧. 任何equals() 方法的第一行都应当检查传递进来的引用是否是"this", 检查equals()
 方法是否是针对自己的调用. 通常做法: 当容器有一个主健对象时,她要检查这个主健对象是否已经存在于数据结构中.

 接着,equals() 方法需要检查传递进来的主健类的类型. 假如主健类是中继类(final),可以使用instanceof 进行简单的检查.
 否则,传递进来的参数也许是主健类的子类.在这种情况下,equals() 方法必须使用getClass.equals, 以确保类的类型是匹配的

 建议主健类采用终极类. (instanceof 效率要高一些)

 最后,equals() 方法需要需要比较传递进来的对象的所有值. 假如所有值是相同的,说明对象也是相同的
 注重: 要先比较散列码.

 4 实体bean的继续和异构
   实体bean 可以利用java的继续和异构的特性.

5. 继续的限制
尽管ejb 规范答应组件之间的继续,但夜游一些细微的规则限制了怎样设计和实现一个继续的ejb.
 ejb的规则要求,本地接口的create() 方法返回的远程接口不能是一个子类,也不能是超类. 实体bean 的ejbreate() 方法也
 必须返回主健类型,也不能是一个子类,也不能是超类.
类似的findByPrimaryKey()方法必须使用主健类型作为参数返回远程接口.
这些要求限制了bean作者对继续的实现.

6. 继续和异构的设计模式

注重: 具有继续和异构特性的实体bean,很重要一点就是要确定一般情况下究竟都需要使用哪一些属性.

7 . 接口的继续

通过bean类的继续性,bean作者只需要在一个地方实现业务方法,其它实体bean就可以共享类中的方法了.

8 使用多个bean类
  为本地和远程接口创建一个基本接口,不是达到异构共享的唯一方法. 另一个常见的做法是
  使用等同的本地和远程接口,但采用不同的bean类实现其中的业务方法.
  这种做法类似于使用一个具有若干不同实现的接口. 
  好处: 客户不知道或根本不管正在使用哪一种实现,客户机只对接口进行操作.

9. 实体bean 与锁

    实体bean 不是可重入的或多线程的组件,每个实体bean实例也没有多线程控制的能力。
一次实体bean 类中的方法也不是同步化的。
    实体bean实例不能是多线程的,所以ejb容器必须串行地执行所有的容器方法和业务方法。
这意味着当业务方法正在执行时,ejb容器不能再调用其它方法,比如 ejbPassivate()方法。

    并发控制:
        一种做法是对每一个事务都激活实体bean实例。同过数据库的访问锁的方式进行并发处理。
        一种方法是,每一个主健只保持一个实体bean实例,这样一次只有一个事务可以访问实体bean。一旦
            前一个事务提交或回滚,才答应另一个事务使用这个实体bean实例。
    并发控制策略:
        数据库并发控制:
            除非非凡情况,应尽量使用默认的数据库并发控制。
        排它性并发控制:


上一篇:J2ee学习流程(转) 人气:397
下一篇:dom4j中文问题解决方法。 人气:659
浏览全部Java的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-11-21 AutoIndex v2.2.4 多国语言版
2008-11-21 ASBLOG v2.5 bulid 081118
2008-11-21 phpwebsite v1.60
2008-11-21 DreamArticle 文章管理系统 v3.0
2008-11-21 DreamArticle 文章管理系统 v3.0
2008-11-21 Piwik ( PHP统计系统,可以和GOOG
2008-11-21 CMS001 v2.2 Beta
2008-11-21 magento开源电子商务平台 v1.1.7
2008-11-21 开良马克思影视下载插件 v1.1
2008-11-21 傲游(Maxthon) 2.1.5 正式版
2008-11-21 Skype v3.8.0.188 Final
2008-11-21 AirPlay OpenAlpha 2008.11.20
2008-11-21 屏幕文字抓取工具 DWMouse1.3.510
2008-11-21 Vista一键还原(Vista Ghost)1.
2008-11-21 SP Photo Fix照片修改1.2破解版
2008-11-21 QQ腾讯聊天工具 v1.2正式版
2008-11-21 FlightTrack航班信息v1.0破解版
2008-11-21 RealPiano仿真钢琴1.0破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵
SEO対策 中国語教室 ホームページ作成