关于jfinal的Model组件的一点小纠结

发布于 2021-11-24 05:35:28 字数 1436 浏览 844 评论 18

写jfinal有一段时间了,里面的Controller 还是写的非常赞,轻松处理请求业务。但是有个小小纠结的就是jfinal的 Model 组件,虽然看起来节省了代码,但是对于稍微复杂的字段超过4-5个的model要处理起来真的好繁琐。请问各位大大,jfinal有没有提供使用标准javabean+注解方式的数据库model来处理数据?如我在android移动项目中经常使用的数据库框架ormlite,相对来说比jfianl的Model组件开发起来更加方便。

大概结构如下,写一个带注解的javabean:



/** 
 * 遥控命令 
 *  
 * @author lichuan 
 *  
 */ 
public class RemoteCommand extends DBObject { 




/** 
* 对应品牌ID 
*/ 
@DatabaseField 
private int ref_brand_id; 




/** 
* 对应按钮keyCode 
*/ 
@DatabaseField 
private int keyCode; 




/** 
* 数据码 
*/ 
@DatabaseField 
private String dataCode; 




public RemoteCommand() { 
} 




public RemoteCommand(int keyCode) { 
this.keyCode = keyCode; 
} 




public RemoteCommand(int keyCode, String dataCode) { 
this.keyCode = keyCode; 
this.dataCode = dataCode; 
} 




public RemoteCommand(int ref_brand_id, int keyCode, String dataCode) { 
this.ref_brand_id = ref_brand_id; 
this.keyCode = keyCode; 
this.dataCode = dataCode; 
} 




public String getDataCode() { 
return dataCode; 
} 




public void setDataCode(String dataCode) { 
this.dataCode = dataCode; 
} 




public void setKeyCode(int keyCode) { 
this.keyCode = keyCode; 
} 




public int getKeyCode() { 
return keyCode; 
} 




public void setRef_brand_id(int ref_brand_id) { 
this.ref_brand_id = ref_brand_id; 
} 




public int getRef_brand_id() { 
return ref_brand_id; 
} 




} 

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(18

小情绪 2021-11-24 21:10:47

。。。相对来说,你还没玩过hibernate的hbm。xml时代呵,个人觉得注解形式javabean映射是最简单高效的orm框架设计了,没有之一。

把昨日还给我 2021-11-24 21:10:47

回复
抱歉,我说的是4-5个字段,没有那么夸张到40-50个字段的表结构。

话说我真不敢苟同你的意见,一个javabean配置一个表结构,使用getset方法访问的好处是在写代码的时候直接调用getset函数就能够方便的操作表字段,而不需要记住表结构字段名称。

而这个好处在刚开始写项目的速度优势是显而易见的。还有一个好处是可以随时调整表结构,而不需要写了一般发现某些字段得调整,而当这个表结构使用jfina的set(“key","value")分散在各处的时候,你会发现,悲剧了,每个都得改。

断爱 2021-11-24 21:10:47

回楼上的楼上,我现在使用jfinal的Model就是这样改造来用的,将就着用吧:

public String getName() {
 return get("name");
}


public void setName(String name) {
 set("name", name);
}
心舞飞扬 2021-11-24 21:10:47

不知道他们大公司实际是怎么做的

你可以咨询下@绝望的八皮 或者 @JFinal

 个人是参照的 jfinal blog 里面的,用起来也很爽!

灵芸 2021-11-24 21:10:47

不知道他们大公司实际是怎么做的

你可以咨询下@绝望的八皮 或者 @JFinal

 个人是参照的 jfinal blog 里面的,用起来也很爽!

能否归途做我良人 2021-11-24 21:10:47

大公司,不一定牛B,技术也不一定先进,我们公司500人不知道算什么公司,还在用HashVO 来获取数据,如果这个到时候改表结构,不知道有多少人要跳楼,但是实际上几乎没改过表结构

夜血缘 2021-11-24 21:10:47

    用 jfinal model 一到两天就知道好处了,对于web项目来说数据是非常关键的,所以对数据库表结构要非常地清楚,至于字段记忆的问题,可以通过 desc tableName得到表结构,然后放在model最前面的注释里面,随时可以查看。

    用过 hibernate 两三年,jfinal 比传统 Java ORM 好用多了,不信就试试,保证你会将传统java ORM彻底扔进垃圾桶, @绝望的八皮 就是其中之一

小瓶盖 2021-11-24 21:10:47

支持Record ORM,支持JFinal

怎言笑 2021-11-24 21:10:47

springrain @WhereSQL 动态查询条件的注解……

平生欢 2021-11-24 21:10:46

回复
当你能不用写注解与setter getter以后,你会发现注解也很不爽,试用一下 jfinal activerecord两三天时间,将彻底改变你现在的想法

好听的两个字的网名 2021-11-24 21:10:45

软件里面的东西只要数量级变大都会变得很麻烦,不可能每个表都是45个字段,并且每个字段都有用吧,当出现几十个字段的时候是不是应该从模型的角度也斟酌一下?

瑾兮 2021-11-24 21:10:45

虽然公司项目基本都是jfinal,但是有个遗留的ssh项目,现在每次加个字段都被hibernater搞的我想死。。。各种忘记加,忘记配置。

情场扛把子 2021-11-24 21:09:54

之前用Hibernate就非常讨厌写Bean和给Bean加注解

好听的两个字的网名 2021-11-24 20:47:56

呵呵,在开发初期在db设计的表结构,可能你记忆真的好,一下子就记住了字段名。还有,现在一个人从设计表结构到所有都做完成的一个项目真心很小,只能代表jfinal适合一个人玩小项目,数据库什么的不复杂。

好听的两个字的网名 2021-11-24 20:35:45

回复
我们公司很多表都是在30个字段以上,然后其中还有某些表预留字段就有几十个,但是常用的就那么几个。

甜扑 2021-11-24 19:01:11

不知道我有没有理解楼主的意思

引用“取个数据存个数据都得复制张贴字段好辛苦”

意思是getXXX setXXX 这样比较轻松吗,

那写javabean不辛苦吗,有人说可以自动生成 get set,还有人说可以自动生成Bean。

那同样JFinal的Model你也可以改造一下实现同样的功能。

需要复制张贴字段:

1.DB设计的不是很合理,名字长,并且生涩难记,才会出现这种情况

2.开发不用心,不熟悉表结构

终陌 2021-11-24 16:57:23

确实很蛋疼,整理了一下。这样好看多了。。。

可是我不能没有你 2021-11-24 08:43:20

代码看着很蛋疼,编辑一下,使用工具栏的 # 插入代码,才能有语法高亮

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文