Version: Next
Hello SpringMVC
1. 基于配置
新建Maven模块,springmvc-02-hello
配置web.xml,注册
DispatcherServlet
<servlet><servlet-name>springmvc</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><!-- 关联一个SprigMVC的泪痣文件 [serlvet-name]-servlet.xml--><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:springmvc-servlet.xml</param-value></init-param><!-- 启动级别1--><load-on-startup>1</load-on-startup></servlet><!-- / 匹配所有请求(不包括.jsp)--><!-- /* 匹配所有请求(包括.jsp)--><servlet-mapping><servlet-name>springmvc</servlet-name><url-pattern>/</url-pattern></servlet-mapping>在resources目录下编写SpringMVC配置文件 [servletname]-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"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd"></beans>添加 处理映射器
<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>添加 处理器适配器
<bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/>添加 视图解析器
<!--视图解析器:DispatcherServlet给他的ModelAndView--><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="InternalResourceViewResolver"><!--前缀--><property name="prefix" value="/WEB-INF/jsp/"/><!--后缀--><property name="suffix" value=".jsp"/></bean>编写业务Controller
- 方式一:实现Controller接口
- 方式二:使用注解
- 返回一个ModelAndView,装数据、封视图
public class HelloController implements Controller {public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {//ModelAndView 模型和视图ModelAndView mv = new ModelAndView();//封装对象,放在ModelAndView中。Modelmv.addObject("msg","HelloSpringMVC!");//封装要跳转的视图,放在ModelAndView中mv.setViewName("hello"); //: /WEB-INF/jsp/hello.jspreturn mv;}}将类注册到SpringIOC容器
<bean id="/hello" class="com.bsx.controller.HelloController"/>设置hello.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %><html><head><title>Title</title></head><body>${msg}</body></html>
如果遇到404: (所以建模块的时候还是选maven的web-app模板吧 - . -)
- Project Structure -> Artifacts -> 在WEB-INF下新建lib目录
- 单机 "+" 添加所有maven依赖包