SpringBoot/code

3.x 이전 버젼 logback , log4jdbc // logback , log4jdbc 설정 implementation 'org.bgee.log4jdbc-log4j2:log4jdbc-log4j2-jdbc4.1:1.16' implementation 'ch.qos.logback:logback-classic:1.2.11' implementation 'org.slf4j:slf4j-api:1.7.36' implementation 'org.slf4j:jcl-over-slf4j:1.7.36' 환경설정 추가 # sql 로그 설정 log4jdbc.spylogdelegator.name=net.sf.log4jdb..
@ResponseEntity ResponseEntity는 사용자의 HttpRequest에 대한 응답 데이터를 포함하는 클래스이다. 따라서 ResponseEntity란, 결과 데이터와 HTTP 상태 코드를 직접 제어할 수 있는 클래스이다. 라고는 하지만 간략히 프론트엔드 쪽은 완료됬는지 안됬는지 모르기 때문에 백엔드쪽에서 프론트엔드쪽으로 "얘 성공했어" , "얘 실패했어" 라고 메시지(신호)를 보내주는 것 \ 특징 / ( 1 ) 사용 목적 프로그램 품질 향상을 위해 사용 HttpStatus 응답 상태코드 참조 상수 (ENUM) 메시지 (신호) = 응답상태코드 설명 HttpStatus.OK 200 성공 HtppStatus.FOUND 302 찾음 HttpStatus.BAD_REQUEST 400 요청구문이 잘못..
@RequestBody 요청 본문(request body)에 담긴 값을 자바 객체로 변환 (conversion) (CRUD 중 CREATE ( : INSERT ) 코드 ) 클라이언트에서 서버로 필요한 데이터를 요청하기 위해 JSON 데이터를 요청 본문에 담아서 서버로 보내면, 서버에서는 @RequestBody 어노테이션을 사용하여 HTTP 요청 본문에 담긴 값들을 자바객체로 변환시켜, 객체에 저장한다. 한마디로 데이터를 입력받아 객체로 변환 하는 얘 \ 참조 / PostMapping과 함께 사용됨 정의 @PostMapping("url")함수명(@RequestBody 객체명) 예제 @RestController public class ObjectRequestBodyController { @PostMappin..
@Controller 와 @RestController 어노테이션 설명 return 값 @Controller jsp 개발시 사용 이동할 jsp 페이지 명 @RestController react / vue 연동 개발시 사용 json 데이터로 출력됨 예시 @RestController @RequestMapping("/exam06") public class MultiPathRestController { @GetMapping("/multi-path/id/{id}/name/{name}") public Member getMultiPath( @PathVariable String id, @PathVariable String name) { // 맴버 객체 생성 Member member = new Member(id,name)..
Cors 설정 ( 오버라이딩 해야함 ) @Configuration public class WebConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") .allowedOrigins("http://localhost:8080", "http://localhost:8081") .allowedMethods("GET", "POST") .maxAge(3000); } } 메소드 (함수) 특징 addMapping CORS를 적용할 URL패턴을 정의할 수 있습니다. maxAge 원하는 시간만큼 pre-flight 리퀘스트를 캐싱 해둘 수 있습..
@PathVariable 파라메터 방식 매개변수 전달하는 어노테이션 ♠ \ 참조 / ♠ 파라메터 방식이란? 쿼리스트링 형식을 개선해서 나온 방식 정의 name = 웹 매개변수명 @GetMapping("경로/{name}") @GetMapping("경로/id/{id}/name/{name}") // 여러개일때 가독성을 높인 문장 public String 함수명(Model model , @PathVarialbe String name) { model.addAttribute("name",name); return "페이지명"; } 파라메터 방식 URL 값을 바로 넣습니다. protocol://ip:port/url/값 protocol://ip:port/url/id/값/name/값
@ModelAttribute 객체의 속성명으로 jsp로 각각 전달 따라서 어떤 클래스 속성명( 예시: id , name )이 url 의 매개변수명과 같다. 정의 @GetMapping("경로") public String 함수명(@ModelAttribute 클래스명 변수) { return "페이지명"; } 웹브라우저 http://ip:port/url?속성명=값&속성명=값 ... 예제 Member 클래스 @Data public class Member { private String id; // 회원 id private String name; // 회원명 } Controller 클래스 @GetMapping("경로") public String 함수명( @ModelAttribute Member member) ..
@RequestParam 쿼리스트링 방식으로 변수에 값을 저장해서 다른 페이지로 전달하는 어노테이션 옵션 ( 물론 안써도 되긴하나 추천 x ) 옵션 설명 defaultValue="값" 쿼리스트링 변수에 값이 null 이면 디폴트값으로 바꾸어줌 ( 웬만하면 이걸 쓰자 ) 정의 함수명(Model model , @RequestParam("") String 변수명) {} @GetMapping("경로") 함수명(Model model , @RequestParam(defaultValue="") String 변수명) { model.addAttribute("key" , 변수명) // 값 전달하기 return "페이지"; } 웹 브라우저 주소창 입력 쿼리 스트링방식 : ( URL?변수명=값 ) protocol://..
Model 값을 저장하고 view 쪽으로나 servlet(?) 쪽으로 보낼수 있음 Controller 정의 public String 함수(Model model) { return "페이지 또는 url" } addAttribute() 값 (데이터)를 담음 다른 말로 jsp 페이지 변수를 전송 model.addAttribute(String key ,Object Value); view - jsp 자바 spring에서 전송한 (Model) 키 값을 출력 방식이 많음... EL (Expression Language) 표현식 ${ key } request.getAttribute() 값(데이터) 를 받음 JSTL 표현식 ( core 사용 )
어노테이션 ( anotation ) 자바의 어노테이션이라고 하고 , 주로 함수 위에 붙여서 사용함 목적 사용하면 코딩량이 획기적으로 줄어듬 정의 @명칭
Controller 텔레비전의 리모컨과 비슷하다 ( 중간 통로 역할 ) Hello World Controller url 에 해당하는 jsp 파일로 연결하기 정의 @Controller@Controller public class 클래스명 {} 매핑하기 @GetMapping()@GetMapping("") // 예제 /exam00/hello public String Hello(Model model) { return ""; // 예제 /exam00/hello.jsp }
별이춤추는밤
'SpringBoot/code' 카테고리의 글 목록 (2 Page)