spring-mvc
package com.li.controller;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.li.domain.User;
import com.li.domain.VO;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.servlet.http.PushBuilder;
import java.io.File;
import java.io.IOException;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@Controller
public class UserController {
@RequestMapping("/quick1")
public String save1(){
System.out.println("UserController save Running...");
return "success.jsp";
}
@RequestMapping("/quick2")
public ModelAndView save2(){
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("success2.jsp");
modelAndView.addObject("username","li");
return modelAndView;
}
@RequestMapping("/quick3")
public ModelAndView save3(ModelAndView modelAndView){
modelAndView.setViewName("success2.jsp");
modelAndView.addObject("username","li");
return modelAndView;
}
@RequestMapping("/quick4")
public String save4(Model model){
model.addAttribute("username","model");
return "success2.jsp";
}
@RequestMapping("/quick5")
public String save5(HttpServletRequest request){
request.setAttribute("username","request");
return "success2.jsp";
}
@RequestMapping("/quick6")
public void save6(HttpServletResponse response) throws IOException {
response.getWriter().println("response");
}
@RequestMapping("/quick7")
@ResponseBody
public String save7(){
return "response";
}
@RequestMapping("quick8")
@ResponseBody
public String save8(){
return "{\"username\":\"lisi\",\"age\":\"21\"}";
}
@RequestMapping("quick9")
@ResponseBody
public String save9() throws JsonProcessingException {
User user = new User();
user.setUsername("lisi");
user.setAge(21);
ObjectMapper objectMapper = new ObjectMapper();
String s = objectMapper.writeValueAsString(user);
return s;
}
@RequestMapping("/quick10")
@ResponseBody
public User save10(){
User user = new User();
user.setUsername("wangwu");
user.setAge(12);
return user;
}
@RequestMapping("/quick11")
@ResponseBody
public String save11(String username,int age){
System.out.println("username: "+username+" age: "+age);
return "username: "+username+" age: "+age;
}
@RequestMapping("/quick12")
@ResponseBody
public User save12(User user){
System.out.println(user);
return user;
}
@RequestMapping("/quick13")
@ResponseBody
public void save13(String[] strings){
System.out.println(Arrays.asList(strings));
}
@RequestMapping("/quick14")
@ResponseBody
public void save14(VO vo){
System.out.println(vo);
}
@RequestMapping("/quick15")
@ResponseBody
public void save15(@RequestBody List<User> userList){
System.out.println(userList);
}
@RequestMapping("/quick16")
@ResponseBody
public String save16(@RequestParam(value = "name",required = false,defaultValue = "LIZHIWEI") String username){
System.out.println(username);
return username;
}
@RequestMapping("/quick17/{username}")
@ResponseBody
public String save17(@PathVariable("username") String username){
System.out.println(username);
return username;
}
@RequestMapping("/quick18")
@ResponseBody
public String save18(Date date){
System.out.println(date);
return date.toString();
}
@RequestMapping("/quick19")
@ResponseBody
public void save19(HttpServletRequest request, HttpServletResponse response, HttpSession session){
System.out.println(request);
System.out.println(response);
System.out.println(session);
}
@RequestMapping("/quick20")
@ResponseBody
public void save20(@RequestHeader("User-Agent") String user_agent){
System.out.println(user_agent);
}
@RequestMapping("/quick21")
@ResponseBody
public void save21(@CookieValue("JSESSIONID") String jsessionid){
System.out.println(jsessionid);
}
@RequestMapping("/quick22")
@ResponseBody
public void save22(String username, MultipartFile uploadFile) throws IOException {
System.out.println(username);
System.out.println(uploadFile);
String filename = uploadFile.getOriginalFilename();
uploadFile.transferTo(new File("E:\\javaweb\\spring-mvcstu0815\\src\\main\\webapp\\"+filename));
}
}
```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:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">
<!-- Controller的组件扫描-->
<context:component-scan base-package="com.li.controller">
<!-- <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>-->
</context:component-scan>
<!-- 内部资源视图解析器配置-->
<!-- <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/jsp"></property>
<property name="suffix" value=".jsp"></property>
</bean>-->
<!-- 配置处理器映射器-->
<!--<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
<property name="messageConverters">
<list>
<!– 配置返回对象自动转换为json格式–>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"></bean>
</list>
</property>
</bean>-->
<!-- 配置改语句则会自动将返回的类转换成为json mvc的注解驱动-->
<mvc:annotation-driven conversion-service="conversionService"/><!--要在spring-mvc注解驱动处配置类型转换器,才会让mvc用我们自定义的类型转换器 -->
<!-- 静态资源的访问,spring-mvc会默认地址类似quick1,加上下面的语句用于更改默认访问地址-->
<mvc:resources mapping="/js/**" location="/js/"/>
<!-- 这个也可以用于更改默认访问地址 <mvc:default-servlet-handler/>-->
<!-- 配置自定义类型转换器-->
<bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean">
<property name="converters">
<list>
<bean class="com.li.converter.DateConverter"></bean>
</list>
</property>
</bean>
<!-- 配置文件上传解析器-->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="UTF-8"></property>
<property name="maxUploadSize" value="5000000"></property>
</bean>
</beans>