Nutz 第一个Demo
Nut 是什么 我这就不多解释 知道是个javaweb框架 如想仔细了解请移步管网 http://nutzam.com/
一、项目结构(直接看图
)
需要注意的是 src和conf 都为源码包 conf包下为 一些json格式配置文件 这中配置文件作者表提倡
二、基础jar包
lombok.jar 是一个 插件包 为了java 文件省去set/get 方法的编写 看客们可以忽略
其他jar包 就不用解释了吧
三、web.xml 文件
其中配置 就是一个主filter和一个listener
有点特殊的是 Nutz的filter需要指定一个入口 也就是modules
这个入口 个人理解为spring主配置文件 此项目中所有的配置文件 都在项目启动的时候由这个入口加载 不知道是否有 理解错误 还请看客们海涵
四、入口类 (叫法有点别扭)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
package org.ly.demo; import org.nutz.mvc.annotation.Encoding; import org.nutz.mvc.annotation.Fail; import org.nutz.mvc.annotation.IocBy; import org.nutz.mvc.annotation.Localization; import org.nutz.mvc.annotation.Modules; import org.nutz.mvc.annotation.Ok; import org.nutz.mvc.ioc.provider.ComboIocProvider; @IocBy(type = ComboIocProvider.class, args = { "*org.nutz.ioc.loader.json.JsonLoader", "ioc/", "*org.nutz.ioc.loader.annotation.AnnotationIocLoader", "org.ly.demo" }) //加载ioc目录下所有配置文件 启用本地注解 扫描包名 @Encoding(input = "utf8", output = "utf8") //输入输出 编码 @Modules(scanPackage = true) //扫描包下所有类 @Localization("msg") @Ok("ioc:json") @Fail("json") //这三个 没有理解明白 public class MainModule { }
数据源配置文件 默认放在 conf/ioc 目录下 项目启动即可加载
五、数据源
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
var ioc = { dataSource : { type :"org.apache.commons.dbcp.BasicDataSource", events : { depose :"close" }, fields : { driverClassName : 'org.mariadb.jdbc.Driver', url : 'jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8', username : 'root', password : 'toor', initialSize : 10, maxActive : 100, minIdle : 10, maxIdle : 20, defaultAutoCommit: false, //validationQueryTimeout : 5, //validationQuery : "select 1" } }, dao : { type : "org.nutz.dao.impl.NutDao", fields : { dataSource : {refer : 'dataSource'} } } }
六、业务操作
Nutz 有其自己的Dao 层实现类 Nutdao 足够你使用 换句话说就是 你完全可以不用去实现自己的dao层 只需要继承其扩展就可以了 这样是不是很方便了
Nutz 也有其自己实现的service 层 如需要你也可以直接调用
下面贴段 最简单的web层代码 各位看官 一看 便会明白 nutz 是如此的简单
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
@IocBean //标示此类 给ioc容器管理 public class userContoller { @Inject //ioc容器 自动注入dao Dao dao; @At("/hello") //请求地址 @Ok("jsp:hello") //成功后返回页面 public String dohello() { return null; } }
七、总结
看官们 是不是觉得 Nutz很简单 很容易上手了 那就赶紧去官网下载 试试吧
告诉你们一个小秘密 还有代码自动生成器哦 一般人我可是不会告诉的哦