由上一篇文章,JFinal在网络开发中的位置,我们知道JFinal最主要的功能,就是提供操纵数据库的方便接口了。
而实现这个功能,主要通过ActiveRecord模块。
以下的内容,主要总结自JFinal Mannual 2.2
ActiveRecord是JFinal最核心的组成部分之一,通过ActiveRecord来操作数据库,
将极大地减少代码量,及大地提升开发效率。
1.配置
(1)先配置C3p0
C3p0代表了,与数据库的connection池。
(2)再配置ActiveRecord
ActiveRecord的Model对象或者Db+Record对象,只关心对于数据库的操作。
(3)映射
将数据库的表名,与jfinal中的一个类进行映射。
2.JavaBean+Model方式
(1)Model
此种模式下,一个类继承自Model对象,由1中配置的映射代表一个表
可以定义一个public static final 对象dao(Database Access Object)来表示对于数据库的操作。
然后new的具体类型的实例表示某一具体条目。
多个条目,可以用List来存放。
(2)与JavaBean的结合
jfinal 2.1版本之后,生成的Model继承自BaseModel。
其中拥有getter、setter方法遵守传统JavaBean规范。
3.Db+Record方式
相对于,模式2,我更喜欢模式3,因为这种方式,更加直观。
它将对于数据库的操作,和对于条目的操作完全分开。
Db代表对于数据库的操作
Record对象,相当于一个通用的Model,代表对于数据库中的条目的操作,
多个条目仍然可以使用List来承载。
(1)Db操作
①find查找,相当于一个任意的query语句
②paginate分页查找
以(表名,主键或者Record对象)为输入,对表进行新建条目、删除条目、修改条目操作。
③save保存新建
④delete删除
⑤update修改更新
⑥tx事务操作
(2)Record
①set修改设置
②getStr取得某属性
③getInt取得某属性