zoukankan      html  css  js  c++  java
  • jfinal想用到中大型项目中的项目经验分享

    jfinal 用在大项目中更加方便实用,节省无数的开发时间,代码量相对 SSH 减少 75% 至 90%,对于项目结构来说,简单提以下几点:

    1:先分大模块,大模块内部可以根据划分的model分成子包。也可以更扁平化:直接根据model划分子包。

    2:包内部至少是 MVC 结构,业务写在Model中而不要写在Controller中。也可以引入Service 层,那么该包内部就如同样的类文件:UserController、UserService、User、UserValidator、UserInterceptor。

    3:视图文件放在webapps下面,针对于每个源代码下的子包,如 com.user、com.blog 建立相应的view子目录 user、blog,最好在这些目录上一级创建一个父目录,如 view

    4:架构风格建议是 restful,例如,你有 user、blog、account 这几个领域模型即model,在 url 或者说是api请求的风格设计上先将这些抽象成资源,剩下来的一些事情只不过是对这些资源的操作。例如  /user/save、/user/update、 /account/trans?from=lisa&to=james&cash=999999

    5:在restful架构风格中,有时候领域可能是某个抽象概念,或许有数据库表与之对应,或许没有,但也一样是抽象成资源,对其的操作结果在没有数据库表的情况下会将影响施加到其它model的数据库表中

        总之一切皆资源,以及在资源之上的状态转换(操作)

           常见的违返 resful 风格的 api 设计,如controllerkey为  /studentManager、/blogAdmin,而actionKey 往往是这样  /studentManager/saveStudent、/studentManager/deleteStudent。简单的做法是controllerKey 即为 modelName,通常就遵守了 restful 架构风格,如 /user ---> /user/save、/user/delete/123,这里的 user 即为 modelName

  • 相关阅读:
    Coding Souls团队---电梯演讲
    第一次团队会议总结-NABCD分析
    软件工程团队项目介绍
    python进行四舍五入
    python列表元素两两比较
    Linux常用命令
    谷歌日历的正确用法--在谷歌日历中添加农历、天气、中国节假日
    Nose框架的安装
    python中staticmethod装饰器的作用
    python 3.x与python 2.7.x在语法上的区别
  • 原文地址:https://www.cnblogs.com/kenshinobiy/p/4776246.html
Copyright © 2011-2022 走看看