当前位置:主页   - 电脑 - 程序设计 - JAVA
java ee5平台java持久化开发(ejb3和jsf)
来源:网络   作者:CSDN    更新时间:2010-09-26
收藏此页】    【字号    】    【打印】    【关闭

1、前提条件
首先机器必须具有下列环境,如果没有可以到sun网站上下载
netbeans5.5
Sun Java System Application Server Platform Edition 9
jdk5

2、创建web工程
从菜单中新建工程 File > New Project.  从Web目录中选择 Web Application.     
 工程名ZooApp ,server项选择 Sun Java System Application Server,   J2EE Version 选择Java EE 5, 然后Next.
  选中Java Server Faces复选框

3、创建持久化单元
右键在工程窗口单击工程节点,从 New > File/Folder打开向导
从Persistence目录里选择Persistence Unit 然后Next
使用默认的Persistence Unit Name.
Persistence Provider使用TopLink (default).
Data Source,使用data source jdbc/sample.(这个默认的java数据库已经帮定到了Sun Java System Application Server)
确认Java Transaction API被选中
Table Generation Strategy 选择 Create(这样在系统发布时会自动创建表)
然后finish

4、创建实体bean
a 右键单击工程节点,选择New > File/Folder.
b 从Persistence目录选择Entity Class然后Next.
c 输入Animal作为class name,entity 作为包名, Primary Key Type选择 Long.,然后Finish
d 在生成的代码中加入下列属性

String name;
String kind;
String weight;
Pavilion pavilion;

e 然后在代码界面单击右键Refactor > Encapsulate fields,在弹出界面中,选择我们要生成
getters,setters方法的复选框,然后确定。在编辑界面下方出现的 Encapsulate Fields对话框中
点击Do Refactoring。
f 在数据库中name的默认的字段名成是name,如果我们要以animalName替代name,在必须在name的变量
声明前加上如下标记
@Column(name="animalName")
g 我们想pavilion列记录Animal和Pavilion有多对一的关系(many-to-one),则要在pavilion加上
如下标记
@ManyToOne
h 按Alt-Shift-F组合快捷键导入所有需要用到的类(这个时候提示找不到Pavilion是正常的)
i 保存

创建 Pavilion 实体bean
步骤 a b c 同上,只需把class name 改为Pavilion即可
d 加入如下属性
String name;
String address;
Collection <Animal> animals;
步骤 e 同上
f 改变name的数据库字段名称,在name声明前加上如下标记
@Column(name="pavilionName")
g 在animals前加上如下标记表示一对多的关系
@OneToMany(mappedBy="pavilion")
步骤 h i 同上

5、创建web接口
a 右键单击工程节点,选择New > File/Folder.
b 选择找到JSF Pages from Entity Class from the Persistence然后Next.
c 在从Entity Class 创建jsf页面向导中,选择Add All 选择我们的两个实体bean
d jsf页面folder默认空,键入entity作为生成相关类的包名,然后finish

6、在Pavilion类中加入如下代码

//Code for validating information when creating new item
public int hashCode() {
int hash = 0;
hash += (this.id != null ? this.id.hashCode() : 0);
return hash;
}

public boolean equals(Object object) {
if (object == null

其它资源
来源声明

版权与免责声明
1、本站所发布的文章仅供技术交流参考,本站不主张将其做为决策的依据,浏览者可自愿选择采信与否,本站不对因采信这些信息所产生的任何问题负责。
2、本站部分文章来源于网络,其版权为原权利人所有。由于来源之故,有的文章未能获得作者姓名,署“未知”或“佚名”。对于这些文章,有知悉作者姓名的请告知本站,以便及时署名。如果作者要求删除,我们将予以删除。除此之外本站不再承担其它责任。
3、本站部分文章来源于本站原创,本站拥有所有权利。
4、如对本站发布的信息有异议,请联系我们,经本站确认后,将在三个工作日内做出修改或删除处理。
请参阅权责声明