ruby生成java代码 ruby encode( 八 )


现在 你已经拥有RnR应用程序的第一个版本 并且准备运行
很少量的工作 一个简单的 创建表格 然后执行向导 让我们看看结果
Rails结果
这是应用程序的结果
图二
图三
图四
少量的工作 少量的结果
JPA on OX的第一次冲刺
继续使用OpenXava 使用OpenXava的第一步是创建新的项目
$ ant CreateNewProject xml Dproject=CookBook
现在你必须创建以及配置你的数据库
现在是时间输入你的第一步代码了 在这个例子中使用Java代码
Recipe java:
package okbook model;
import java util *;
import javax persistence *;
import openxava annotations *;
@Entity
@View(members= title; description; date; instructions )
public class Recipe {
@Id @GeneratedValue @Hidden
private Integer id;
@Required @Column(length= )
private String title;
@Column(length= )
private String description;
private Date date;
@Stereotype( HTML_TEXT )
private String instructions;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this title = title;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this description = description;
}
public Date getDate() {
return date;
}
public void setDate(Date date) {
this date = date;
}
public String getInstructions() {
return instructions;
}
public void setInstructions(String instructions) {
this instructions = instructions;
}
}
Category java:
package okbook model;
import java util *;
import javax persistence *;
import openxava annotations *;
@Entity
public class Category {
@Id @GeneratedValue @Hidden
private Integer id;
@Required @Column(length= )
private String name;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this name = name;
}
}
最后一个步骤是生成数据库图表 你只需要执行项目中的一个小目标
$ ant updateSchema
现在 你已经拥有OpenXava应用程序的第一个版本 并且准备运行
少量的工作 简单的POJO 以及执行 更新图表 让我们看看结果
OpenXava结果
这是应用程序的结果
图五
图六
注意 用户可以创建更新 删除 从列表生成PDF 将列表输入到excel 每一列的命令 大型结果和过滤数据的支持分页 而且你可以直接部署 不需要代码 仅仅是执行一个小目标 JSR 入口上的应用程序 以及OpenXava的lookfeel能够适用于入口的lookfeel 这就是一个应用程序准备产出的第一步
少量的工作 完美的结果
观察这里RnR 与 OX之间的差别 一个冷静的观点是在RnR中 你先输入表 而在OpenXava中先输入类别
控制器
Rails引起basic CRUD的控制逻辑 你在下面可以看到
图七
另一方面 OX不会为CRUD生成任何代码 OpenXava仅有一个属性代码 可以执行CRUD和打印 将自动化配置给所有的实体 你可以书写你自己的属性CRUD逻辑 或者你可以为一个特有的实体书写详细逻辑 但是你不会为每一个实体设置控制代码 使用这种方法 你需要维护少量的代码 并且你可以改变CRUD独立单元的逻辑
Rails使用合成码 OX使用属性代码
你可以在OpenXava wiki上面学到更多的OX控制器知识

推荐阅读