1. COC,约定大于配置。通过项目中约定俗成的规则来代替大部分的配置,同时还可以让大家能对项目更加熟悉,连文档都能省了。
    下面是具体的项目规定: 项目中源码包的结构:
    appSrc/domains/ 领域对象存放位置,
    appSrc/controllers/ 业务逻辑所在位置,常用的CRUD可以直接通过ncode生成。
                                一般的业务逻辑直接使用通用dao直接查询数据库
                                而复杂或者可复用的逻辑可以分离出来放到services中
                                controllers中的类要以Controller结尾才会进行映射处理
                                非Controller结尾的类则按照nutz的正常流程处理
    appSrc/services/ 复杂或者可复用的业务逻辑或者通用功能放在这里,     controller中直接使用service类注入,不适用接口。根据大多数的中小型项目   的    统计,其使用接口来实现多个service的情况十分少见。当然若使用接口也可以,只需在service实行出使用@Inject("refer:nameService")即可注入,也可以只用配置文件进行注入
    appSrc/utils/ 这里放一些常用的工具类
    webapp/WEB-INF/templates/ 模版文件
    webapp/Web-INF/views/ 这里放所有的视图文件,命名规则是moduleName/viewName

  2. 这里介绍一些controllers处的url到action到view的映射关系
    url 格式: http://yourdomain/appName/moduleName/actionName
    moduleName是 controllerName去掉Controller,然后首字母小写
    actionName就是 methodName
    你若在Contoller设置了@At, 映射就变为 @At.value/actionName
    若在Action中设置了@At 映射就直接为 /@At.value, 这里要注意这时候没有controllerName做前缀
    View和action的映射关系则为 WEB-INF/views/controllerName/actionName.jsp
    这里还没有处理的很好,若不满意可以直接使用@Ok处理即可
  3. 这里有个新特性则是为REDIRECT 重定向 添加了可以直接返回message
    例如: @Ok(">>:/index.jsp") Object someFunction(){return "i'm redirect";}
    在index.jsp 页面你可以直接使用${message} 来得到 这个字符串。目前只支持返回字符串,再复杂的数据应该采用db或者session或者cache来处理。
  4. 添加了ncode模版功能,目前支持 create-project projectName , create-domain
     create-controller ,generate-controller, generate-views , help几个命令
    以后会添加run-app,war等热部署项目和项目打包
  5. 这个时目前正在做的,scoffold脚手架功能,可以使你只创建一个domain就可以享受到所有的CRUD功能,不需要再生成重复的代码
    这是你就可以通过修改模版来完成大部分功能的生成,若实在特殊再添加相应的action或者view即可。

说了这么多,只有一个目的,减少代码数,提高开发者的开发效率,减少对重复性代码的复制,更多的时间去关注业务,去关注其他的方面。希望你们在开发的时候更快乐,也给我反馈更多的意见。大家能为重复代码少烦一些,多快乐一点,也算我为创建和谐社会做的贡献 :)