正在写一个 open source 的 web framework
正在写一个 open source 的 web framework,打算写好后放到 sourceforge 上。
主要功能:
可以用 junit 进行单元测试,测试时可以看到结果 html 页面,提高开发效率。
jdbc 自动资源管理。简化的 o/r mapping, select/insert 用 o/r mapping, update/delete 不用 o/r mapping. 写 sql 但不用调用 connection, statement, resultset.
transaction 简化到 request/task 级别。ejb 和 spring 都把 transaction 定义到函数级别,是非常不必要的麻烦。
用 velocity 做 view ,方便排版。
内置的权限管理,权限控制到 request/url 级别。这样不用每个项目做一个权限模块了。
内置的定时任务管理。因为在我看来, web application = web page + batch task.
目前我列出的 20 多个 items 已经完成一半。
请各位多指教!!!
问题点数:200、回复次数:43Top
1 楼Ryo_Hazuki(困了)回复于 2006-04-24 23:07:21 得分 10
好东西Top
2 楼wuyg(平平)回复于 2006-04-25 01:07:18 得分 10
不错的想法,如果做得好,应该在小项目上很有前途,希望你能注意:
这个framework本身的可调试性,
这个framework本身的可调整性,
至于测试结果输出到html页面我认为没有必要。Top
3 楼TinyJimmy(Jimmy)回复于 2006-04-25 07:12:55 得分 10
好像是想做一个平台吧Top
4 楼xb8254(想换不换)回复于 2006-04-25 17:56:54 得分 10
支持Top
5 楼cancer2000(夜之哀伤)回复于 2006-04-25 18:40:19 得分 10
你的这个web framework是富客户端的吗?是否用到AJAX相关技术?Top
6 楼seu_cose(专注于通信技术)回复于 2006-04-26 17:10:15 得分 10
up,在sourceforge上注册后地址贴出来...大家看看Top
7 楼zhlmmc(zhlmmc)回复于 2006-04-26 22:11:49 得分 10
期待!不过功能太杂了Top
8 楼jacklondon(jacklondon)回复于 2006-04-26 23:52:44 得分 0
to wuyg,
"至于测试结果输出到html页面我认为没有必要",就是不用启动 web server 就可以看到访问某个 url 的结果网页,很多人都想要这个功能。这是我写这个 framework 的最大目的,大哥!Top
9 楼zclgod(春风化雷)回复于 2006-04-30 12:26:56 得分 10
支持Top
10 楼zhh1981(**的猪头)回复于 2006-04-30 13:36:04 得分 0
jfTop
11 楼super_zzw(之支吾)回复于 2006-04-30 13:37:55 得分 10
鼓励一下, 不过不要期望太高Top
12 楼sonyejin(Neverwinter Nights 2)回复于 2006-04-30 15:18:52 得分 10
写框架,不简单啊,支持一下Top
13 楼wangxian()回复于 2006-05-08 11:03:55 得分 10
我也写了个简单的,http://wang.trulytech.com 谢谢Top
14 楼timerri()回复于 2006-05-08 11:48:18 得分 10
看来写框架的人不少啊。我也写了个。
大体上来说支持request-〉object映射.result<->object相互映射。action(可以理解为servlet)与jsp文件路径统一。完全annotation配置等。
主要目的就是分开程序员与美工的工作,让美工尽量少的学习额外的标记就能独立开发view层。程序员也就能够专心做逻辑处理了。
structs最大的问题就是美工必须懂structs的标记才能做界面。这不是难为人家么!Top
15 楼timerri()回复于 2006-05-08 11:49:35 得分 10
勘误:上面的result<->object
应该是:resultset<->objectTop
16 楼jacklondon(jacklondon)回复于 2006-05-08 15:46:08 得分 0
我不用 jsp, jsp tag 也不容易排版。Top
17 楼dlxu(脱离纯粹Coding阶段)回复于 2006-05-08 23:39:23 得分 10
做个类似于Asp.Net的就OK了Top
18 楼CAYU(中原)回复于 2006-05-09 00:48:56 得分 10
我开是用jsp 的时候也自己写了一个 web framework ,但后来看到webwork2 几乎都已经完成我想要的了。就把页面标签部分都用了webwork2的。(页面上不要到处是标签)
连接数据库不方便,就自己写了个数据库持久层,但我发现 hibernate3 就是我要要的。
就数据库改用hibernate3 了。(支持多数据很重要)
应用多了,类之间的管理不方便,就自己写了个简单的类加载管理器。这次又看到了springframework,又改了。(配置要灵活,同时要简单)
最后能做的就象 Delphi 的vcl 做些权限啊,什么的控件包...
个人的力量还是有限啊!
不过这个过程中可以学到很多东西。
你用velocity 做view 调试的时候使用 数据模板方式才能生成html预览吧?
但数据模板方式在实际应用中很不方便。当然界面已经定了的情况出外。
如果用 服务器生成页面方式又和jsp没什么区别了。
而且推荐用freemarker.
继续努力吧
Top
19 楼jacklondon(jacklondon)回复于 2006-05-09 22:41:09 得分 0
用velocity 做view 的时候数据模板文件都是 HTML, 可以很方便编辑排版。在开发调试和最终运行都是这样。
Unit test 打算用 Jetty + Apache Jakarta Cactus, 这样比运行正规的 J2EE server 会快很多。Unit test 需要的启动和停止快的 J2EE server。
按照 J2EE without EJB 中的说法,其实 J2EE web 调试(不包含 EJB) 只需要 new 出来 HttpServletRequest, HttpServletResponse, HttpSession, ServletConfig, ServletContent, Cookie 就可以很容易进行 Unit test,但是目前找不到已有的 java 类库可以做到这一点。
后期我打算自己写这几个接口的测试子类,这样就可以甩掉 Jetty 了。估计这中间有点难度。Top
20 楼jacklondon(jacklondon)回复于 2006-05-09 22:47:43 得分 0
感谢 CAYU(中原) 的鼓励,不过似乎 CAYU(中原) 不了解 Velocity ,使用 Velocity 整个项目中只有一个控制 servlet(Struts 项目也是这样的), view 只是纯粹的 HTML 加上 velocity 标签语法,而 velocity 设计的宗旨是简单,只要能够完成往 HTML 中增加动态内容就可以,velocity 相当于简化版的 BASIC。考虑到大多数项目都会使用一定数量的新手,这种技术很容易被人掌握。Top
21 楼cuij7718(沸腾的音乐 http://www.blogjava.net/sunfruit)回复于 2006-05-10 12:05:34 得分 10
支持Top
22 楼zclgod(春风化雷)回复于 2006-05-11 09:33:41 得分 10
关注Top
23 楼jacklondon(jacklondon)回复于 2006-05-11 23:25:03 得分 0
已经在 sourceforge 上登记,等待他们批准Top
24 楼jacklondon(jacklondon)回复于 2006-05-26 09:54:00 得分 0
已经在 sourceforge 上面发布。网址是:
http://sourceforge.net/projects/velocityweb/
欢迎大家捧场!目前是 0.1 版本。Top
25 楼Tony_OY(欧阳权)回复于 2006-05-26 13:26:35 得分 10
一直以来有个想法,怎么样能把java的WEB开发简化,在view表现层发费了太多的时间。导致不少企业对此不敢太多的采用。Top
26 楼jacklondon(jacklondon)回复于 2006-05-26 17:47:52 得分 0
给大家看看这里面的 dao 写法:
public User getUserByLoginName(String userLoginName) {
String sql = "select * from user where login_name = ?";
List paraList = new LinkedList();
paraList.add(userLoginName);
User user = (User) this.queryBean(sql, paraList.toArray(), User.class);
return user;
}
public List getAllUsers() {
String sql = "select * from user t order by t.user_full_name";
List userList = this.queryBeanList(sql, null, User.class);
return userList;
}
我自认为比 spring 的 JDBC template 写得更好用,代码也更简洁。同样也是 PrepareStatement 和 ResultSet 自动关闭, spring 用匿名类回调是一个不好的做法。Top
27 楼boydream(show me the money!)回复于 2006-05-31 01:06:35 得分 0
加油!支持一下!Top
28 楼wmzsl(王明哲)回复于 2006-05-31 08:58:27 得分 10
加油哈支持Top
29 楼quanquan626(圈圈)回复于 2006-06-02 16:19:36 得分 0
upTop
30 楼treeroot(旗鲁特)回复于 2006-06-02 17:28:09 得分 0
国内有开源组织吗?Top
31 楼realdreamer(楼主英明,贫僧久仰大名,特来拜见)回复于 2006-06-04 10:15:20 得分 0
支持, 顶, markTop
32 楼jacklondon(jacklondon)回复于 2006-06-04 23:53:12 得分 0
国内?应该有吧,不知道。
放在国外影响力大一点。Top
33 楼yyjzsl(阿木)回复于 2006-06-05 00:21:50 得分 0
slmyj1015@126.com
3qTop
34 楼chch1979(chch)回复于 2006-06-06 13:39:08 得分 0
WebPage是轻量级的、基于组件的、可视化的Web层开发框架。WebPage开放组件设计接口,可以自由开发能在WebPage中使用的组件,而且开发组件非常简单。WebPage能大大提高Web层的开发速度。WebPage基于MVC模式,重点解决View的部分,达到可以可视化开发和最大限度的复用。有人戏称为“图形化的Struts”。
详情:http://www.webpagev.com/
Top
35 楼jacklondon(jacklondon)回复于 2006-06-06 14:46:55 得分 0
版本升级,增加了不用启动 web server 就进行 unit test, 并且看到最后的页面。Top
36 楼jacklondon(jacklondon)回复于 2006-06-12 10:12:40 得分 0
下载量已经达到 66 了。其中包含我自己的一个,目的是验证下载后的文件是否正常。Top
37 楼xxjnw(大象无形)回复于 2006-06-12 15:32:12 得分 0
支持一下,现在正在学习框架Top
38 楼csrcom(泥鳅)回复于 2006-06-16 13:17:32 得分 10
先鼓励一下
一个人能做一个开源的framework真的很佩服你啊。
说实在话,如果有了市场上面比较流行的 ORM,而且非常轻便,可定制的sql。自己再开发一套我觉得有点浪费时间啊,而且还需要一段很长的路子要走。
楼主如果有兴趣可以共同谋求更好的商业发展。当然不是搭建framework框架那么单纯了。Top
39 楼csrcom(泥鳅)回复于 2006-06-16 13:19:59 得分 0
webwork是一个非常好的框架,当然不是所有的open source framework框架拿来就可以用的,包括webwork,要看你如何使用、改造它。
Top
40 楼treeway(趣玩—Trek-Seeking My Way)回复于 2006-06-16 13:31:15 得分 0
support uTop
41 楼petertangh(水漾蓝冰)回复于 2006-06-16 15:20:19 得分 0
版本升级,增加了不用启动 web server 就进行 unit test, 并且看到最后的
这个是怎么做到的??
是换用了mock的方式还是直接写了一个实现类Top
42 楼jacklondon(jacklondon)回复于 2006-06-23 13:58:01 得分 0
我把 Spring 的 mock 改巴改巴就行了。
JNDI, HttpRequest, HttpResponse 都是。Top
43 楼nlhlx(胡)回复于 2006-07-03 22:57:46 得分 0
newxy(新坐标)技术大家看过吗?经比较,开发web运用比delphi开发桌面运用而快。
《newxy+struts WEB开发与delphi桌面开发相比,速度更快,能力更强》http://blog.csdn.net/nlhlx/archive/2006/06/12/791047.aspx
newxy(新坐标)技术网站:http://www.newxy.netTop




