- 浏览: 518873 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (299)
- Oracle(pl/sql_Erp_Pro*C) (69)
- 设计模式 (4)
- spring (23)
- ext (17)
- apache开源项目应用 (4)
- jquery (16)
- 生活琐事 (8)
- 下载资源 (23)
- mysql (2)
- Eclipse使用积累 (5)
- 报表类(报表/图表) (13)
- php (4)
- Web多彩文本框 (3)
- json (4)
- jqgrid (2)
- ant (2)
- java算法积累 (8)
- EL表达式/JSTL (4)
- poi (3)
- gwt (2)
- 爬网第一步 (2)
- javascript (17)
- Javaweb (8)
- tomcat (1)
- flex (1)
- Java&DB (3)
- J2SE (7)
- linux (3)
- 数据结构 (1)
- dot net (5)
- struts (1)
- ibatis (1)
- log4j (1)
- 项目管理 (1)
- Java native interface(jni,jacob......) (5)
- applet (1)
- VB.net/C#.net/JNI (20)
- css (1)
- Sqlite (1)
- servlet (1)
- REST (1)
最新评论
-
wenhurena:
能不能给一下解压密码roki.work.2017@gmail. ...
Ebs解体新書と学習資料1 -
liutao1600:
楼主写的太好了,每天学习~~
Spring_MVC(6)测试 -
liutao1600:
太好了,每天学习你的文章~~~
Spring_MVC(3)表单页面处理 -
liutao1600:
学习了,太好了
Spring_MVC(2)控制层处理 -
liutao1600:
学习了~~~
Spring_MVC(1)构建简单web应用
- /**
- * 2010-1-23
- */
- package org.zlex.spring.service;
- /**
- *
- * @author <a href="mailto:zlex.dongliang@gmail.com">梁栋</a>
- * @version 1.0
- * @since 1.0
- */
- public interface AccountService {
- /**
- * 验证用户身份
- *
- * @param username
- * @param password
- * @return
- */
- boolean verify(String username, String password);
- }
/** * 2010-1-23 */ package org.zlex.spring.service; /** * * @author <a href="mailto:zlex.dongliang@gmail.com">梁栋</a> * @version 1.0 * @since 1.0 */ public interface AccountService { /** * 验证用户身份 * * @param username * @param password * @return */ boolean verify(String username, String password); }
接口不需要任何Spring注解相关的东西,它就是一个简单的接口!
重要的部分在于实现层,如下所示:
AccountServiceImpl.java
- /**
- * 2010-1-23
- */
- package org.zlex.spring.service.impl;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import org.zlex.spring.dao.AccountDao;
- import org.zlex.spring.domain.Account;
- import org.zlex.spring.service.AccountService;
- /**
- *
- * @author <a href="mailto:zlex.dongliang@gmail.com">梁栋</a>
- * @version 1.0
- * @since 1.0
- */
- @Service
- @Transactional
- public class AccountServiceImpl implements AccountService {
- @Autowired
- private AccountDao accountDao;
- /*
- * (non-Javadoc)
- *
- * @see org.zlex.spring.service.AccountService#verify(java.lang.String,
- * java.lang.String)
- */
- @Override
- public boolean verify(String username, String password) {
- Account account = accountDao.read(username);
- if (password.equals(account.getPassword())) {
- return true;
- } else {
- return false;
- }
- }
- }
/** * 2010-1-23 */ package org.zlex.spring.service.impl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.zlex.spring.dao.AccountDao; import org.zlex.spring.domain.Account; import org.zlex.spring.service.AccountService; /** * * @author <a href="mailto:zlex.dongliang@gmail.com">梁栋</a> * @version 1.0 * @since 1.0 */ @Service @Transactional public class AccountServiceImpl implements AccountService { @Autowired private AccountDao accountDao; /* * (non-Javadoc) * * @see org.zlex.spring.service.AccountService#verify(java.lang.String, * java.lang.String) */ @Override public boolean verify(String username, String password) { Account account = accountDao.read(username); if (password.equals(account.getPassword())) { return true; } else { return false; } } }
注意以下内容:
@Service @Transactional
注解@Service用于标识这是一个Service层实现,@Transactional用于控制事务,将事务定位在业务层,这是非常务实的做法!
接下来,我们来看持久层:AccountDao和AccountDaoImpl类
AccountDao.java
- /**
- * 2010-1-23
- */
- package org.zlex.spring.dao;
- import org.zlex.spring.domain.Account;
- /**
- *
- * @author <a href="mailto:zlex.dongliang@gmail.com">梁栋</a>
- * @version 1.0
- * @since 1.0
- */
- public interface AccountDao {
- /**
- * 读取用户信息
- *
- * @param username
- * @return
- */
- Account read(String username);
- }
/** * 2010-1-23 */ package org.zlex.spring.dao; import org.zlex.spring.domain.Account; /** * * @author <a href="mailto:zlex.dongliang@gmail.com">梁栋</a> * @version 1.0 * @since 1.0 */ public interface AccountDao { /** * 读取用户信息 * * @param username * @return */ Account read(String username); }
这个接口就是简单的数据提取,无需任何Spring注解有关的东西!
再看其实现类:
AccountDaoImpl.java
- /**
- * 2010-1-23
- */
- package org.zlex.spring.dao.impl;
- import org.springframework.stereotype.Repository;
- import org.zlex.spring.dao.AccountDao;
- import org.zlex.spring.domain.Account;
- /**
- *
- * @author <a href="mailto:zlex.dongliang@gmail.com">梁栋</a>
- * @version 1.0
- * @since 1.0
- */
- @Repository
- public class AccountDaoImpl implements AccountDao {
- /* (non-Javadoc)
- * @see org.zlex.spring.dao.AccountDao#read(java.lang.String)
- */
- @Override
- public Account read(String username) {
- return new Account(username,"wolf");
- }
- }
/** * 2010-1-23 */ package org.zlex.spring.dao.impl; import org.springframework.stereotype.Repository; import org.zlex.spring.dao.AccountDao; import org.zlex.spring.domain.Account; /** * * @author <a href="mailto:zlex.dongliang@gmail.com">梁栋</a> * @version 1.0 * @since 1.0 */ @Repository public class AccountDaoImpl implements AccountDao { /* (non-Javadoc) * @see org.zlex.spring.dao.AccountDao#read(java.lang.String) */ @Override public Account read(String username) { return new Account(username,"wolf"); } }
这里只需要注意注解:
@Repository
意为持久层,Dao实现这层我没有过于细致的介绍通过注解调用ORM或是JDBC来完成实现,这些内容后续细述!
这里我们没有提到注解@Component,共有4种“组件”式注解:
引用
@Component:可装载组件
@Repository:持久层组件
@Service:服务层组件
@Controller:控制层组件
这样spring容器就完成了控制层、业务层和持久层的构建。
启动应用,访问http://localhost:8080/spring/account.do?username=snow&password=wolf
观察控制台,如果得到包含“true”的输出,本次构建就成功了!
- Demo.rar (4.7 MB)
- 下载次数: 107
评论
2 楼
liutao1600
2013-05-07
学习了~~~
1 楼
tamsiuloong
2010-06-28
@Component:可装载组件
@Repository:持久层组件
@Service:服务层组件
@Controller:控制层组件
原来是这样啊,我到现在也不太接受注解的方式。可能是对他的陌生,也可能是喜欢pojo
@Repository:持久层组件
@Service:服务层组件
@Controller:控制层组件
原来是这样啊,我到现在也不太接受注解的方式。可能是对他的陌生,也可能是喜欢pojo
发表评论
-
cronExpression
2010-08-30 17:57 1188一个Cron-表达式是一个由六至七个字段组成由空格分隔的 ... -
spring任务调度(task)
2010-08-23 13:24 2849spring 任务调度总结参考资料http://www.ibm ... -
spring 任务配置
2010-08-23 10:45 1202xml 代码 <bean id="i ... -
spring3.0注解式声明
2010-08-19 17:39 4372从spring2.5开始,annotation结合BeanPo ... -
Spring Roo 自动化集成开发工具
2010-08-04 14:54 2247Roo是一种 Spring 开发的辅助工具,使用命令行操作来生 ... -
spring3.0学习
2010-08-03 16:24 858https://src.springframework.org ... -
Spring mvc 转发、重定向
2010-07-28 16:53 2406spring控制器最后返回一个ModelAndView( ... -
spring api download
2010-07-28 08:43 1179在网上找了好多,都下不下来,要不就是需要注册登录什么的,才能下 ... -
Spring uploadFile
2010-05-02 20:45 2232先让我们来看一段摘自《Spring 2.5 Referen ... -
Spring_MVC(6)测试
2010-04-24 18:48 3725这里将用到以下几个包: 引用 aopalliance-1 ... -
Spring_MVC(5)业务层处理
2010-04-24 18:47 1984这里将用到以下几个包: 引用 aopalliance-1 ... -
Spring_MVC(4)持久层处理
2010-04-24 18:45 1201这里将用到以下几个包: 引用 aopalliance-1 ... -
Spring_MVC(3)表单页面处理
2010-04-24 18:43 3039// 跳转到用户信息页面 ... -
Spring_MVC(2)控制层处理
2010-04-24 18:42 1694言归正传,研究一下注解下的控制层。 我习惯于使用JSTL展示页 ... -
spring实现文件上传
2010-04-24 15:15 1620Spring由内置的multipart支持web应用中的文件上 ... -
Spring MVC:使用InternalResourceViewResolver视图解析器
2010-02-24 09:14 2049参考:Sping 2.0.8\docs\MVC-step-by ... -
ibatis+spring控制事务配置
2009-04-05 10:25 1923<bean id="dataSource&qu ... -
转:spring事务控制配置实例
2009-04-03 10:47 3360Spring声明式事务配置的几种方法 在Spring中进 ... -
spring+ibatis+struts事务控制配置
2009-04-03 10:38 1558<?xml version="1.0" ... -
spring+ibatis+struts配置问题
2009-04-01 14:48 1127以下web.xml配置 <?xml version=&q ...
相关推荐
总之,Spring_MVC 3.0提供了一套完整且高效的Web应用程序开发框架,通过其丰富的接口和组件,开发者可以轻松地构建出高性能、可维护的应用。学习和掌握Spring_MVC的核心概念和实践技巧,对于提升开发效率和代码质量...
Spring MVC 是一个基于Java的轻量级Web应用框架,它是Spring框架的重要组成部分,主要用于构建控制器层,实现模型-视图-控制器(MVC)的设计模式。这个“spring_mvc.zip”压缩包很可能是为了帮助初学者快速入门...
### Spring Web MVC 框架核心知识点解析 #### 一、Spring Web MVC 概述 - **Spring Web MVC** 是...通过上述内容的学习,可以全面掌握Spring Web MVC框架的核心开发知识,为构建高质量的Web应用程序打下坚实的基础。
Spring MVC 是 Spring 框架的一个模块,专为构建 Web 应用程序提供了一种模型-视图-控制器(MVC)架构。它简化了Java Web应用开发,将业务逻辑、数据处理和用户界面分离,使得开发者可以更专注于业务逻辑,而无需...
Spring MVC是Spring框架的一个重要组件,用于构建可伸缩、高性能的Web应用程序。它采用了Model-View-Controller(MVC)设计模式,分离了业务逻辑、数据展示和用户交互,使得开发更模块化,易于维护。 描述中提到的...
Spring MVC是Spring框架的一个核心组件,主要用于构建Web应用程序。这个资源可能包含了从基础到进阶的Spring MVC应用开发知识,以及朱冰(可能是作者或讲师)对Spring MVC的理解和实践经验。 描述中的"朱冰-...
Spring MVC是Spring框架的一个模块,专门用于构建Web应用程序,提供模型-视图-控制器(MVC)架构模式的支持,而JSTL则是一种标准的标签库,用于简化JSP页面的编程。 在Java Web项目中引入Spring MVC框架,首先需要...
Spring MVC 是一个基于 Spring 框架的模型-视图-控制器(MVC)架构,它简化了在 Java Web 应用中的开发工作。在"spring_mvc.zip"中,我们可以看到一个针对学生管理系统的实例代码,这将帮助我们深入理解如何使用 ...
Spring MVC WebFlow是一个强大的工具,用于构建高度交互式的、流程驱动的Web应用程序。它扩展了Spring MVC框架,提供了对复杂用户界面流程管理的支持。在这个案例中,我们将深入探讨Spring MVC WebFlow的XML配置版本...
《Spring_MVC_3.0实战指南》是一本专注于Spring MVC 3.0技术的实践教程,旨在帮助开发者深入...通过阅读并实践书中的示例,你可以更好地理解和应用Spring MVC的强大功能,为你的项目构建出高效、稳定的Web应用程序。
Spring MVC 是一个强大的Java Web开发框架,它是Spring框架的一部分,专注于构建Web应用程序的后端控制器。这个压缩包 "_Spring_mvc.zip" 内含的可能是某个课程或项目中的源代码,用于教学或实践如何使用Spring MVC...
Spring MVC 是一个强大的Java web应用程序开发框架,它遵循Model-View-Controller(MVC)设计模式,用于构建可维护性和可扩展性高的企业级应用。本实战教程将深入讲解Spring MVC的关键组件和工作流程,帮助开发者更...
Spring MVC作为Spring框架的一部分,是用于构建Web应用程序的模型-视图-控制器(MVC)架构,而MyBatis则是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。这两者的结合,为企业级应用提供了高效且...
Spring MVC 是一个基于Java的轻量级Web应用框架,它是Spring框架的重要组成部分,主要用于处理Web应用的模型-视图-控制器(MVC)结构。在本文中,我们将深入探讨Spring MVC的基本概念、核心组件以及如何实现一个简单...
Spring Web MVC 是一个功能强大且灵活的Web框架,它不仅能够帮助开发者构建高质量的Web应用程序,还能够与其他Spring生态系统中的组件无缝集成。通过本教程的学习,你可以系统地掌握Spring Web MVC的核心知识和技术...
Spring MVC 是一个基于Java的轻量级Web应用框架,它是Spring框架的重要组成部分,主要用于构建Web应用程序的后端控制器。在Spring MVC中,开发者可以利用模型-视图-控制器(MVC)架构模式来分离业务逻辑、数据处理和...
Spring MVC 是一个基于 Java 的轻量级 Web 开发框架,它是 Spring 框架的一部分,专门用于构建 MVC(Model-View-Controller)架构的 Web 应用程序。本压缩包文件"spring_mvc_response"可能包含了一系列关于 Spring ...
通过这个“spring_mvc框架搭建demo”,你可以学习到如何从零开始构建一个简单的Spring MVC应用,理解每个部分的作用,并逐步掌握Spring MVC的核心概念和技术。这不仅有助于你提升技能,也有助于你在实际项目中灵活...
首先,Spring框架提供了一套构建Web应用程序的全功能MVC模块,该模块支持多种视图技术,包括但不限于JSP、Velocity、Tiles、iText和POI。Spring MVC的灵活性表现在它不会强迫使用特定的视图技术,开发者可以根据实际...