package com.itheima.controller;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.itheima.domain.User;
import com.itheima.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.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.File;
import java.io.IOException;
import java.util.Date;
import java.util.List;
@Controller
public class UserController {
@RequestMapping(value = "/quick23")
@ResponseBody
public void save23(String name, MultipartFile[] uploadFile) throws IOException {
System.out.println(name);
for (MultipartFile multipartFile : uploadFile) {
String originalFilename = multipartFile.getOriginalFilename();
multipartFile.transferTo(new File("C:\\Users\\Lenovo\\Desktop"+originalFilename));
}
}
@RequestMapping(value = "/quick22")
@ResponseBody
public void save22(String name, MultipartFile uploadFile,MultipartFile uploadFile2) throws IOException {
System.out.println(name);
String originalFilename = uploadFile.getOriginalFilename();
uploadFile.transferTo(new File("C:\\Users\\Lenovo\\Desktop"+originalFilename));
String originalFilename2 = uploadFile.getOriginalFilename();
uploadFile2.transferTo(new File("C:\\Users\\Lenovo\\Desktop"+originalFilename2));
}
@RequestMapping(value = "/quick21")
@ResponseBody
public void save21(@CookieValue("JSESSIONID") String jSessionId){
System.out.println(jSessionId);
}
@RequestMapping(value = "/quick20")
@ResponseBody
public void save20(@RequestHeader(value = "User-Agent",required = false) String userAgent){
System.out.println(userAgent);
}
@RequestMapping(value = "/quick19")
@ResponseBody
public void save19(HttpServletRequest request, HttpServletResponse response, HttpSession session){
System.out.println(request);
System.out.println(response);
System.out.println(session);
}
@RequestMapping(value = "/quick18")
@ResponseBody
public void save18(Date date){
System.out.println(date);
}
@RequestMapping(value = "/quick17/{name}")
@ResponseBody
public void save17(@PathVariable("name") String name){
System.out.println(name);
}
@RequestMapping(value = "/quick16")
@ResponseBody
public void save16(@RequestParam(value = "username",required = false,defaultValue = "lele") String name){
System.out.println(name);
}
@RequestMapping(value = "/quick14")
@ResponseBody
public void save14(@RequestBody List<User> userList){
System.out.println(userList);
}
@RequestMapping(value = "/quick13")
@ResponseBody
public void save13(VO vo){
System.out.println(vo);
}
@RequestMapping(value = "/quick12")
@ResponseBody
public void save12(User user){
System.out.println(user);
}
@RequestMapping(value = "/quick11")
@ResponseBody
public void save11(String username,String addr){
System.out.println(username);
System.out.println(addr);
}
@RequestMapping(value = "/quick10")
@ResponseBody
public User save10(){
User user = new User();
user.setName("U");
user.setAddr("org");
return user;
}
@RequestMapping(value = "/quick9")
@ResponseBody
public String save9() throws JsonProcessingException {
User user = new User();
user.setName("K");
user.setAddr("www");
ObjectMapper objectMapper = new ObjectMapper();
String json = objectMapper.writeValueAsString(user);
return json;
}
@RequestMapping(value = "/quick8")
@ResponseBody
public String save8() {
return "{\"username\":\"lele\",\"age\":18}";
}
@RequestMapping(value = "/quick7")
@ResponseBody
public String save7() {
return "hello mvc";
}
@RequestMapping(value = "/quick6")
public void save6(HttpServletResponse response) throws IOException {
response.getWriter().write("hello spring");
}
@RequestMapping(value = "/quick5")
public String save5(HttpServletRequest request){
request.setAttribute("username","itnice");
return "success";
}
@RequestMapping(value = "/quick4")
public String save4(Model model){
model.addAttribute("username","itgood");
return "success";
}
@RequestMapping(value = "/quick3")
public ModelAndView save3(ModelAndView modelAndView){
modelAndView.addObject("username","itheima");
modelAndView.setViewName("success");
return modelAndView;
}
@RequestMapping(value = "/quick2")
public ModelAndView save2(){
ModelAndView modelAndView = new ModelAndView();
modelAndView.addObject("username","itcast");
modelAndView.setViewName("success");
return modelAndView;
}
@RequestMapping(value = "/quick",method = RequestMethod.GET)
public String save(){
System.out.println("Controller save running...");
return "success";
}
}