文档章节

我对 Java Web框架 的一点见解

红薯
 红薯
发布于 2009/02/23 11:07
字数 433
阅读 9.5K
收藏 37

前天看到了 Apache Click 这个项目,有点感触。

很多 Java 的Web框架都在走一条错误的路线,花大量的工作在服务器端代码的封装,搞出N多模式,但是实际的开发量并没有减少,有时候反倒而会加大开发量,为什么呢?

实际开发 Web 网站你可能都有体会,做一个网站,不管是用什么语言开发的,最占用时间的、代码最多的地方其实是在页面的数据显示和UI上,真正服务器端需要的逻辑超级简单,无非就是查询、添加、修改和删除操作。而多数 Java 的Web框架却在做着舍本求末的工作,在页面层几乎无所作为,更严重的是让页面代码更加的复杂化,来迎合框架本身的需要。

Apache Click 也是一个Java语言的Web框架,它所采用的就是现在流行的惯例重于配置的思路,而 Apache Click 可以帮你简化很多页面上经常要用到的操作,例如 表单处理、日期选择、表格的排序、树状显示等等各种非常丰富的页面展示组件,还支持对Ajax的封装。

看看下面这个界面,是一个联系人列表,还可以根据各列进行排序以及分页显示等等

而这整块的内容只需要在页面中写一行 $table 即可,数据的处理在对应的Java类中列出,所有的排序、分页等操作都有 Apache Click 帮你完成了。

这才是 Web 框架应该干的事!!!

© 著作权归作者所有

红薯

红薯

粉丝 22301
博文 161
码字总数 88574
作品 8
深圳
产品经理
私信 提问
加载中

评论(24)

随意问
随意问
web项目又不是单纯的增删改查, 对于这种,压根就不需要后端代码。
九千里
九千里
html与各种浏览器的更新迭代速度,以及因此导致的兼容性问题,可能是各种WEB框架开发者对页面层无所作为的根本原因吧...毕竟是个烫手山芋...但是这两天用了下SpringBoot强烈推荐的thymeleaf模板,感觉挺不错的样子?但是觉得最适合的方式还是将数据写成接口给前端来渲染页面比较好...
null6
null6
如果能把C#上的EF的codefirst和Razor引入java就好了,看他们开发效率太高了,希望java能有一天实现C#那些高级的用法
seecheng
seecheng
正在用ADF,目测解决了红薯说的页面复杂度的问题!!
seecheng
seecheng

引用来自“虫虫”的评论

你听说过ADF吗?Oracle搞出来的怪物。我一直在琢磨谁鸡巴会用这玩意儿。结果是企业级应用确实有很多人在用这些东西做开发。。。
正在用ADF,目测解决了红薯说的页面复杂度的问题!!
红薯
红薯 博主

引用来自“疯狂燃烧的岁月”的评论

wabacus框架怎样

这个真不了解哦
wei-chan
wei-chan
wabacus框架怎样
simonzhd
simonzhd
说的很正确,服务器端的一般只需要读写数据库,而页面显示是否有特色往往决定一个网站的成败
詹波
詹波
有人试用过JFinal么? http://my.oschina.net/jfinal/blog/49676
自风
自风
这样子你让前端攻城师情何以堪。
微信公众号文章爬取之:微信自动化

本文转载自:陈文管的博客-微信公众号文章爬取之:微信自动化 本文内容详细介绍微信公众号历史文章自动化浏览脚本的实现,配合服务端对公众号文章数据爬取来实现微信公众号文章数据的采集。服...

崔庆才
2019/07/02
0
0
Grails 1.1 Beta 3 发布

Grails是一套用于快速Web应用开发的开源框架,它基于Groovy编程语言,并构建于Spring、Hibernate和其它标准Java框架之上,从而为大家带来一套能实现超高生产力的一站式框架。 1.1 Beta3的 Re...

红薯
2009/01/30
110
0
Web Beans 1.0.0.ALPHA1 版本发布

Web Beans为Java EE环境定义了一套服务,使Java EE的Web应用程序开发更容易。Web Beans层在现有的Java组件上增强了生命周期和互动模式,如JavaBeans和Enterprise Java Beans。 新版本下载地址...

红薯
2008/12/23
1K
1
OSGi 服务器 -- dm Server 2.0 M3 发布

dm Server 是一个完全模块化部署的,基于OSGi的Java服务器,为运行企业Java应用和Spring应用提供更加强大的灵活性和可靠性。SpringSource应用平台是构建在Spring、OSGi和Apache Tomcat之上的...

红薯
2009/07/15
494
0
Solaris 10 JDK 1.5 升级做 JDK 1.6

下载对应版本的 JDK for solaris ,我的就是:jdk-6u15-solaris-sparc.sh JDK 6 u 15 的下载地址: https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD......

范堡
2009/08/06
1.6K
1

没有更多内容

加载失败,请刷新页面

加载更多

host machine and virtual machine communication between the three kinds of connection

1.桥接birdge模式 将虚拟机IP与物理机IP设在一个网段上,此时虚拟机相当于一台网络中与本地物理机公用一个HUB的独立设备。网络中其他机器与虚拟机、本地物理机与虚拟机都可以双向通信。虚拟机...

欣欣向荣666
27分钟前
24
0
Centos7安装gitblit

Gitblit介绍 Gitblit是一款开源工具,使用Java编写,用于管理、查看及服务于Git版本库。 Gitblit两种安装包 Gitblit GO:内部集成了Jetty服务器,不需要再集成其他容器,使用简单方便。(本文...

yhb890430
33分钟前
39
0
Ubuntu 安装 Source Code Pro 字体

1、解压字体 $ tar -zxvf source-code-pro-2.030R-ro-1.050R-it.tar.gz 2、解压字体 $ sudo cp -r source-code-pro-2.030R-ro-1.050R-it/TTF/ /usr/share/fonts/truetype/source-code-pro......

张小渔
34分钟前
53
0
mongo Authentication failed记录

虽然用的管理员账号,但是还是出现了以下的错误: 主要看后面的错误信息: { "ok" : 0.0, "errmsg" : "Authentication failed.", "code" : 18, "codeName" : "AuthenticationFailed" } 在想管......

woshixin
46分钟前
70
0
PHP+jPaginate插件制作无刷新分页实例

jPaginate是一款动感滚动分页插件,它的表现形式是像分页的按钮一样,有意思的是这些按钮却可以左右滚动,可以通过单击或鼠标滑向点两侧的小箭头来控制按钮的左右滚动。 读取第一页数据: <d...

ymkjs1990
50分钟前
71
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部