Java自学之springMVC:Hello Spring MVC

学习目的:初识SpringMVC,了解SpringMVC的工作原理

Part 1

新建一个动态web项目,命名为springMVC,在WEB-INF/lib中,添加所需要的jar包。

v2-6b5ad27a285c86d9ad7d8710d39893f0_b.jpg

v2-a9cd8c69a787aa066a1d64a53bb2d7dd_b.jpg

Part 2

在WEB-INF下新建一个web.xml。

配置一个DispatcherServlet,所有的请求都会提交到该Servlet,该Servlet类为org.springframework.web.servlet.DispatcherServlet,配置servlet-name为springmvc,该名字在下一步将会用到。

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
	<servlet>
		<servlet-name>springmvc</servlet-name>
		<servlet-class>
			org.springframework.web.servlet.DispatcherServlet
		</servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>springmvc</servlet-name>
		<url-pattern>/</url-pattern>
	</servlet-mapping>
</web-app>

Part 3

在WEB-INF下新建一个springmvc-servlet.xml,注意该名字对应上一步的<servlet-name>springmvc</servlet-name>。

这是SpringMVC的映射配置文件,该配置表示访问路径/index时,会交给id=indexController的bean处理;id=indexController的bean配置为类:controller.IndexController

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
	<bean id="simpleUrlHandlerMapping"
		class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
		<property name="mappings">
			<props>
				<prop key="/index">indexController</prop>
			</props>
		</property>
	</bean>
	<bean id="indexController" class="controller.IndexController"></bean>
</beans>

Part 4

在src下新建一个package:controller,在该package下新建一个类IndexController。该类实现了Controller接口,并重写了handleRequest方法处理请求。

ModelAndView mav =newModelAndView("index.jsp"); mav.addObject("message","Hello Spring MVC");

表示视图是index.jsp

模型数据是 message,内容是 “Hello Spring MVC”

handleRequest在src下新建一个packagecontroller在该package下新建一个类IndexController该类实现了Controller接口vax.servlet.http.HttpServletResponse;
 
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
 
public class IndexController implements Controller {
    @Override
    public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
        ModelAndView mav = new ModelAndView("index.jsp");
        mav.addObject("message", "Hello Spring MVC");
        return mav;
    }
}

Part 5

在WebContent下准备index.jsp,使用EL表达式显示message的内容。

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8" isELIgnored="false"%>

<h1>${message}</h1>

Part 6

将项目部署到Tomcat服务器上,启动服务器,在浏览器地址栏输入localhost:8080/springMVC/index,浏览器显示Hello Spring MVC

v2-c873347d942b35b30c58585b5a7ffac4_b.jpg

Part 7

总结

  1. 用户访问/index。
  2. 根据web.xml中的配置,所有的请求都会经过DispatcherServlet。
  3. 根据配置文件springmvc-servlet.xml,用户访问/index路径,会进入IndexController类。
  4. 在IndexController中指定跳转到index.jsp,并传递message数据。
  5. 在index.jsp中,显示message信息。

v2-9a2820b81909db1f6db15411dce08152_b.jpg

posted @ 2020-02-20 19:28  IMKKA  阅读(7)  评论(0)    收藏  举报  来源