jfinal模块化开发的best practice是怎么样的

我这边整体的网站分为普通用户+专家服务+后台管理, 我并没有弄在一个maven工程里面,而是分了3个工程

  1. customer

  2. hero

  3. admin


针对2.2版本, 我在oschina上看了很多jfinal的帖子, 大概意思是这样的: 

  • 自动生成出来的BaseModel和Model单独放一个common项目中, Model中最多放一些字段判断之类的方法,因为多模块,所有common工程都会用到, Model不要放个性化的增删改查, 而是强烈建议把这些写到每个工程的Service方法中

  • 自动生成的代码不要改, 比如在BaseModel加注解啊,加字段之类的的, 因为重新生成后代码会覆盖,如果你没记住之前改过那里,那将是一场灾难, 也就是说新字段都在Model中新增, 新增后所有引用common项目的工程都会生效. 


common包还应该放如下内容:

  • BaseConfig: 继承了JFinalConfig的自己的Config

  • BaseController:  继承了Controller的自己的Controller

  • 通用的Interceptor,Handler

  • BaseValidator

  • 其他通用的工具类

  • .....其他


开发的流程是:

比如common项目当前版本是1.0, 所有依赖该maven项目的工程都引入common-1.0,

当common项目有修改后, 重新打包common为common-1.1, 然后所有项目再重新引用1.1,然后打包发布


-----------------------------------------------------------------------------------

以上我说的这些是否有问题, 有补充的点吗? 希望大家踊跃发言




评论区

JFinal

2016-06-07 18:35

楼主说的这些非常之好,jfinal 新社区在迭代几个版本以后,会将通用部分抽取出来发布为一个开源的项目供大家参考使用,进一步提升大家的开发效率,节省时间

yuechen323

2016-06-07 22:48

@JFinal 是你这个框架好啊, 其他jfinal的官方项目,一定是及其优雅而高效的

yuechen323

2016-06-07 22:48

@JFinal 期待

JFinal

2016-06-08 09:49

@yuechen323 感谢支持,多多关注 jfinal 新社区的动向