JFinal Online Manual /getModel 与 getBean 系列方法

getModel 与 getBean 系列方法

getModel 用来接收页面表单域传递过来的 model 对象,表单域名称以”modelName.attrName” 方式命名。除了 getModel 以外,还提供了一个 getBean 方法用于支持传统的 Java Bean。以下 是一个简单的示例:


// 定义Model,在此为Blog public class Blog extends Model { public static final Blog me = new Blog(); } // 在页面表单中采用modelName.attrName形式为作为表单域的name
public class BlogController extends Controller { public void save() { // 页面的modelName正好是Blog类名的首字母小写 Blog blog = getModel(Blog.class); // 如果表单域的名称为 "otherName.title"可加上一个参数来获取 blog = getModel(Blog.class, "otherName"); } }


上面代码中,表单域采用了”blog.title”、”blog.content”作为表单域的 name 属性,”blog”是类 文件名称”Blog”的首字母变小写,”title”是 blog 数据库表的 title 字段,如果希望表单域使用任 意的 modelName , 只 需 要 在 getModel 时 多 添 加 一 个 参 数 来 指 定 , 例 如 : getModel(Blog.class, ”otherName”)。


如果希望传参时避免使用 modelName 前缀,可以使用空串作为 modelName 来实现:

getModel(Blog.class, “”); 这对开发纯 API 项目非常有用。