Spring mvc3.1之HelloWorld(新手入門)

初學Spring mvc,做了個簡單的HelloWorld。
運行環境:jdk1.7 + eclipse-ee + tomcat7.0 + spring mvc3.1
配置文件說明:spring mvc的配置使用註解方式

首先Spring mvc 新手入門所需要的jar包有:
commons-logging-1.1.1.jar   ----記錄程序運行時的活動的日誌
org.springframework.asm-3.1.1.RELEASE.jar  ----動態生成java類
org.springframework.beans-3.1.1.RELEASE.jar  ----springIoC的基礎實現
org.springframework.context-3.1.1.RELEASE.jar  ----spring提供的基於IoC的擴展服務
org.springframework.context.support-3.1.1.RELEASE.jar  ----Spring-context的擴展支持,用於MVC方面
org.springframework.core-3.1.1.RELEASE.jar  ----Spring3.1的核心工具包
org.springframework.expression-3.1.1.RELEASE.jar  ----Spring表達式語言
org.springframework.oxm-3.1.1.RELEASE.jar  ----Spring提供的Object-xml mapping支持
org.springframework.web-3.1.1.RELEASE.jar  ----Spring web下的工具

org.springframework.web.servlet-3.1.1.RELEASE.jar  ----提供對JEE6.0 Servlet3.0的支持


web.xml 配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app 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_2_5.xsd"
                 version="2.5">
      
      <!-- 使用SpringMVC的servlet -->
      <servlet>
           <servlet-name>SpringMVC</servlet-name>
           <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
           <!-- servlet初始化參數設定 -->
           <init-param>
	           <param-name>contextConfigLocation</param-name>
	           <!-- servlet配置文件的路徑 -->
	           <param-value>classpath:spring-servlet.xml
	           </param-value>
           </init-param>
           
           <!-- tomcat startup時加載該servlet-->
           <load-on-startup>1</load-on-startup>
       </servlet>
       <!-- servlet url攔截 -->
       <servlet-mapping>
              <servlet-name>SpringMVC</servlet-name>
              <url-pattern>*.do</url-pattern>
        </servlet-mapping>
</web-app>


spring-servlet.xml 配置如下(此文件放在src根目錄下):
<span style="font-size:12px;color:#3333FF;"><?xml version="1.0" encoding="GB18030"?>
<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"
	xmlns:util="http://www.springframework.org/schema/util"
	xmlns:mvc="http://www.springframework.org/schema/mvc"
	xsi:schemaLocation="http://www.springframework.org/schema/util
	 					http://www.springframework.org/schema/util/spring-util-3.1.xsd
   						http://www.springframework.org/schema/beans 
     					http://www.springframework.org/schema/beans/spring-beans-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/mvc
    					http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd">

    <!-- 註解驅動 -->
    <mvc:annotation-driven/>
    <!-- 掃描註解文件 -->
    <context:component-scan base-package="com.naruto" />
   
    <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
	</bean>
	
	<!-- 處理結果渲染到前端頁面 -->
	<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix" value="/WEB-INF/" />
		<property name="suffix" value=".jsp" />
	</bean>

</beans></span>


Controller java類如下(此類在src下名爲com.naruto的package
package com.naruto;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;

//用註解的方式表示這是一個Controller,spring-servlet.xml會掃描該包中的Controller
@Controller
public class helloController {
	//註解,客戶端的請求經過該方法處理後會映射到WEB/INF下的/jsp/hello,服務器→客戶端通信時使用的方法是GET
	@RequestMapping(value="/jsp/hello",method=RequestMethod.GET)
	//該方法接收一個Model容器,並返回一個視圖ModelAndView,
	public ModelAndView helloWorld(Model model) {
		//在model中增加一個屬性,名字是Msg,內容是hello world!
		model.addAttribute("msg", "hello world!");
		//返回添加了Model容器的視圖
		return new ModelAndView().addObject("model", model);
	}

}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章