阅读更多

38顶
5踩

编程语言

原创新闻 Nutz1.a.22 发布-Mvc,Ioc 文档完成

2009-11-30 10:11 by 正式记者 zozoh 评论(33) 有12309人浏览

 

对于 Java 程序员来说,除 SSH 之外,可能还有另外一个选择: Nutz


这两个月...

在 1.a.15 发布之后的 2 个月以来,Nutz陆续收到来自 Nutzam 讨论区 以及   的 QQ 群 很多反馈,它们基本针对如下四个方面:

  1. 文档不全  --  现在 Wiki 页,已经基本可用
  2. 没有例子  -- 建立了 Demo Site,会不断的增加例子
  3. Mvc 狗屎一样  -- 被重写了
  4. Ioc 不会用 -- 见 1

同时,不断的有 Geek 指出Nutz代码和文档里的缺陷,如:

Amos(amosleaf@gmail.com), Blue Rain(bigcaibird@gmail.com), Bird(bird.wyatt@gmail.com), Peter Tung(mastung@gmail.com), happyday(happyday0517@gmail.com), Van(ruderal@gmail.com), Wendal Chen(wendal1985@gmail.com), XiaoFeng(hilliate@gmail.com), Yang (sunonfire@gmail.com) 

其中 Wendal,除了修正了很多代码里的低级错误,还对 Castors 进行了较大的修改,从而让 Nutz 可以运行在 GEA 上。
 Yang 提供了日志模块,现在Nutz 的 Mvc, Dao, Ioc 的日志功能,全都是基于这个模块的。它可以自动适配 Log4j 和 java.util.logging

于是 Nutz 进行了非常彻底的重构。并持续发布了

  • 1.a.16 <= 重写了 Mvc, 采用了 @At("/xxx") 方式来映射请求
  • 1.a.17 <= 做了一点改进
  • 1.a.18 <= 这个版本很重要, 重写了 Ioc, 重构了部分 Dao, 它是现在 1.a.22 的雏形
  • 1.a.19 <= 微小调整
  • 1.a.20 <= 微小调整
  • 1.a.21 <= 修改了 Dao, 支持复合主键, 支持插入和更新容器,支持 @Next 和 @Prev

关于 Nutz 1.a.22

  • 在 1.a.21 基础上修改了几个小 bug,其中有几个 Bug 很致命
  • 共通过了 367 个单元测试,其中 123 个数据库相关用例
  • Mvc 和 Ioc 的文档已经可用
  • 代码添加了较多的 JDoc

我们期待更多的批评和意见


如果你不了解 Nutz ...

Nutz 是什么?

Nutz 为 Java 程序员提供了一个选择,一个除了 SSH 之外的,更轻便的选择。

访问项目主页:  http://code.google.com/p/nutz/


Why Nutz?

同 SpringSide 的思路不同,它并不是帮助程序员更好的使用 SSH,而是提供了“一种放弃 SSH的能力”。 当然,什么时候使用这个能力,是完全由程序员自己决定的。只要你打算在你的项目里放弃 SSH,你完全可以尝试一下这个小框架。

关于 Nutz 更多的动机,请看这里: 《JAVA为什么不能是一门敏捷的语言呢

预备知识

Nutz 设计的原则,就是尽量利用 Java 程序员都具备那部分知识,尽量不抛出很多概念,尽量做到自然。你只需要掌握:

  1. Java 语法
  2. JDBC 的基本使用

你就可以无障碍的在1-2天内基本掌握这个框架的大多数用法。

如果你掌握如下知识点:

  1. SQL 的基本知识
  2. 如何获取 DataSource
  3. Ioc 的概念
  4. Mvc 的概念
  5. JSON
  6. JSP/Servlet 容器配置, 如Tomcat

那么 Nutz 对你来说,学习的成本就会更低,你是不会遇到什么障碍的。

功能的取舍

每当我在决定 Nutz 某一个小功能的取舍时,都会问自己的一个问题:
  1. 增加了这个功能,使用者会少写代码吗?
  2. 不增加这个功能,是不是限制了使用者,从而让TA某些事情做不到或者做的极其不爽?
  3. 这个功能有多大的概率被使用到?

我一直盼望着,能越来越多的人,提出一些使用场景,然后告诉我,在这个场景下, Nutz 表现的很烂。

Nutz 的下一步



 

38
5
评论 共 33 条 请登录后发表评论
33 楼 witcheryne 2009-12-02 22:44
支持 支持...   有空好好看看...
32 楼 xiadi8364 2009-12-02 17:32
楼主,加油啊
31 楼 freej 2009-12-02 13:20
好,抱歉,最近比较忙,支持下
30 楼 newsky 2009-12-02 11:49
我觉得可以考虑用scala来搭建框架
29 楼 xingqiliudehuanghun 2009-12-02 09:59
zozoh 写道
kjj 写道

不是说自己的不存在bug,自己的bug自己心里大概有数,学别人的就等着别人升级也升级bug

其实我挺同意这个观点的。 程序员就应该对自己的代码完全控制。
但是,现在 Nutz 已经不全是我的了,比如,这次发布改的几个函数,已经被社区的人提醒了。
而且现在的接口和设计融合了很多人的意见和想法,
我现在慢慢感觉到这个框架已经快不属于我了,我还能做的,就是尽力多发现点 bug,写写文档啥的。


很赞赏zozoh的这种做事态度,程序员是应该对自己的代码完全控制,但是一旦选择开源
就不能这样了。因为这时候代码已经不是你一个人的事情了,很多人都参与了,并且也
很有可能出于对作者的信任运用到了具体的项目中了。这时候由着性子修改代码很有
可能给人家的项目造成灾难性后果。
28 楼 pzmayf 2009-12-01 19:59
这个一定要支持
27 楼 llj318 2009-12-01 10:15
国产吗,支持下
26 楼 zozoh 2009-12-01 00:05
kjj 写道

不是说自己的不存在bug,自己的bug自己心里大概有数,学别人的就等着别人升级也升级bug

其实我挺同意这个观点的。 程序员就应该对自己的代码完全控制。
但是,现在 Nutz 已经不全是我的了,比如,这次发布改的几个函数,已经被社区的人提醒了。
而且现在的接口和设计融合了很多人的意见和想法,
我现在慢慢感觉到这个框架已经快不属于我了,我还能做的,就是尽力多发现点 bug,写写文档啥的。

25 楼 ZHH2009 2009-11-30 23:57
treblesoftware 写道
ZHH2009 写道
treblesoftware 写道
caoyangx 写道
和douyu等框架比,优势在哪里?
这么多框架纷纷出炉,最难的就是用户,都是冒着风险使用、都是输不起的项目,如何打消用户的顾虑?


用多余不如用PLAY了。


首先得祝贺一下 zozoh ,希望Nutz能坚持下去越做越好。

再说点别的:
我也初步看了下Nutz,今天还特意去了Nutz的GoogleGroup看了看,
Douyu不会跟Nutz竞争,Douyu与Nutz在技术实现上差距太大。

Douyu与Play!框架在目前看来倒是存在竞争关系,
Play!框架的源码我大致看了一遍,
Play!更像是个胶水框架,颠覆得还不澈底。

Douyu的下一个目标之一就是干掉Play!框架。


呵呵,话说大了吧?DUOYU现在到底是什么样子我们还不知道,另外,PLAY的思想也是不一般的,而且是走的REST的路线。另外,PLAY毕竟一群人在维护,社区也小有规模了。


关于Douyu Nutz Play!的问题,我想还是不在这里说了(这样不太合适,也不礼貌),
我把Douyu Nutz Play!相关的讨论回复到这里了:
http://www.javaeye.com/topic/517796?page=28#1274462
24 楼 kjj 2009-11-30 23:40
lnaigg 写道
kjj 写道
倾向于自己写,mvc等,不管用谁的,都存在自身bug,学习,熟悉的问题!!

自己写能保证没bug?

不是说自己的不存在bug,自己的bug自己心里大概有数,学别人的就等着别人升级也升级bug
23 楼 treblesoftware 2009-11-30 21:35
ZHH2009 写道
treblesoftware 写道
caoyangx 写道
和douyu等框架比,优势在哪里?
这么多框架纷纷出炉,最难的就是用户,都是冒着风险使用、都是输不起的项目,如何打消用户的顾虑?


用多余不如用PLAY了。


首先得祝贺一下 zozoh ,希望Nutz能坚持下去越做越好。

再说点别的:
我也初步看了下Nutz,今天还特意去了Nutz的GoogleGroup看了看,
Douyu不会跟Nutz竞争,Douyu与Nutz在技术实现上差距太大。

Douyu与Play!框架在目前看来倒是存在竞争关系,
Play!框架的源码我大致看了一遍,
Play!更像是个胶水框架,颠覆得还不澈底。

Douyu的下一个目标之一就是干掉Play!框架。


呵呵,话说大了吧?DUOYU现在到底是什么样子我们还不知道,另外,PLAY的思想也是不一般的,而且是走的REST的路线。另外,PLAY毕竟一群人在维护,社区也小有规模了。
22 楼 iaimstar 2009-11-30 21:08
ZHH2009 写道
treblesoftware 写道
caoyangx 写道
和douyu等框架比,优势在哪里?
这么多框架纷纷出炉,最难的就是用户,都是冒着风险使用、都是输不起的项目,如何打消用户的顾虑?


用多余不如用PLAY了。


首先得祝贺一下 zozoh ,希望Nutz能坚持下去越做越好。

再说点别的:
我也初步看了下Nutz,今天还特意去了Nutz的GoogleGroup看了看,
Douyu不会跟Nutz竞争,Douyu与Nutz在技术实现上差距太大。

Douyu与Play!框架在目前看来倒是存在竞争关系,
Play!框架的源码我大致看了一遍,
Play!更像是个胶水框架,颠覆得还不澈底。

Douyu的下一个目标之一就是干掉Play!框架。

哥 们 你 加油 哇
21 楼 ZHH2009 2009-11-30 20:58
treblesoftware 写道
caoyangx 写道
和douyu等框架比,优势在哪里?
这么多框架纷纷出炉,最难的就是用户,都是冒着风险使用、都是输不起的项目,如何打消用户的顾虑?


用多余不如用PLAY了。


首先得祝贺一下 zozoh ,希望Nutz能坚持下去越做越好。

再说点别的:
我也初步看了下Nutz,今天还特意去了Nutz的GoogleGroup看了看,
Douyu不会跟Nutz竞争,Douyu与Nutz在技术实现上差距太大。

Douyu与Play!框架在目前看来倒是存在竞争关系,
Play!框架的源码我大致看了一遍,
Play!更像是个胶水框架,颠覆得还不澈底。

Douyu的下一个目标之一就是干掉Play!框架。
20 楼 stone 2009-11-30 20:37
不说别的,看到这么多详细的文档,就觉得可以研究一下
19 楼 treblesoftware 2009-11-30 19:18
caoyangx 写道
和douyu等框架比,优势在哪里?
这么多框架纷纷出炉,最难的就是用户,都是冒着风险使用、都是输不起的项目,如何打消用户的顾虑?


用多余不如用PLAY了。
18 楼 zozoh 2009-11-30 17:29
JustinCheng 写道
我已经在项目中使用,感觉不错,只要文档丰富,代码生成器有了,就更好了


如果你能给出一点介绍,具体你在项目中怎么使用的,以及你觉得文档哪些方面还不完善?你希望代码生成器能替你完成哪些操作? 我想这些信息对我们很重要。

我们现在正在整理文档,以及准备编写代码生成器
17 楼 JustinCheng 2009-11-30 16:59
我已经在项目中使用,感觉不错,只要文档丰富,代码生成器有了,就更好了
16 楼 longer042 2009-11-30 15:58
这个 只是一种尝试 。。。。小小项目可以先玩玩 。。。大的你敢用?自从rails出来后 ,很多人就开始写。超级轻量的框架了。。。
15 楼 yhbngt 2009-11-30 15:01
期待能够更加成熟。
目前还真不敢用到项目中哦。
14 楼 chenlb 2009-11-30 14:03
不错,关注。。。

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • java_web项目mvc框架demo

    java_web项目mvc框架demo;java_web项目mvc框架demo;java_web项目mvc框架demo

  • 基于javaweb的电影院售票管理系统(java+servlet+jsp+jdbc+mysql)

    基于javaweb的电影院售票管理系统(java+servlet+jsp+jdbc+mysql) 运行环境 Java≥8、MySQL≥5.7、Tomcat≥8 开发工具 eclipse/idea/myeclipse/sts等均可配置运行 适用 课程设计,大作业,毕业设计,项目练习,学习演示等 功能说明

  • Java项目:JSP的电影院售票系统(含论文、任务书、中期检查表)

    这个项目是一个基于Servlet+JSP的电影院售票系统,分为管理员和会员两种角色。管理员权限包括:修改登录密码电影类别管理电影信息管理会员信息管理订单信息管理留言信息管理会员权限包括:会员注册会员登录浏览电影我的购物车我的订单留言板。

  • Java项目:电影院售票管理系统(java+Servlet+JSP+JDBC+Mysql)

    这个项目是一个基于Servlet+JSP的电影院售票系统,分为管理员和会员两种角色。管理员权限包括:修改登录密码 电影类别管理 电影信息管理 会员信息管理 订单信息管理 留言信息管理会员权限包括:会员注册 会员登录 浏览电影 我的购物车 我的订单 留言板1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境

  • JSP基于Javaweb学籍管理系

    本项目为后台管理系统; 管理员角色包含以下功能:登录、专业管理、班级管理、课程管理、学生学籍管理、学生成绩管理等功能。1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.数据库:MySql 5.7版本;6.是否Maven项目: 否;

  • 基于JSP实现的项目管理平台系统

    本系统基于JSP,SERVLET实现开发,前端采用layui框架实现,数据库采用MYSQL,开发工具采用IDEA或ECLIPSE。主要实现如下功能: 从管理员角度看: 用户登入系统后,可以修改管理员的密码。同时具有以下功能: 1、管理员可以管理具体项目信息。 2、管理员可以管理项目经费信息。 3、管理员可以管理项目资源信息。 4、管理员可以管理项目进度信息。 5、管理员可以管理项目成果信息。 部分展示功能如下:admin / admin http://localhost/login..

  • HttpServletRequest参数获取,HttpServletRequest详解

    --------------------------HttpServletRequest参数获取,HttpServletRequest详解--------------------------------- HttpServletRequest获取参数(重要) 1 HttpServletRequest获取参数方法 可以使用HttpServletRequest获取客户端的请求参数,相关方法如下:...

  • 基于SSM的开题报告-毕业论文-毕业设计-在线提交评阅管理系统的开发与设计 (javaweb-php-asp.netC#-j2ee)

    目录 1 概述 2 数据库表 3 关键代码 4 效果演示 1 概述 本系统主要使用JSP、Struts技术B/S结构,即Browser/Server(浏览器/服务器)结构对系统进行设计和开发。 《毕业论文管理系统》主要是针对学校涉及《毕业论文管理系统》平台的一系列相关工作的管理,本系统的建立使学校的管理更加规范化、系统化,查询手段更加便捷化。同时,《毕业论文管理系统》也是实现学校教学管理现代化和信息化的重要内容。 2 数据库表 表t _admin 管理员...

  • 基于idea-SSM班级管理系统(javaweb-php-asp.netC#-j2ee)包含学生日常信息管理学生会选举投票管理

    目录 0、效果展示 ​1、概述 2、搭建环境 3、数据表 ​4、后端代码示例 5、前端代码示例 0、效果展示 1、概述 在系统中,要求对不同的用户设置不同的权限,系统针对不同权限下的用户授予其对数据库进行操作,并限制该用户对数据库作超越权限的操作。这样使整个系统既快速、高效的为用户提供信息服务,同时又保证了系统的安全性。例如:学生以普通学生身份登陆系统,仅对学生相关的个人信息、 有查询的权限,部分模块有修改权限,以...

  • 基于idea-SSM的食品安全管理系统(javaweb-php-asp.netC#-j2ee)追溯溯源系统

    目录 0、效果展示 1、概述 2、搭建环境 3、数据表结构 ​4、后端代码示例 5、前端代码示例 0、效果展示 1、概述 2、搭建环境 本文以实现一个食品安全管理系统为目标,从环境搭建到编码实现全过程讲述 我们使用javaweb、J2EE来构建食品安全管理系统,环境使用最新版jdk和tomcat,配合mysql数据库 开发工具使用idea(也可以使用eclipse),数据库管...

  • MVC框架理解

    MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。 最经典就是Jsp(view) +Servlet(controller) + JavaBean(mode...

  • SSM框架英语在线学习考试网站四级六级八级等级考试职称考试自测托福TOEFL测试雅思IELTS-GRE(idea开发javaweb-javaee-j2ee-springboot)

    0、效果展示 1、概述 通过本系统,备考人员能够摒弃传统的学习方式,提高学习兴趣和学习质量;系统对录入数据的严格审核流程,确保了数据的真实性和可靠性,为备考人员充分准备考试提供方便的渠道;不同的用户,程度不同,分配题目的难度系数也不一样,通过本系统,用户能够认识到自己的水平,并逐步提高;通过本系统,用户可以在讨论区分享手头中现有的资料,对于抱有疑问的题目可以上传解惑,也可形成小组相互督促。 2、搭建环境 本文以实现一个线上英语在线学习考试网站为目标,从环境搭建到编码...

  • 基于SSM的超市企业进销存库存管理系统源码(javaweb-php-asp.netC#-j2ee)包含商品分类出库入库退货销售供应商客户员工的管理,以及库存盘存的数据统计

    目录 1 概述 2 数据库表 3 关键代码 4 效果演示 1 概述 一个功能简单,操作方便的商品销售系统可以大大的方便小型的企业管理人员对商品进行管理,提高企业管理的效率。 本系统包含:商品管理商品分类管理 出库管理 入库管理 退货管理 销售管理 供应商管理 客户管理 员工管理 以及库存统计和盘存统计 2 数据库表 表 admin管理员信息表 名称 类型 说明 userId ...

  • spring boot 重写requestServlet统一解密请求参数

    在做项目过程中,经常需要对传递的参数进行加解密操作,如果把加解密放到每个方法中,会很麻烦,也不统一,因为每个方法都要这部分代码。 所以可以重写request替换spring原来的request入口。达到参数在请求进入时就解密好,这样既不破环spring本身的特征,也能让其他开发人员无感知的情况下完成加解密操作, 好处不言而喻。直接看看代码吧: 统一给返回值加密可以看另外一篇博文:http:/

  • JAVA核心知识点--获取HttpServletRequest请求Body中的内容

    在实际开发过程中,经常需要从 HttpServletRequest 中读取HTTP请求的body内容,俗话说的好”好记性不如烂笔头“,特在此将其读取方法记录一下。 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import javax.servlet.Servle...

  • Java深入 - servlet和Spring的DispatcherServlet详解

    Tomcat是如何运行web项目的

  • public void doGet(HttpServletRequest request, HttpServletResponse response)

    #---------------------------------------------# # &amp;lt;aw:description&amp;gt;Template for Servlet&amp;lt;/aw:description&amp;gt; # &amp;lt;aw:version&amp;gt;1.1&amp;lt;/aw:version&amp;gt; # &amp;lt;aw:date&amp;gt;04/05/2003&amp;lt;/aw:dat...

Global site tag (gtag.js) - Google Analytics