基于spring3.X注解实现的spring MVC项目
我们采用sprng MVC开发项目时,通常都会采用注解的方式,这样可以大大提高我们的开发效率。实现零配置。下面我们从零开始重新做一个spring MVC的配置。这个项目完全采用注解的方式开发。同时,我们以后的spring MVC项目也都会采用注解的方式。
1. 建立web项目
2. 导入相关Jar包(除上例外,还需要spring-aop-3.X.RELEASE.jar)
3. 修改web.xml,文件内容如下:
<servlet> <servlet-name>springmvc</servlet-name> <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:mvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> |
【注意:红色部分是当使用自定义的配置文件路径和文件名时要配置的内容。】
4. 在src目录下创建mvc.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:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<!-- 配置扫描位置 --> <context:component-scan base-package="wanshi.controller" /> <!-- 配置视图渲染器 --> <bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <!-- 结果视图的前缀和后缀 --> <property name="prefix" value="/WEB-INF/jsp/"/> <property name="suffix" value=".jsp"/> </bean> </beans> |
5. 创建Controller类,内容如下:
package wanshi.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;
@Controller public class HelloController{ @RequestMapping("/hello") public ModelAndView hello(HttpServletRequest req,HttpServletResponse resp) { ModelAndView mav=new ModelAndView(); //封装数据 mav.addObject("msg", "hello springmvc with annotation!"); //返回视图 mav.setViewName("/index"); return mav; }
} |
6. WEB-INF下建立jsp文件夹,并将index.jsp放入该文件夹下。Index.jsp的内容如下:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> ${msg } </body> </html> |
7. 部署项目并运行Tomcat测试:
http://localhost:8080/mvcdemo/hello.do,则会调用HelloController的hello方法。
【注:通过Servlet API可以轻松实现转发和重定向。】