목록development (74)
코딩하는 오징어
HikariCP 옵션jdbcUrl, username, password는 너무 기본적인 내용이라 생략하겠습니다. HikariCP설정의 시간 단위는 ms입니다.autoCommit: auto-commit설정 (default: true)connectionTimeout: pool에서 커넥션을 얻어오기전까지 기다리는 최대 시간, 허용가능한 wait time을 초과하면 SQLException을 던짐. 설정가능한 가장 작은 시간은 250ms (default: 30000 (30s))idleTimeout: pool에 일을 안하는 커넥션을 유지하는 시간. 이 옵션은 minimumIdle이 maximumPoolSize보다 작게 설정되어 있을 때만 설정. pool에서 유지하는 최소 커넥션 수는 minimumIdle (A con..
GradleGradle Wrapper를 사용하는 목적이미 존재하는 프로젝트를 새로운 환경에 설치할때 별도의 설치나 설정과정없이 곧 바로 빌드할 수 있게 하기 위함(Java나 Gradle도 설치할 필요가 없음. 또한 로컬에 설치된 Gradle 또는 Java의 버전도 신경쓸 필요가 없음. 따라서 항상 Wrapper를 사용할 것을 권장.)gradlew 파일유닉스용 실행 스크립트.Gradle로 컴파일이나 빌드 등을 할때, 아래와 같이 하면 로컬에 설치된 gradle을 사용.> gradle build 이 경우 Java나 Gradle이 설치되어 있어야 하고, 새로받은 프로젝트의 Gradle 버전과 로컬에 설치된 Gradle 버전이 호환되지 않으면 문제가 발생할 수 있음. 따라서 Wrapper를 사용하면 아래와 같이..
Spring boot logback 설정classpath(resource디렉토리 밑)에 logback-spring.xml파일이 있으면 Boot가 설정파일을 읽어감.logback-spring.xml파일이 없다면 .yml(.properties)파일의 설정을 보게됨.설정시 특징 ${LOG_PATH}/private.${port:-default}.log ${LOG_PATH}/private.${port:-default}.log.%d{yyyy-MM-dd} 7 %replace(%msg){'\n', ' '}%n ${LOG_PATH} 변수에 들어가는 값을 .yml파일에 속성 값이 있다면 그것을 가져옴.file태그가 없을 경우 fileNamePattern태그 설정이 파일 이름을 세팅함.spring: profiles: def..
Spring Boot Profile 설정 Spring Boot를 사용하기 전에는 maven을 이용했다면 태그를 이용하여 profile을 설정하였다. Spring Boot를 이용하면 보다 손쉽게 profile을 설정할 수 있다. 참고 docs : https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html#boot-features-external-config-profile-specific-properties application.properties를 파일을 이용할 경우 application-{profile}.properties 형식으로 다음과 여러개의 파일을 생성하면 된다. applicatio..
QueryDsl이란?JPQL의 빌더(Criteria)클래스QueryDsl 사용전 설정dependency 추가dependencies { compile("com.querydsl:querydsl-core:4.2.1") compile("com.querydsl:querydsl-apt:4.2.1") compile("com.querydsl:querydsl-jpa:4.2.1") compile("com.querydsl:querydsl-collections:4.2.1") ... } Q클래스를 먼저 생성 후 컴파일 되어야 하므로 task를 먼저 실행시켜야함def queryDslOutput = file("src-gen/main/java") sourceSets { main { java { srcDir "src-gen/main/..
Junit 4 & Spring Test을 이용한 TDD 환경 세팅(다음은 Spring boot를 이용하지 않은 애플리케이션에서의 테스트 환경이다.)SpringTestSupport 클래스에 설정 후 이 클래스를 상속받아 테스트를 개발함.@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(classes = { RootContextConfig.class }, loader = AnnotationConfigWebContextLoader.class) @WebAppConfiguration public class SpringTestSupport { @Autowired protected WebApplicationContext wac; protected MockM..
Junit 5 & Spring Test을 이용한 TDD 환경 세팅기본 세팅@ExtendWith(SpringExtension.class) @SpringBootTest(classes = KkApplication.class) @ActiveProfiles("test") public abstract class SpringTestSupport { } TestContext를 사용하려면 위의 SpringTestSupport를 상속받아 테스트 코드를 개발한다.@ExtendWith는 Junit4의 RunWith(SpringRunner.class)와 비슷하다고 생각하면 된다.@SpringBootTest는 @SpringBootApplication이 붙은 애너테이션을 찾아 context를 찾는다.@SpringBootApplic..
spring-data-jpa와 hibernate를 이용하여 프로젝트를 설정하던 중 발생한 이슈를 해결하면서 Spring 5.xx에서 새로 나온 CandidateComponentsIndexLoader클래스에 대해 알아보았습니다. 이를 공유하고자 글을 쓰게 되었습니다. 먼저 제가 설정한 pom.xml을 들여다 봅시다. 4.3.14.RELEASE ... ... org.springframework spring-webmvc ${spring.version} javax.servlet javax.servlet-api com.fasterxml.jackson.core jackson-databind org.springframework.data spring-data-jpa 2.0.5.RELEASE org.hibernate h..