본문 바로가기

프로그래밍/Spring & MyBatis

[Spring boot] Spring boot - nginx + tomcat 연동시 리얼 아이피 설정 방법 1.application.properties 또는 yml 에server.tomcat.protocol-header=x-forwarded-proto server.tomcat.protocol-header-https-value=https server.use-forward-headers=true server.tomcat.remote-ip-header=x-forwarded-for 를 추가하여준다. 2. nginx.conf 에 location / { proxy_pass http://argos-api; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Hos..
[Thymeleaf]타임리프 if else if else 조건식, 3항 연산자 사용법 타임리프 if else if else 조건식, 3항 연산자 사용법 /h2> User is an administrator User is a manager User is some other thing Hello! Something else
[Spring] Spring Web Application Architecture https://www.petrikainulainen.net/software-development/design/understanding-spring-web-application-architecture-the-classic-way/
[Spring Boot] 외장 톰캣 사용 (WAR 배포) https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-create-a-deployable-war-file
[Spring Framework] Spring MVC 출처 : http://www.mungchung.com/xe/spring/102692Spring MVC 기본 흐름을 나맘대로 정리해봤다. HandlerAdapterDispatcherServlet에서 Controller를 찾을 때 어떻게 찾아야 하는지 정의 1. Servlet과 SimpleServletHandlerAdapter 2. HttpRequestHandler와 HttpRequestHandlerAdapter 3. Controller와 SimpleControllerHandlerAdapter (기본) 4. AnnotationMethodHandlerAdapter (기본) - DefaultAnnotationHandlerMapping과 같이 사용됨 HandlerMappingURL (혹은 요청)과 맵핑된 Cont..
[Spring Framework] @Transactional 트랜젝션 관리 출처 : http://www.mungchung.com/ Spring에서 트랜잭션을 관리하는 방법은 Spring의 특징처럼 여러가지 방법들이 많다.간략하게 정리하자면, 1. JDBC의 커밋, 롤백을 이용한 트랜잭션 처리 방법으로 가장 전통적인 방식이다. 단점은 특정 JDBC에 종속적이고 비슷한코드가 클래스마다 여기저기 반복된다. 2. Transaction Manager 을 이용한 방법 3. Transaction Template를 이용한 방법 4. AOP를 이용한 선언적방식의 트랜잭션 처리 방법 5. @Transactional 어노테이션을 이용한 방법 빈설정 파일을 통해서 트랜잭션을 선언하려면 AOP의 포인트컷, 어드바이스 같은 개념을 잘 알고 있어야하는데 개념도 쉽지 않을 뿐더러 적용하기도 번거러울것 같아..
[Spring Framework]Bean 등록 방법 출처 : http://www.mungchung.com/1. xml 을 이용한 등록 방법 - setter 이용1) applicationContext.xml? 2) Bean?public class LoginDAOImpl implements LoginDAO { private SqlMapClientTemplate sqlMapClientTemplate; public void setSqlMapClientTemplate(SqlMapClientTemplate sqlMapClientTemplate) { this.sqlMapClientTemplate = sqlMapClientTemplate; }} 2. xml 을 이용한 등록 방법 - 생성자 이용1) applicationContext.xml? 2) Bean?public c..
[Spring Boot] 첨부파일 // 코드 입력 package com.jsonobject.example; import lombok.Data; import lombok.NoArgsConstructor; import org.apache.commons.io.FilenameUtils; import org.apache.commons.lang3.RandomStringUtils; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.Request..