nutz适用于开发大型项目吗

谢邀如果大型项目是指业务复杂,那nutz还是挺适合的,毕竟是依据工程实践封装的一堆工具类。如果大型项目是指并发量高,数据量大之类的,那不论你用什么,调优的时候都得深入原理。如果你是因为对未来惴惴不安而发问,不如自己写个demo看看,或者把现有项目中的某一部分用nutz重构一下。
■网友
本人实践过nutz,属于国产里相当优秀的框架,文档完整,思路敏捷,单元测试丰满。但和spring等框架相比,差距还挺大的,而且nutz更新太慢,很多思路没有跟上时代潮流,已经是淘汰的技术了。
■网友
框架只是个工具,不给你添乱就是好的了。大型项目主要还是负责在业务上。从这个角度看,作为小工具集合的 Nutz 非常灵活,其实越大的项目越适合
■网友
是个渣渣框架,用的越深入,越发现到处都有缺陷,和spring比起来就是渣渣,模仿的四不像,半成品一个。。。
其中之一就写了个dao替代nutz的,我们关系数据库仅使用oracle和PostgreSQL,nutz的dao简直用不成:
sql文件:
/*** SQL文件内容格式说明* 文件格式为标准的sql文件格式进行了一点扩展* sql名和sql必须满足成对的出现,形如 a b a b a b a b ...* a为sql名,b为sql(可多行),a与b之间可以有注释**//**/select ${field}from test."user" t --用户表/*啊啊*/;/*插入语句。*//**/insert into test."user" (id, name, password)values (:id, :name, :password);/*{field}*//*用户表字段*/t.id,t.name,t.password;图例:
nutz适用于开发大型项目吗

sql:
@Test @SuppressWarnings("unchecked") public void testCall() throws Exception { Trans trans = light.getTransaction(); Stream\u0026lt;DataRow\u0026gt; rows = trans.using(() -\u0026gt; { DataRow row = light.call("call test.fun_query(:c::refcursor)", Params.builder() .put("c", Param.IN_OUT("result", OUTParamType.REF_CURSOR)) .build()); System.out.println(row); return (Stream\u0026lt;DataRow\u0026gt;) row.get("column0"); }); rows.forEach(System.out::println);} @Test public void ConditionTest() { Condition condition = Condition.builder().where(Filter.eq("id", 25)) .and(Filter.eq("password", "123456"), Filter.eq("name", "admin"), Filter.gtEq("id", 2), Filter.isNull("name")) .and(Filter.isNotNull("name")) .or(Filter.eq("id", 88)) .or(Filter.notLike("name", "%admin")) .orderBy("id", Order.DESC) .orderBy("name", Order.ASC); System.out.println(condition.toString()); }@Test public void testUpdate() throws SQLException { int i = light.update("test.user t", Params.builder().put("name", Param.IN("SQLFileManager")).build(), Condition.builder().where(Filter.eq("id", 5))); System.out.println(i); }@Test public void testInsertBatch() throws SQLException { List\u0026lt;Map\u0026lt;String, Param\u0026gt;\u0026gt; list = new ArrayList\u0026lt;\u0026gt;(); for (int i = 0; i \u0026lt; 100; i++) { list.add(Params.builder() .put("name", Param.IN("batch" + i)) .put("password", Param.IN("123456")) .build()); } int i = light.insert("test.user", list); System.out.println(i); }@Test public void testSqlFile() { light.query("\u0026amp;data.query", r -\u0026gt; r, Params.builder() .put("id", Param.IN(3))// .put("cnd", Param.TEMPLATE("order by id")) .build()) .forEach(System.out::println); }


推荐阅读