首页 > 代码库 > 和大彪一起来学习-SpringMvc之第三回(注解使用详解)
和大彪一起来学习-SpringMvc之第三回(注解使用详解)
简述:
在上一篇文章中,介绍了适配器和映射器的一些概念,这篇文章主要是介绍SpringMvc注解的使用,下面先从一个最简单注解程序开始,慢慢引入一些常用的注解(@Controller,@Component,@Service,@Repository,@RequestMapping,@InitBinder,@RequestParam,@PathVariable,@RequestBody ,@ResponseBody)。
一、第一个注解项目
1.创建项目,加入Jar包,编写web.xml
可以加入第一篇文章里面给出的那些jar包,项目结构如下:
web.xml编写如下,前面已经有介绍过了,这里直接贴图了。
2.编写springmvc-servlet.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" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd "> <!-- 0.指定扫描 @Controller,@Component,@Service,@Repository之类Bean的路径--> <context:component-scan base-package="com.billstudy.springmvc"/> <!-- 1.注解映射器 --> <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/> <!-- 2.注解适配器 --> <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter" /> <!-- 小技巧:以上1、2可以直接使用 <mvc:annotation-driven />,这个配置已经包含上面两个bean配置,所以也能实现支持注解的效果 --> <!-- 3.视图解析器 最终路径为:prefix + Controller内返回逻辑视图名 + suffix 如:方法返回/hello,那么实际路径为:/WEB-INF/jsp/hello.jsp --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value=http://www.mamicode.com/"/WEB-INF/jsp" />>3.编写Controller类
package com.billstudy.springmvc.controller; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; /** * SpringMvc/Spring 企业开发常用注解使用演示 * @author Bill * @since V1.0 2015/01/23 */ /** 标明为Controller类,可以被Spring 扫描到,一般此类注解都作用于类上 ,与此相似的还有: * @Service : 一般用于MVC设计中M(model)层,也就是业务层 * @Repository : 一般用于DAO层,也就是数据访问层 * @Component : 仅仅表示一个组件 (Bean),比较泛化,当我们写了一个类不好定位其在MVC那层的时候,可以使用这个 * @Controller:一般用于MVC设计中C(Controller)层,也就是控制层 * **/ @Controller public class AnnotationDemoController{ @RequestMapping("/annotationTest01")/** 定义访问规则 **/ public ModelAndView annotationTest01(HttpServletRequest request,HttpServletResponse response){ ModelAndView result = new ModelAndView(); result.setViewName("/annotationTest01"); // 这里的ViewName,我们把它看成逻辑视图名,最终结合视图解析器,路径为:/WEB-INF/jsp/annotationTest01.jsp result.addObject("msg", "注解使用成功了!"); return result; } }
4.部署,测试
看看时间有点晚了,先到这,约摸着写到11.30应该也写不完,后面大部分注解明天下班再写。。。
和大彪一起来学习-SpringMvc之第三回(注解使用详解)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。