목록development (75)
코딩하는 오징어
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..
Spring data jpa & hibernate를 이용하기 위한 빈 설정에 대해 알아보자. 먼저 코드와 dependency부터 보자. @Bean(destroyMethod = "close") public LocalContainerEntityManagerFactoryBean entityManagerFactory(DataSource dataSource) { HibernateJpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter(); vendorAdapter.setGenerateDdl(true); vendorAdapter.setShowSql(true); LocalContainerEntityManagerFactoryBean factory = new Loc..
안녕하세요. 오랜만에 블로그에 글을 쓰네요. 그 동안 저에게는 굉장히 많은 일들이 있었어요. 3월 부터 게임회사에서 인턴 생활과 학교 생활을 병행하며 지내다 올해 5월이 지난 후에는 N사 인턴 면접, K사 신입 면접을 보게 됐죠. (면접 준비를 하면서도 굉장히 많은 성장을 하게 됐습니다. 기초가 탄탄해진 기분..?ㅎㅎ) 즐기다보니 좋은 결실을 맺게 되어 K사 서버개발자 직무로 돈 버는 개발자가 되었습니다.ㅎㅎ 어찌 됐든 제가 개발자가 되고싶다는 생각을 가진 이후로 어떤 여정을 보내게 되었는지에대해 공유를 하고 싶어 글을 쓰게 됐습니다. 좋지 않은 글 솜씨지만 읽기 편하게 쓰도록 노력하겠습니다. 나름 진지한 글이기에 ㅋㅋ같은 수식어는 생략하겠습니다..ㅎㅎ 글이 무거워지면 조금 루즈해지겠지만 그래도 첫 출근..
이 글에서 각 클래스의 사용법을 설명하지는 않겠다. 각 클래스들의 특징과 성능적인 관점에서 비교해보고자 포스팅을 하는 것이기 때문이다. 비교 코드를 먼저 보자.더할 값(value)에서 임시로 사용되는 객체가 생성되지 않도록 하기 위해 final String으로 지정하였다. 실행 결과를 살펴보자. 응답시간 주요 소스 부분 응답 시간(ms) 비고 str += value 95,801.41ms 95초 strBuffer.append(value) 247.48ms 0.24초 strBuilder.append(value) 174.17ms 0.17초 String 클래스의 문제점이 보이는가?? 이게 끝이아니다. 메모리 사용량 주요 소스 부분 메모리 사용량(bytes) 생성된 임시 객체 수비고 str += value 100,..
인코딩이란? Base64 인코딩에 대해 알아보기전에 먼저 인코딩이란게 무엇인지 간략하게 알아보자. 인코딩(encoding)은 정보의 형태나 형식을 표준화, 보안, 처리 속도 향상, 저장 공간 절약 등을 위해서 다른 형태나 형식으로 변환하는 처리 혹은 그 처리 방식을 말한다. 동영상이나 이미지영역에서도 많이 사용되는 용어지만 우리는 Binary Data를 Text로 바꿔주는 Base64 인코딩에 대해서 알아봐야하기 때문에 이하는 생략하겠다. Base64 인코딩 Base64란 Binary Data를 Text로 바꾸는 Encoding(binary-to-text encoding schemes)의 하나로써 Binary Data를 Character set에 영향을 받지 않는 공통 ASCII 영역의 문자로만 이루어진..
mysql-connector-java 버전 6.xx로 변경하면 com.mysql.jdbc.Driver가 Deprecated 됐다고 경고메시지가 뜨는 것을 확인할 수 있다. com.mysql.cj.jdbc.Driver로 바뀌었으니 JDBC-Driver 클래스 지정에 주의하자. 기본적으로 DB연결시 jdbc:mysql://{ip주소}:{port번호}/{databaseName} 식으로 url을 설정해서 연결했었는데 6.xx로 변경시키면 serverTimezone파라미터가 필수가 돼서 빼먹으면 DB연결이 되지않는다. jdbc:mysql://{ip주소}:{port번호}/{databaseName}?serverTimezone=UTC 위와같이 serverTimezone 파라미터를 꼭 넣어주어야 한다. 추가적인 변경 사..