spring mvcの勉強


Spring MVCはSpring Frame Workの後継製品で、Spring Web Flowに融合しています。Springフレームは、Webアプリケーションを構築する全機能MVCモジュールを提供します。
参考する記事:
http://elf8848.iteye.com/blog/875830/
http://blog.csdn.net/chichengit/article/details/12098111
OPEN文書
いくつかの基本的な使用方法を記録します。
package com.smvc.action;

import java.io.File;
import java.util.Date;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.springframework.beans.factory.annotation.Autowired;
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.bind.annotation.RequestParam;

import com.smvc.modal.User;
import com.smvc.service.UserService;


@Controller
@RequestMapping("/test")
public class TestController {
	
	private UserService userService;
	
	@Autowired
	public void setUserService(UserService userService) {
		this.userService = userService;
	}
	
	
	/**
	 * @   [    ]
	 * @   http://localhost:8081/springMVC/test/test01?id=123
	 * 		    :get	
	 * **/
	@RequestMapping(value="/test01",method=RequestMethod.GET)
	public String testSpringmvcOne(@RequestParam("id") String id,Model model){
		User user = userService.getUser(id);
		model.addAttribute(user);
		return "test";
	}
	
	
	/**
	 * @   [    ]
	 * @   http://localhost:8081/springMVC/test/test02/123
	 * 		    :get	
	 * **/
	@RequestMapping(value="/test02/{id}",method=RequestMethod.GET)
	public String testSpringmvcTwo(@PathVariable("id") String id,Map<String,Object> model){
		User user = userService.getUser(id);
		model.put("user", user);
		return "test";
	}
	
	
	/**
	 * @   [    ]
	 * @   http://localhost:8081/springMVC/test/test03?id=123
	 * 		    :get	
	 * **/
	@RequestMapping(value="/test03",method=RequestMethod.GET)
	public String testSpringmvcThree(HttpServletRequest request){
		String id = String.valueOf(request.getParameter("id"));
		User user = userService.getUser(id);
		request.setAttribute("user", user);
		return "test";
	}
	
	
	/**
	 * @   [    ]
	 * @   http://localhost:8081/springMVC/test/admin?add
	 * 		    :get	
	 * **/
	//    
	@RequestMapping(value="/admin",method=RequestMethod.GET,params="add")
	public String testSpringmvcBindingOne(){
		return "admin/index";
	}
	
	//      ,   
	@RequestMapping(value="/save",method=RequestMethod.POST,params="add")
	public String testSpringmvcBindingTwo(User user){
		userService.add(user);
		//      
		return "redirect:test02/"+user.getId();
	}
	
	
	/**
	 * @        
	 * @   http://localhost:8081/springMVC/test/fileUp
	 * 		    :get	
	 * **/
	@RequestMapping(value="/fileUp",method=RequestMethod.POST)
	public String testSpringmvcOne(@RequestParam("file") MultipathFile file){
		if(!file.isEmpty()){
			System.out.println(file.getOriginalFilename());   
		}		
		return "success";
	}
	
	
	/**
	 * @    json
	 * @   http://localhost:8081/springMVC/test/jsonView?id=123
	 * 		    :get	
	 * **/
	@RequestMapping(value="/jsonView",method=RequestMethod.GET)
	public @ResponseBody User testSpringmvcJson(@RequestParam("id") String id){		
		return userService.getUser(id);//  json
	}


}
スプリングMVC-servlet.xml配置
<!--   Springmvc     -->
    <mvc:annotation-driven/>
 <!--   json          fastjson.jar  -->  
    <mvc:annotation-driven>
        <mvc:message-converters register-defaults="false">
            <!--   IE  AJAX ,  JSON       -->
            <bean id="fastJsonHttpMessageConverter" class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
                <property name="supportedMediaTypes">
                    <list>
                        <!--        ,    text/html,  ie        -->
                        <value>text/html;charset=UTF-8</value>
                        <value>application/json;charset=UTF-8</value>
                    </list>
                </property>
            </bean>
        </mvc:message-converters>
    </mvc:annotation-driven>
     
   
  <!--   json          jackson-annotations.jar,jackson-core.jar,jackson-databind.jar-->  
   <!--  <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping" />
    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
        <property name="messageConverters">
            <list>
                <bean class="org.springframework.http.converter.StringHttpMessageConverter">
                    <property name="supportedMediaTypes">
                        <list>
                            <value>text/html; charset=UTF-8</value>
                            <value>application/json;charset=UTF-8</value>
                        </list>
                    </property>
                </bean>
                <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
                    <property name="supportedMediaTypes">
                        <list>
                            <value>text/html; charset=UTF-8</value>
                            <value>application/json;charset=UTF-8</value>
                        </list>
                    </property>
                </bean>
            </list>
        </property>
    </bean> -->
 
 
<!--      json     -->
 
    <!--          bean -->
    <context:component-scan base-package="org.controller"></context:component-scan>    
    <!--             -->
    <mvc:resources location="/resources/" mapping="*/res/**"/>
     
    <!--       -->
    <mvc:interceptors>
        <bean class="org.aop.LoginInteceptor" />
    </mvc:interceptors>
     
    <!--         -->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">    
        <property name="prefix" value="/WEB-INF/jsp/"/>    
        <property name="suffix" value=".jsp"/><!--   ,                         -->    
        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />    
    </bean>   
     
     <!--            -->
    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <property name="maxUploadSize" value="1046666000"/>
    </bean>
     
     <!--       -->
    <!-- <bean id="exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
        <property name="exceptionMappings">
            <props>
                <prop key="com.guanlan.util.SportException">error</prop>
            </props>
        </property>
    </bean> -->