极简风格Web架构,JSP Jdbc的二次复辟

开发 后端
本文介绍极简风格Web架构,JSP Jdbc的二次复辟,以及介绍为什么不继续用JSP,彻底的改代码不重启服务器?

对于演示原型,上午要下午给的快速交付,或者某些不知道到底一年有多少个人点进去的网站角落,或者极少数管理人员才用到的管理功能,在恨不能php,ror的时候,你会想起JSP Jdbc的温暖。

又或者你请到了只会写JSP和sql的极品,又想让他明天开始干活……

所以在SS3里另做了这个extreme-web风格示例?, 在简化到no config file的JSP Jdbc同时,仍然是个可堪一观的MVC,仍然基于亲爱的Spring.

View层:一个JSP

Web应用里,单纯的内容展示型场景占绝大多数。我们也单纯的在JSP的开始代码调用Model层的Service Bean查出所需内容。

一页到尾,不要再扯什么Struts2 Action,什么struts.xml.

内容展示时可以继续忍受旁人的鄙视,直接在页面中嵌入JSP显示代码;也可以将查询结果放入贯通两界的pageContext里,换用JSP2.0 EL和JSTL taglib来作展示。

Controller层:还是一个JSP

少量的用户提交内容的场景,就会来到这个代替Struts2 Action的JSP,由它来调用Model层的Service Bean,然后又redirect/forward回View层的JSP.如果顺手,可以用spring的DataBinder 将Request参数绑定到DTO.否则继续复古的用N多request.getParameter("foo")手工组合。

Model层:一个使用Spring JdbcTemplate的Pojo

为什么不继续用JSP,彻底的改代码不重启服务器?因为舍不得Spring的JdbcTemplate/DataSource/Transcation这一系列功能。

用Spring 2.5的@Service注册bean,就不用在applicationContext.xml定义bean了。

然后继续用@Transcational 定义事务,不再编写commit/rollback语句。

Spring的SimpleJdbcTemplate其实也挺好用的,顺手的话,可以将输入参数和ResultSet都直接反射到DTO上。

不顺手的话,用MapSqlParameterSource绑定DTO到输入参数,用ParameterizedRowMapper绑定ResultSet到DTO.  

除了上面JSP Jdbc几点,其他地方也简化退化了,比如maven的功能退化到jar管理,连接池直接用commons-dbcp定义不依赖应用服务器等等

【编辑推荐】

  1. 简单介绍JSP技术
  2. 需要掌握的十个JSP标签库
  3. JSP技术中表单数据存储的通用方法
  4. 详解JSP技术的方法
  5. 怎样学习JSP技术
责任编辑:佚名 来源: 中国IT实验室
相关推荐

2011-12-16 16:19:58

移动Web

2015-10-10 13:55:23

Xenlism Wil桌面Linux

2011-12-29 10:38:19

移动Web

2017-04-05 11:40:34

Min浏览器web噪音

2020-10-29 15:13:55

数字科技金融行业互联网

2015-09-23 11:06:35

114啦

2011-08-05 12:36:01

2017-03-24 21:26:26

代码架构Java

2021-01-31 18:28:13

二次元Python开发

2021-09-15 11:38:36

Hashmap二次算法列表

2021-09-15 15:50:46

hashmap算法软件开发

2016-12-06 10:07:01

锐捷网络

2014-05-04 13:47:39

锐捷网络极简网络

2019-04-30 13:09:30

苹果微软KOL

2022-03-11 22:52:29

调试版本编译器

2016-12-28 10:00:03

锐捷网络

2021-09-03 13:54:45

双重勒索勒索软件攻击

2018-07-13 05:40:06

数据中心运维可视化

2021-10-22 08:21:27

CSS 技巧文字二次加粗
点赞
收藏

51CTO技术栈公众号