Cute Hello Kitty Kaoani

WebServer

WebServer/Spring Boot

[Spring/JPA] Spring Data JPA란?

JPA(Java Persistence API)는 자바를 이용하여 데이터베이스와의 상호 작용을 쉽게 만들어주는 프로그래밍 인터페이스이다. JPA를 사용하면 객체와 관계형 데이터베이스 간의 매핑을 쉽게 처리할 수 있으며, 데이터베이스에서 객체를 저장하고 검색하는 등의 작업을 보다 간편하게 수행할 수 있다. 💡 JPA는 JAVA에서 ORM(Object-Relational Mapping)기술 표준으로 사용하는 인터페이스 모음 JPA를 사용하는 이유 객체 지향적인 방식으로 데이터를 다루면서 데이터베이스를 효과적으로 활용 SQL 쿼리를 직접 작성하는 대신 JPA가 데이터베이스 간의 매핑을 처리 ➜ 개발자가 비즈니스 로직을 구성하는데만 집중 가능 RDB를 변경하더라도 SQL에 의존적이지 않기 때문에 변경 용이 MyB..

WebServer/Spring

[Spring] 자주 사용하는 태그 목록 (복붙용😎)

pom.xml 1.8 5.2.25.RELEASE ... 1.8 1.8 Component-scan InternalResourceViewResolver Post 한글 처리 filter org.springframework.web.filter.CharacterEncodingFilter encoding utf-8 filter /* 정적 resource MyBatis 의존성 설정 org.mybatis mybatis 3.4.6 org.mybatis mybatis-spring 1.3.2 org.springframework spring-jdbc 5.0.8.RELEASE org.apache.commons commons-dbcp2 2.5.0 com.jslsolucoes ojdbc6 11.2.0.1.0 properties j..

WebServer/Spring

[Spring] @RequestBody 와 @ResponseBody

@RequestBody @ResponseBody 는 XML이나 JSON과 같은 메시지 기반의 커뮤니케이션을 위해 사용된다. @ResponseBody가 메서드 레벨에 부여되면 메서드가 리턴하는 객체는 뷰를 통해 결과를 만들어내는 Model로 사용되는 대신, 메시지 Converter를 통해 바로 HTTP 응답의 메시지 본문으로 전환된다. @RequestBody @ResponseBody를 위한 jackson 라이브러리 필요 com.fasterxml.jackson.core jackson-databind 2.14.2 💡 스프링부트에서는 의존성이 자동으로 포함되어 있음. @ResponseBody Controller에서 응답처리를 JSP로 하지 않고 JSON 형식으로 처리가 가능하다. 즉, 자바클래스를 리턴하면 자동..

WebServer/Spring Boot

[스프링부트] JSP 사용하는 SpringBoot MVC

프로젝트 생성 ① 의존성 등록 스프링부트 MVC에서 필요한 web starter 패키지 등록 내장 tomcat이 설치됨 (기본 port는 8080) 스프링부트 mvc에서 기본 화면처리는 JSP가 아니다. ➜ JSP 사용 위해서 의존성 추가 필요 💡 포트번호 변경은 application.propeties에서 server.port=8090 을 통해 변경 org.springframework.boot spring-boot-starter-web org.apache.tomcat.embed tomcat-embed-jasper javax.servlet jstl ② 웹 구조 생성 JSP 사용 시, 명시적으로 폴더 생성해야함 ③ InternalResourceViewResolver 등록 스프링부트에서는 application..

WebServer/Spring Boot

[스프링부트] SpringBoot와 MyBatis 연동

① 의존성 MyBatis starter 패키지 등록 스프링에서 MyBatis 를 연동하기 위해 설정했던 여러 개의 jar이 포함된 의존성 MyBatis starter 패키지를 등록한다. 스프링부트에서는 DB 연동을 위한 DBCP로 HicariCP 라이브러리를 이용한다. 💡 스프링은 commons.dbcp2 라이브러리 이용 org.mybatis.spring.boot mybatis-spring-boot-starter 2.1.4 com.jslsolucoes ojdbc6 11.2.0.1.0 ② DB 연동하는 4가지 정보 등록 스프링부트에서는 application.properties 에서 등록한다. spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDri..

WebServer/Spring Boot

[스프링부트] AOP (Aspect Oriented Programming)

AOP의 자세한 설명은 아래 글 참고 [Spring] AOP (Aspect Oriented Programming) AOP 보안이나 로그, 트랜잭션과 같이 비즈니스 로직은 아니지만, 반드시 처리가 필요한 부분을 스프링에서는횡단 관심사라고 한다. AOP는 이러한 횡단 관심사를 모듈로 분리하는 프로그래밍의 패 gangintheremark.tistory.com 실습 의존성 AOP starter 패키지 등록 필수 org.springframework.boot spring-boot-starter-aop @EnableAspectJAutoProxy 이용 어노테이션을 사용하는 방식이다. @SpringBootApplication @EnableAspectJAutoProxy public class Application { pu..

WebServer/Spring Boot

[스프링부트] I18N 다국어 처리하기

파일명_국가별언어코드.properties 작성 한국어 버전 #shop_ko.properties greeting=안녕하세요 영어 버전 #shop_en.properties greeting=hello application.properties 설정 spring.messages.basename=message/shop spring.messages.encoding=utf-8 # spring.messages.fallback-to-system-locale=false 💡 fallback-to-system-locale = true (default) : 시스템의 locale를 따른다. 💡 fallback-to-system-locale = false : 기본 properties를 실행한다. ① 메인에서 사용 @SpringBoo..

WebServer/Spring Boot

[스프링부트] SpringBoot 개요

Java Spring Boot는 Spring으로 애플리케이션을 만들 때, 쉽고 빠르게 만들 수 있도록 도와주는 프레임워크 스프링 vs 스프링부트 Spring 🌱 Spring Boot🌱 정의 Enterprise Application을 개발하는데 사용되는 오픈소스 경량 프레임워크 REST API 개발에 사용되며, 기존의 스프링 프레임워크 위에 구축 중요기능 Dependency Injection Autoconfiguration 사용방식 설정 파일 작성, 빈 객체 등록, 빈 객체 간의 의존성 설정 간단한 설정과 의존성 처리 설정파일 Bean Configuration XML파일 application.properties 또는 application.yml 이용 목적 느슨하게 결합된 응용프로그램 독립 실행형 응용 프로..

WebServer/Spring

[Spring] Spring 기반의 파일업로드(File Upload)

① 의존성 추가 Apache 에서 제공하는 Commons 기반의 라이브러리 의존성 추가 commons-fileupload commons-fileupload 1.4 commons-io commons-io 2.6 ② 파일 업로드 JSP 작성 comment: file: ③ DTO 작성 type="text"와 type="file" 2개를 한꺼번에 저장하기 위해 UploadDTO 클래스를 작성한다. @AllArgsConstructor @Data public class UploadDTO { String theText; CommonsMultipartFile theFile; } 💡 CommonsMultipartFile 클래스는 파일을 저장하는 핵심 클래스이다. ④ Controller 작성 @Controller publ..

WebServer/Spring

[Spring] MVC 네임스페이스 태그 관련

@MVC 관련 기능을 활용할 때, 다음 두 가지는 필수 지정 HandlerInterceptor 스프링의 HandlerMapping은 HandlerInterceptor를 이용해 Controller가 요청을 처리하기 전과 후에 알맞은 기능을 수행하도록 지원 boolean preHandle(request, response, object): 클라이언트 요청을 Controller에 전달하기 전 호출 void postHandle(request, response, object, mav) : 클라이언트 요청을 처리한 후 호출 void afterCompletion(request, response, object, ex): 뷰를 통해 클라이언트에 응답을 전송한 후 호출 HandlerInterceptor를 구현한 뒤에는 반드..

WebServer/Spring

[Spring] Spring MVC 구조에서 MyBatis 연동

[Spring] Spring에서의 MyBatis 연동 Oracle 연습용 계정인 SCOTT 계정의 DEPT 테이블 정보를 조회/삽입/수정/삭제를 해보자 ① 의존성 설정 pom.xml에 5개의 jar 설정 ojdbc6_g.jar, mybatis.jar, spring-jdbc.jar, spring-mybatis.jar, commons-dbcp2.jar org.mybatis my gangintheremark.tistory.com 자세한 건 위 게시글에서 참고 연동 순서 ① 의존성 설정 ( 5개의 jar파일) ② jdbc.properties 작성 및 등록 ➜ root-servlet.xml ③ DB 연동하는 DataSource 설정 ➜ root-servlet.xml ④ DTO 작성 및 별칭 지정 ⑤ Mapper ..

WebServer/Spring

[Spring] 스프링의 포워드(forward)와 리다이렉트(redirect) + RedirectAttributes

[Servlet] 요청 위임 클라이언트의 요청을 받은 서블릿에서 다른 컴포넌트(서블릿, JSP, html)로 요청을 위임할 수 있다. 직접 요청 받은 서블릿에서 모든 작업을 처리하지 않고 위임한 컴포넌트에서 특정 작업을 처리 gangintheremark.tistory.com 리턴 타입이 String 일 때, 다음과 같은 특별한 키워드를 붙여서 사용할 수 있다. forward : 포워드 방식으로 처리 forward:target redirect : 리다이렉트 방식으로 처리 redirect:target 포워드(forward) 처리 화면 URL 변경 X request scope에 저장된 데이터 target에서 사용 가능 @RequestMapping("/aaa") public String aaa(Model m) ..

gangintheremark
'WebServer' 카테고리의 글 목록