快速业务通道

如何使用Eclipse CNF的Saveable Protocol实现对View的保存 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-13
;sessionFactory"/> </beans>

运行 UserHibernateWithoutTransManagerService,程序正确执行,并得到类似于 UserJdbcWithoutTransManagerService 的执行结果,这说明 Hibernate 在 Spring 中,在没 有事务管理器的情况下,依然可以正常地进行数据的访问。

Spring事务管理高级应用难点剖析,第1部分(4)

时间:2012-04-26 IBM 陈雄华

应用分层的迷惑

Web、 Service 及 DAO 三层划分就像西方国家的立法、行政、司法三权分立一样被奉为金 科玉律,甚至有开发人员认为如果要使用 Spring 的事务管理就一定先要进行三层的划分。这 个看似荒唐的论调在开发人员中颇有市场。更有甚者,认为每层必须先定义一个接口,然后再 定义一个实现类。其结果是:一个很简单的功能,也至少需要 3 个接口,3 个类,再加上视图 层的 JSP 和 JS 等,打牌都可以转上两桌了,这种误解贻害不浅。

对将“面向接口编程”奉为圭臬,认为放之四海而皆准的论调,笔者深不以为然。是的,“ 面向接口编程”是 Martin Fowler,Rod Johnson 这些大师提倡的行事原则。如果拿这条原则 去开发架构,开发产品,怎么强调都不为过。但是,对于我们一般的开发人员来说,做的最多 的是普通工程项目,往往最多的只是一些对数据库增、删、查、改的功能。此时,“面向接口 编程”除了带来更多的类文件外,看不到更多其它的好处。

Spring 框架提供的所有附加的好处(AOP、注解增强、注解 MVC 等)唯一的前提就是让 POJO 的类变成一个受 Spring 容器管理的 Bean,除此以外没有其它任何的要求。下面的实例 用一个 POJO 完成所有的功能,既是 Controller,又是 Service,还是 DAO:

清单 5. MixLayerUserService.java

package user.mixlayer; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; //①.将POJO类通过注解变成Spring MVC的Controller @Controller public class MixLayerUserService {    //②.自动注入JdbcTemplate    @Autowired    private JdbcTemplate jdbcTemplate;    //③.通过Spring MVC注解映URL请求    @RequestMapping("/logon.do")    public String logon(String userName,String password){      if(isRightUser(userName,password)){        String sql = "UPDATE t_user u SET u.score = u.score + ?  WHERE user_name =?";        jdbcTemplate.update(sql,20,userName);        return "success";      }else{        return "fail";      }    }    private boolean isRightUser(String userName,String password){      //do sth...      return true;    } }

Spring事务管理高级应用难点剖析,第1部分(5)

时间:2012-04-26 IBM 陈雄华

通过 @Controller 注解将 MixLayerUserService 变成 Web 层的 Controller,同时也是 Service 层的服务类。此外,由于直接使用 JdbcTemplate 访问数据,所以 MixLayerUserService 还是一个 DAO。来看一下对应的 Spring 配置文件:

清单 6.applicationContext.xml

<?xml version="1.0" encoding="UTF-8" ?> <beans xmlns="http://www.springframework.org/schema/beans"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号