Spring MVC 系列(二)——基于注解的开发
2018-01-25 16:34
309 查看
上一篇博客介绍了Spring
MVC的中的核心组件和工作流程,众所周知,实现同样的功能,相较于繁琐的配置文件而言,使用注解便简单高效的多。春季自2.0版本开始,陆续引入了一些注解用于简化Spring的开发本文就将介绍Spring
MVC常用注解以及使用场景。
@Controller
- > 控制层
@Service
- >业务层
@Repository
- >道层
@Component
- >仅仅表示一个组件(Bean),可以作用在任何层次。
春天通过监测一个豆是否包含注解以及注解类型,确定该豆是否有春天容器进行管理,如果包含春注解,春天便会自动创建相应的的BeanDefinition对象,并注册到的ApplicationContext中。这些类就成成了春天受管组件。当一个豆被自动检测到时,会根据那个扫描器的BeanNameGenerator策略生成它的bean的名称,自动纳入春容器的管辖范围。
Spring
MVC作为Spring框架的web MVC产品,常用的注解当然必不可少的@Controller
@RequstMapping
SpringMVC-servlet的配置文件中,对控制器声明时的名称属性,形如:@RequstMapping(“/
hello.do”),同样的通过BeanName映射方式访问控制器,这里也是这个用途,通过@RequstMapping(“/ hello.do”)中/ hello.do的值组成URL访问路径,例如:http://
localhost:8091 / springMVC / hello。做
如果在整个控制器类前加上@RequstMapping注解,则表明该控制器以此RequstMapping为标识,访问时,自然需要在方法的RequstMapping值前补充控制器的RequstMapping才可找到该控制器,再通过方法的RequstMapping值找到指定方法。
3,综合看来,@
RequstMapping注解的作用主要在于为控制器和控制器中的方法添加唯一标识,组成浏览器访问的URL地址,通过RequstMapping访问到指定控制器的指定方法。
如图1所示,首先添加注解相关罐
2,在用SpringMVC-servlet.xml中中配置,指定注解使用范围
[html] 查看纯文本
<!
- mvc的注解驱动 - >
<mvc:annotation-driven/>
<!-- 一旦有扫描器的定义mvc:annotation-driven不需要,扫描器已经有了注解驱动的功能 -->
<context:component-scan base-package="cn.itcast.springmvc"/>
<!-- 前缀+ viewName +后缀 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!-- webroot到某一指定的文件夹的路径 -->
<property name="prefix" value="/WEB-INF/jsp/"></property>
<!-- 视图名称的后缀 -->
<property name="suffix" value=".jsp"></property>
</bean>
3、在Controller中使用注解
[html] view
plain copy
@Controller//用来标注当前类是springmvc的控制层的类
@RequestMapping("/test")//controller的唯一标识或者命名空间
public class TestController {
@RequestMapping("/hello.do")//用来访问控制层的方法的注解
public String hello(){
System.out.println(“你好springmvc与注释”);
返回“jsp1 / index”;
}
MVC的中的核心组件和工作流程,众所周知,实现同样的功能,相较于繁琐的配置文件而言,使用注解便简单高效的多。春季自2.0版本开始,陆续引入了一些注解用于简化Spring的开发本文就将介绍Spring
MVC常用注解以及使用场景。
一,春季常用注解
@Controller- > 控制层
@Service
- >业务层
@Repository
- >道层
@Component
- >仅仅表示一个组件(Bean),可以作用在任何层次。
春天通过监测一个豆是否包含注解以及注解类型,确定该豆是否有春天容器进行管理,如果包含春注解,春天便会自动创建相应的的BeanDefinition对象,并注册到的ApplicationContext中。这些类就成成了春天受管组件。当一个豆被自动检测到时,会根据那个扫描器的BeanNameGenerator策略生成它的bean的名称,自动纳入春容器的管辖范围。
二,Spring
MVC常用注解
SpringMVC作为Spring框架的web MVC产品,常用的注解当然必不可少的@Controller
1,@Controller
直接作用于MVC中C(控制器控制层),控制层中每一个控制器都会加上这个注解,或者通过豆显示配置的形式,将该控制器交与春季容器管理。
2,@RequstMapping
一个)@RequstMapping主要作用于控制器的方法注解
@RequstMappingSpringMVC-servlet的配置文件中,对控制器声明时的名称属性,形如:@RequstMapping(“/
hello.do”),同样的通过BeanName映射方式访问控制器,这里也是这个用途,通过@RequstMapping(“/ hello.do”)中/ hello.do的值组成URL访问路径,例如:http://
localhost:8091 / springMVC / hello。做
b)
@RequstMapping 也可作用于整个控制器类,为此控制器指定唯一标识或者命名空间。
如果在整个控制器类前加上@RequstMapping注解,则表明该控制器以此RequstMapping为标识,访问时,自然需要在方法的RequstMapping值前补充控制器的RequstMapping才可找到该控制器,再通过方法的RequstMapping值找到指定方法。3,综合看来,@
RequstMapping注解的作用主要在于为控制器和控制器中的方法添加唯一标识,组成浏览器访问的URL地址,通过RequstMapping访问到指定控制器的指定方法。
三,Spring
MVC注解应用
如图1所示,首先添加注解相关罐2,在用SpringMVC-servlet.xml中中配置,指定注解使用范围
[html] 查看纯文本
<!
- mvc的注解驱动 - >
<mvc:annotation-driven/>
<!-- 一旦有扫描器的定义mvc:annotation-driven不需要,扫描器已经有了注解驱动的功能 -->
<context:component-scan base-package="cn.itcast.springmvc"/>
<!-- 前缀+ viewName +后缀 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!-- webroot到某一指定的文件夹的路径 -->
<property name="prefix" value="/WEB-INF/jsp/"></property>
<!-- 视图名称的后缀 -->
<property name="suffix" value=".jsp"></property>
</bean>
3、在Controller中使用注解
[html] view
plain copy
@Controller//用来标注当前类是springmvc的控制层的类
@RequestMapping("/test")//controller的唯一标识或者命名空间
public class TestController {
@RequestMapping("/hello.do")//用来访问控制层的方法的注解
public String hello(){
System.out.println(“你好springmvc与注释”);
返回“jsp1 / index”;
}
相关文章推荐
- Spring MVC 系列(二)——基于注解的开发
- spring mvc系列文章 - springmvc spring mybatis ibatis freemark整合开发(2.0版:基于注解)
- Spring MVC 系列(二)——基于注解的开发
- SpringMVC经典系列-02基于Spring2.5注解的方式进行项目开发---【LinusZhu】
- Java EE - Spring MVC 入门介绍以及基于注解开发应用
- SpringMVC经典系列-04基于Spring3.1注解的方式进行项目开发---【LinusZhu】
- 基于注解的 Spring MVC(上)
- 基于MVC模式的电商项目开发系列之3:后台功能
- spring mvc整合freemarker基于注解方式
- 基于注解的 Spring MVC 简单入门
- spring mvc 基于注解 配置默认 handlermapping
- spring mvc 入门系列之二--HelloWorld(注解版)
- 【Qt程序】基于Qt词典开发系列<十二>呼叫讲述
- 使用 Spring 2.5 基于注解驱动的 Spring MVC
- 【VxWorks系列】基于VMWare配置VxWorks开发环境
- 基于注解的 Spring MVC 简单入门
- 《基于Windows 7特性的程序开发系列》视频分享
- 基于spring mvc 开发电影网站sharemov.net
- 敏捷开发产品管理系列之八:基于业务设计技术架构(兼谈12306性能问题)