springmvc 매개 변수 귀속 총결산
@RequestParam 바인딩 단일 요청
RequestMapping(value = "/form2")
@ResponseBody
public String form2(@RequestParam String name){
logger.info("name=" + name );
return "";
}
@RequestParam
required(필수 여부), defaultValue(기본 매개 변수) 매개 변수가 있습니다.기본 required=true, defaultValue가 비어 있습니다.
name 매개 변수가 존재하지 않으면 400 되돌려줍니다.
다음 쓰기 법칙을 사용하십시오. required 기본값은false입니다.
@RequestMapping(value = "/form")
@ResponseBody
public String form(String name, Integer age) {
logger.info("name=" + name + "," + "age=" + age);
return "";
}
@RequestParam
수조 형식도 지원
@RequestMapping(value = "/names")
@ResponseBody
public String names(@RequestParam String[] name) {
logger.info("name=" + Arrays.asList(name));
return Arrays.asList(name).toString();
}
요청/names.do?이름 = 장삼, 이사또는/names.do?이름 = 장삼 & 이름 = 이사
@PathVariable 바인딩 uri 변수 값
@RequestMapping("/user/{id}")
@ResponseBody
public String getUser(@PathVariable Long id) {
return String.valueOf(id);
}
요청/user/1 반환 id는 1@CookieValue 귀속 쿠키 값
@RequestMapping("/getCookie")
@ResponseBody
public String getCookie(@CookieValue("JSESSIONID") String sessionId) {
return sessionId;
}
@ModelAttribute 명령 객체에 매개변수 바인딩1. 대상에 바인딩 요청 매개 변수
먼저 두 객체를 정의합니다.
Role
public class Role implements Serializable {
private String id;
}
User
public class User implements Serializable {
private String id;
private Role role;
}
@RequestMapping("/getUserByModel")
@ResponseBody
public String getUserByModel(@ModelAttribute("user") User user) {
logger.info(user.toString());
return "";
}
요청/getUserByModel에 해당합니다.do?id=123&role.id=1노출 폼 참조 대상은 모델 데이터입니다
@ModelAttribute("user")
public User getUser(String userId) {
User user = new User();
user.setId("11");
Role role=new Role();
role.setId("123");
user.setRole(role);
return user;
}
@RequestMapping("/getUserModel")
@ResponseBody
public String getUserModel(@ModelAttribute User user) {
return user.toString();
}
요청/getUserModel?id=1User{id='1', role=Role{id='123'}}
@ModelAttribute 주석을 사용하는 방법은 모든 Controller 방법 앞에서 실행됩니다.
@ModelAttribute 주석을 먼저 실행하여user 대상을 생성한 후user 대상의 id 속성이 1로 수정되었습니다.
@SessionAttributes 명령 객체를 session으로 바인딩
springmvc는 세션 데이터에 대한 접근을 위해 @SessionAttributes를 제공합니다
세션 추가
@RequestMapping("/setSession")
@ResponseBody
public String setSession(
HttpSession session) {
City city = new City();
city.setCityName("shanghai");
session.setAttribute("city", city);
return city.toString();
}
세션 데이터 가져오기
// session
@Controller
@SessionAttributes(value = {"city"})
public class TestController {
@RequestMapping("/getSession")
@ResponseBody
public String getSession(@ModelAttribute City city) {
return city.toString();
}
}
세션 세션 지우기
@RequestMapping("/clearSession")
@ResponseBody
public String clearSession(SessionStatus status) {
status.setComplete();
return "success";
}
@RequestBody 바인딩 요청된 컨텐츠 영역 데이터 및 자동 유형 변환 가능RequestBody를 사용하여 json을 객체로 변환
@RequestMapping("/getUserByJson")
@ResponseBody
public String getUserByJson(@RequestBody User user){
return user.toString();
}
json 형식 메시지 보내기
{
"id":"123"
}
결과 되돌리기 User {id='123', role=null}@RequestPart "multipart/data"데이터 바인딩
@RequestMapping("/getFile")
@ResponseBody
public String getFile(@RequestPart("image") MultipartFile file){
System.out.println(file.getName()+","+file.getSize());
return "success";
}
소스 주소:springmvcLearn_jb51.rar 이상은 본문의 전체 내용입니다. 여러분의 학습에 도움이 되고 저희를 많이 응원해 주십시오.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
springmvc application/octet-stream problemmistake: Source code: Solution: Summarize: application/octet-stream is the original binary stream method. If the convers...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.