注册本站  论坛  繁體中文

电脑技巧
手机 | MP3 | MP4 | 显卡 | 主板 | 显示器 | 光存储 | 笔记本 | 网络设备 | 移动存储 | 数码相机
键鼠 | CPU | 音箱 | GPS | 电视 | 服务器 | 投影机 | 机箱电源 | 品牌电脑 | 办公打印 |
| 网站首页 | Cisco | Windows | Linux | Java | Dotnet | Oracle | 网页设计 | 平面设计 | 安全 | 软件应用 | 电脑维修 | 办公维修 |
您现在的位置: 电脑技巧 >> Java >> J2EE >> EJB >> Java正文

一步一步学EJB3.0(四):实体Bean开发

文章来源:中国IT实验室整理 作者:佚名 更新时间:2008-8-23 14:38:45 【 】 【加入收藏
        EJB3.0实体Bean开发是是很简单的,主要就是学习标注的使用, 现在EJB3实体Bean是纯粹的POJO.实际上这表达了和Hibernate持久化实体对象同样的概念.它们的映射都通过JDK5.0注解来定义(EJB3规范已经定义了对应的XML描述语法).注解分为两个部分,分别是逻辑映射注解和物理映射注解,通过逻辑映射注解可以描述对象模型,类之间的关系等等,而物理映射注解则描述了物理的schema,表,列,索引等等.

        这些标注都封装在javax.persistence包下,如果是使用Hibernate则在下载包里有个叫ejb3-persistence.jar的jar包,他就是用来完成开发支持EJB3的实体类的包,大部分和JDK5兼容的IDE(象Eclipse, IntelliJ IDEA 和Netbeans等等)都提供了注解接口和属性的自动完成功能.(这些不需要IDE提供特别的EJB3支持模块,因为EJB3注解是标准的JDK5注解)这里不作详细介绍,还是进入本文的主题吧.

        每一个持久化POJO类都是一个实体bean,这可以通过在类的定义中使用@Entity注解来进行声明,如下所示: 1 @Entity   //标识该JavaBean为一个实体Bean
2 @Table(name="orm_oto_users")  //标识该实体Bean映射到数据库的那一张表
3 public class User {
        通过@Entity注解将一个类声明为一个实体bean(即一个持久化POJO类),Table则是标识该实体映射到数据库的那一张表.
         在对一个类进行注解时,你可以选择对它的的属性或者方法进行注解,根据你的选择,Hibernate的访问类型分别为field或property. EJB 3规范要求在需要访问的元素上进行注解声明,例如,如果访问类型为property就要在getter方法上进行注解声明,如果访问类型为field就要在字段上进行注解声明.应该尽量避免混合使用这两种访问类型.
  1 @Entity   //标识该JavaBean为一个实体Bean
  2 @Table(name="orm_oto_users")  //标识该实体Bean映射到数据库的那一张表
  3 public class User {
  4     
  5     @Id  //Id用于标识该字段为主键字段
  6     @Column(name="user_id")  //映射到数据库的user_id字段
  7     //主键生成策略
  8     @GeneratedValue(strategy=GenerationType.SEQUENCE,generator="user_id_seq")
  9     private Long id;
 10 
 11     @Column(name="FIRST_NAME")
 12     private String firstName;
 13 
 14     @Column(name="LAST_NAME")
 15     private String lastName;
 16 
 17     private String email;
 18 
 19     private String Password;
 20 
 21     @Temporal(TemporalType.DATE)
 22     private Date created;
 23 
 24     @OneToOne(mappedBy="user",cascade=CascadeType.ALL)
 25     private Address address;
 26 
 27     public User() {
 28         super();
 29         // TODO Auto-generated constructor stub
 30     }
 31 
 32     public User(String firstName, String lastName, String email,
 33             String password, Date created) {
 34         super();
 35         this.firstName = firstName;
 36         this.lastName = lastName;
 37         this.email = email;
 38         Password = password;
 39         this.created = created;
 40     }
 41 
 42     public User(Long id, String firstName, String lastName, String email,
 43             String password, Date created) {
 44         super();
 45         this.id = id;
 46         this.firstName = firstName;
 47         this.lastName = lastName;
 48         this.email = email;
 49         Password = password;
 50         this.created = created;
 51     }
 52 
 53     public Address getAddress() {
 54         return address;
 55     }
 56 
 57     public void setAddress(Address address) {
 58         this.address = address;
 59     }
 60 
 61     public Date getCreated() {
 62         return created;
 63     }
 64 
 65     public void setCreated(Date created) {
 66         this.created = created;
 67     }
 68 
 69     public String getEmail() {
 70         return email;
 71     }
 72 
 73     public void setEmail(String email) {
 74         this.email = email;
 75     }
 76 
 77     public String getFirstName() {
 78         return firstName;
 79     }
 80 
 81     public void setFirstName(String firstName) {
 82         this.firstName = firstName;
 83     }
 84 
 85     public Long getId() {
 86         return id;
 87     }
 88 
 89     public void setId(Long id) {
 90         this.id = id;
 91     }
 92 
 93     public String getLastName() {
 94         return lastName;
 95     }
 96 
 97     public void setLastName(String lastName) {
 98         this.lastName = lastName;
 99     }
100 
101     public String getPassword() {
102         return Password;
103     }
104 
105     public void setPassword(String password) {
106         Password = password;
107     }
108 }
        如上,便是一个完整的实体Bean,里面我们使用了如@Entity,@Id之类的标注,这正是ejb 3.0的新特性,本文只是作一个简单的介绍,详细请大家查看相关书籍或资料.
  • 上一篇Java:

  • 下一篇Java: 没有了
  • 最 新 热 门
     Flash、HTML、Ajax 谁将赢得Web应用之战
     超越XML和JSON:YAML,Java开发人员的新选择
     优秀Java程序员必须了解的GC工作原理
     Java 6 RowSet 使用完全剖析
     pureQuery带注释的方法风格简介
     面向Java开发人员的Scala指南: 实现继承
     Java 6中的性能优化
     Java实现Windows的dir命令
     Java标准类库提供的容器总结
     在Tomcat上开发Web应用如何保证兼容性
    最 新 推 荐
     一步一步学EJB3.0(四):实体Bean开发
     一步一步学EJB3.0(三):悟透会话Bean(下)
     一步一步学EJB 3.0(三):悟透会话Bean(上)
     用jbuilder7+jboss3+vss开发EJB
     一步一步学EJB 3.0(二):初探企业EJB模块开发
     EJB 3.0学习笔记一:开发环境搭建
     使用Quartz实现任务调度和调度管理
     关于EJB3的一个简单例子
     EJB3.0中查询boolean值的方法
     EJB3应用程序的开发方法
    相 关 文 章

    一步一步学EJB3.0(三):悟透会话Bean(下)
    一步一步学EJB 3.0(三):悟透会话Bean(上)
    一步一步学EJB 3.0(二):初探企业EJB模块开发
    DudoJ框架——更进一步的设想
    基础教程之——RMI一步一步学习
    一步一步用JBuilder5开发EJB(下)
    一步一步用JBuilder5开发EJB(上)

    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告

     

    Copyright 2006-2008 pcjx.com All Rights Reserved
    电脑技巧 版权所有 粤ICP备06059145号 地图
    本网站所有内容未经许可不得转载或做其他使用