JFinal Model 自定义属性 Get Set 的不能作为javabean标准使用吗?

Ken5233 发布于 2015/10/29 13:09
阅读 1K+
收藏 0

@JFinal 你好,想跟你请教个问题:


public class Member extends BaseModel<Member> implements UserDetails {
  private MemberInfo memberInfo;
  // getter setter ...
}



在后台代码中,可以通过 getMemberInfo() 获取属性对象值信息,如: 

		Member model = Member.me.findById(1L);
		System.out.println(model.getMemberInfo().getStr("name"));
		this.setAttr("model", model);



但在前台JSP页面中,无法通过 EL 表达式获取 memberInfo 数据,如

${model.memberInfo.name }

经过debug,发现调用过getMemberInfo()方法的,但数据就是为空。查看Model的源码,重写了toString 方法, 将 attr 中的数据进行输出,但这与javabean规范有何冲突呢?请问怎样实现在页面中通过属性直接获取关联的数据?

以下是问题补充:

@Ken5233:补充环境说明:jfinal 2.0 + tomcat 7 (2015/10/29 13:23)
加载中
1
腾讯公告
腾讯公告

请参考这里:http://my.oschina.net/shinestmt/blog/137664

或者你要在model里写一个完整的setter(put值到model),getter(取出put到model的值)

0
Ken5233
Ken5233
突破零回复
0
Ken5233
Ken5233

引用来自“腾讯公告”的评论

请参考这里:http://my.oschina.net/shinestmt/blog/137664

或者你要在model里写一个完整的setter(put值到model),getter(取出put到model的值)

谢谢,你回复的方法也可行。我也已经看了源码,找到我要的答案了,原因在此: ModelRecordElResolver.getValue 。 jfinal 重写了 el 方法
腾讯公告
腾讯公告
回复 @jokeit : 没有,都是文本编辑,也用不着多高级的编辑器,标签就那几个,内建函数也不多,常用的就那几个
Ken5233
Ken5233
回复 @腾讯公告 : 用freemarker做过几个项目,感觉Eclipse 插件编辑器不好用,就放弃了,有好的推荐???
腾讯公告
腾讯公告
建议使用freemarker,简单易用
返回顶部
顶部