写点什么

WEB4J:另类的 Java Web 应用框架

  • 2009-05-07
  • 本文字数:590 字

    阅读完需:约 2 分钟

WEB4J 是个极度简化、特色十足、一站式的 Java Web 框架。WEB4J 框架的创建者 John O’Hanley 说到:WEB4J 在提升 Java 开发生产力的同时又消除了各种痛苦,因为其非常精简且能显著地加快应用开发的速度。

根据其站点上的说明,WEB4J 具有如下特性:

  • 拥抱约定优于配置(类似于 Rails)
  • 数据为王,而不是代码
  • 不会强迫开发者穿新鞋走老路
  • 不依赖于 JavaScript、客户化的 XML 和注解以及对象关系映射
  • 不会对你所编写的类施加线程安全的约束
  • 可以用普通的 HTML 编写表单

WEB4J 最吸引人的一个地方就是它可以将 SQL 放到纯文本文件中且游离于代码之外,之后就可以在代码中通过特殊的对象引用这些 SQL,这样 DAO 类就变得非常紧凑了。

WEB4J 个头很小,一共才 88 个类,而 Rails 中却有 346 个类、Struts 中有 720 个类、Spring 中有 2400 多个类。John 说 WEB4J 的学习要比其他框架容易的多。

其站点对 WEB4J 的薄弱之处也毫不掩饰:

  • 没有用户界面 widgets 库
  • 未提供对 AJAX、Web Services 及依赖注入的内置支持
  • 支持 JSP/JSTL,但却没有像 Velocity 那样的标记库
  • 对之前版本的兼容性还有些问题

去年 YouTube 上有个挺逗的视频谈到了 WEB4J 框架。该视频说的是有两个程序员发现了 WEB4J 框架后就用其进行开发,从而摆脱了传统的 J2EE 项目所遇到的诸多痛苦。

WEB4J 是开源的,基于 BSD 协议,同时在其分发包中含有一个示例项目。

查看英文原文: WEB4J: Contrarian Web App Development for Java

2009-05-07 22:383760
用户头像

发布了 88 篇内容, 共 263.1 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

运维训练营第十一课作业

好吃不贵

怎么用vscode创建工程

eng八戒

ide vscode koa

无线配置多一个路由器作为家庭wifi的无线热点?

eng八戒

家庭网络 热点

Portraiture4人像智能磨皮插件下载亲测可用

茶色酒

Portraiture2023 Portraiture

如何让你的架构设计应用做到高内聚、低耦合?

风铃架构日知录

Java 程序人生 后端 架构设计 后端开发

用 SwiftUI 实现 AI 聊天对话 app - iChatGPT

37手游iOS技术运营团队

ios SwiftUI openai ChatGPT

分享 7 个不错的 AI 工具

devpoint

人工智能 AI openai

【Redis技术探索】「数据迁移实战」手把手教你如何实现在线+离线模式进行迁移Redis数据实战指南(在线同步数据)

洛神灬殇

redis 数据同步 1月日更 数据同步工具 RedisShake

盘点毫末智行AI DAY:智算中心成立、六大闭环、MANA五大模型...助力毫末智能驾驶产品快速迭代

科技大数据

极客时间运维进阶训练营第十周作业

老曹

毫末智行稳健收官2022“三大战役” 火力全开打响2023“四大战役”

科技大数据

智能汽车

HAOMO AI DAY速递:六大闭环、MANA五大模型助力毫末智能驾驶产品快速迭代

科技大数据

选购LED显示屏时需要注意8个技术参数

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

线上压测

agnostic

社交视频直播一对一交友APP源码之Android如何打包APP

山东布谷科技胡月

语音直播app开发

VSCODE 配置远程调试环境

eng八戒

ide vscode 服务器

使用 OpenAI ChatGPT 进行了编码尝试

devpoint

人工智能 openai ChatGPT

Guitar Pro2024最新免费版吉他打谱软件下载

茶色酒

Guitar Pro Guitar Pro8 guitar pro2023

TSDB助力井下位置服务

CnosDB

数据库 IoT 时序数据库 开源社区 infra

OpenTelemetry日志体系

骑牛上青山

Java 日志 log 调用链 OpenTelemetry

MySQL字符集和排序规则详解

C++后台开发

MySQL 数据库 中间件 后端开发 C++开发

追求技术极致 探索落地先机 毫末智行城市NOH公布未来产品规划

科技大数据

新能源汽车

元器件温度系数(ppm/℃)是什么?

不脱发的程序猿

元器件温度系数

《零基础学 Python(2023 版)》学习笔记 Day0

IT蜗壳-Tango

Python编程 IT蜗壳教学

尝试阅读理解一份linux shell脚本

eng八戒

bash Shell Linux Kenel 脚本

使用 App Store Connect API 批量创建内购商品

37手游iOS技术运营团队

AppleParty 苹果派 App Store Connect API 批量创建内购IAP 批量上传 IAP

中国自动驾驶行业最大智算中心亮相 毫末顾维灏:毫末车端感知架构实现跨代升级

科技大数据

汽车

8 个很酷的 GitHub 技巧

devpoint

GitHub vscode 开发技巧

Button(按钮)与ImageButton(图像按钮)

芯动大师

Android Studio button imagebutton

直播交友一对一视频语音APP项目系统架构和模式分析(成品1对1源码)

山东布谷科技胡月

视频语音直播app开发 语音直播交友系统搭建 社交app开发 1v1语音系统搭建 视频社交APP开发

2023-01-07:hyper/docker-registry-web是registry的web界面工具之一。请问部署在k3s中,yaml如何写?

福大大架构师每日一题

云原生 k8s k3s 福大大

WEB4J:另类的Java Web应用框架_Java_Matthew Bass_InfoQ精选文章