1. 程式人生 > >什麼是SpringMVC?(一)helloworld

什麼是SpringMVC?(一)helloworld

一、springmvc快速入門(XML版本)

1)建立springmvc-day01這麼一個web應用

2)匯入springioc,springweb , springmvc相關的jar包

      commons-logging

      org.springframework.asm-3.0.5.RELEASE

      org.springframework.beans-3.0.5.RELEASE

       org.springframework.context-3.0.5.RELEASE

      org.springframework.core-3.0.5.RELEASE

      org.springframework.expression-3.0.5.RELEASE

      org.springframework.web.servlet-3.0.5.RELEASE

      org.springframework.web-3.0.5.RELEASE

3)在/WEB-INF/下建立web.xml檔案

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
	<display-name></display-name>

	<!-- 註冊springmvc核心控制器 -->
	<!-- 如果<servlet-name>springmvc</servlet-name>配置,過濾器只會在 /WEB-INF/下找  springmvc-servlet.xml檔案,即 -->
	<servlet>
		<servlet-name>DispatcherServlet</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
	</servlet>
	<servlet-mapping>
		<servlet-name>DispatcherServlet</servlet-name>
		<url-pattern>*.action</url-pattern>
	</servlet-mapping>
</web-app>

4)建立HelloAction.java控制器類,implements Controller

public class HelloAction implements Controller{
	/**
	 * 業務方法
	 */
	public ModelAndView handleRequest(HttpServletRequest requqest,HttpServletResponse response) throws Exception {
		ModelAndView modelAndView = new ModelAndView();
		modelAndView.addObject("message","這是我的第一個springmvc應用程式");
		modelAndView.setViewName("/jsp/success.jsp");
		return modelAndView;
	}
}

5)在/WebRoot/下建立jsp/success.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>這是我的第一個springmvc應用程式</title>
  </head>
  <body>
	${message}
  </body>
</html>

6)在/WEB-INF/建立DispatcherServlet-servlet.xml配置檔案,xml頭部資訊與spring.xml相同

       注意:該配置檔案的命名規則:web.xml檔案中配置的 <servlet-name>的值-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"
		
      xsi:schemaLocation="
	
	  http://www.springframework.org/schema/beans 
	  http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
    
      http://www.springframework.org/schema/mvc
      http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
        
      ">
      
       <!-- 註冊Action
          class 表示處理類的全路徑
          name  表示請求路徑
       -->
       <bean name="/hello.action" class="com.zc.javaee.springmvc.app05.HelloAction">    
       </bean>
</beans>

工作流程:

1) 伺服器啟動,載入web.xml檔案,設定攔截什麼型別的請求(比如我這裡配置*.action,攔截所以的action請求)

2)建立HelloAction.java,寫業務方法,並設定跳轉頁面

3)配置DispatcherServlet-servlet.xml檔案,根據請求路徑訪問對應的action類