일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- laravel
- java
- Git
- Spring Boot
- 요리
- Design Patterns
- Oracle
- Spring Batch
- springboot
- JVM
- Spring
- php
- it
- AWS
- ubuntu
- jenkins
- Gradle
- tool
- 맛집
- javascript
- redis
- MySQL
- db
- devops
- ReactJS
- elasticsearch
- linux
- IntelliJ
- jsp
- Web Server
- Today
- Total
목록java (242)
아무거나
Ehcache build.gradle ... dependencies { ... // 캐시관련 설정을 편리하게 지원해주는 패키지 (CacheManager, EhCacheManagerFactoryBean 등의 bean 생성을 직접 안할수 있음) implementation 'org.springframework.boot:spring-boot-starter-cache' // Ehcache implementation group: 'net.sf.ehcache', name: 'ehcache', version: '2.10.6' } ... EhCache 설정 체크 관련 Component 추가 (CommandLineRunner를 통해 Application 실행시 무조건 run() 이 실행되도록 하여 CacheManager를..
Entity Graph 쿼리 메서드마다 연관 관계의 fetch모드를 유연하게 설정할 수 있는 기능을 제공 EAGER: 끝이 One으로 끝나는 연관관계는 기본값이 EAGER 모드이다. 참조하고 있는 다른 Entity의 값도 가져온다. LAZY: 끝이 Many로 끝나는 연관관계는 기본값이 LAZY 모드이다. 자기 자신만 가져온 후 참조하고 있는 다른 Entity에 접근하면 그때야 다시 쿼리 실행 예제코드 기본은 EAGER지만 LAZY로 정보를 가져올 때 @Entity public class Reply { @Id @GeneratedValue private Long id; private String reply; /** @ManyToOne 은 참조하고 있는 다른 Entity의 값도 가져온다(Reply를 조회하였지..
Pinpoint Document 설명 Pinpoint란? 대규모 분산 시스템의 성능을 분석하고 문제를 진단, 처리하는 java 플랫폼 github: https://github.com/pinpoint-apm/pinpoint quick start: https://pinpoint-apm.github.io/pinpoint/quickstart.html#get-started 기능 서버 맵 - 대상 서버와 연결된 다른 서버와의 관계 다이어그램 스캐터 - 요청별 응답시간에 따른 그래프 request detail - 스캐터에서 선택된 요청의 스택트레이스 뷰 에러 발생 요청 표시 - 에러가 발생한 요청 빨간색으로 표시 서버의 jar목록 표시 - 서버에 접속하지 않아도 관련된 jar 목록 확인 가능 구성 DB - HBase..
maven 설치 https://maven.apache.org/download.cgi 접속하여 apache-maven-3.6.3-bin.tar.gz 다운로드 링크 복사 설치 $ cd /usr/local $ sudo wget https://downloads.apache.org/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz $ tar -xvf apache-maven-3.6.3-bin.tar.gz $ sudo rm -r apache-maven-3.6.3-bin.tar.gz $ sudo ln -s apache-maven-3.6.3 maven 환경변수 설정 $ vi ~/.bash_profile ... export MAVEN_HOME=/usr/local/ma..
Library Document Jasypt를 활용한 Application Property 암호화 Application.yml 에다 보통 DB 접속정보등의 데이터가 기재되어있다. 이러한 내용을 외부에서 탈취해갈 위험성을 대비하여 jasypt를 활용하여 보안을 강화하자 http://www.jasypt.org/download.html 에서 jasypt 다운 (1.9.2 버전 기준) 압축 풀고 cmd에서 bin 폴더로 이동 (./file/jasypt-1.9.3/bin) encrypt input="bkjeontest!@" password="bkjeon!@" algorithm="PBEWITHMD5ANDDES" (온라인 암/복호화 사이트 https://www.devglan.com/online-tools/jasypt-..
Lombok 사용시 주의사항 (1.16 기준) lombok.config를 통하여 애노테이션 사용금지 및 각종 설정 config.stopBubbling = true lombok.data.flagUsage=error lombok.value.flagUsage=error lombok.val.flagUsage=error lombok.var.flagUsage=error lombok.nonNull.flagUsage=error lombok.allArgsConstructor.flagUsage=error lombok.requiredArgsConstructor.flagUsage=error lombok.cleanup.flagUsage=error lombok.sneakyThrows.flagUsage=error lombok.sy..
Intellij Lombok 사용 (Mac) Preference -> Plugins -> Browse Repositories 에서 Lombok Plugin 추가 Prepference -> Build, Execution, Deployment -> Compiler -> Annotation Processors "Enable Annotation Processors" 체크 Lombok Annotations @Getter @Setter Getter / Setter Method 생성(모든 필드의 타입에 맞추어 생성) Class에 적용하면 static을 제외한 모든 필드에 적용 AccessLevel 을 명시하지 않으면 public 종류: PUBLIC, PROTECTED, PACKAGE, PRIVATE, NONE 특정 ..
Field Injection이 아닌 Constructor Injection 사용하자 평소 개발시에 스프링쪽이라든지 타 포스팅을 참고하여 Field Injection이 아닌 Constructor Injection 을 지향하게 되었다. 하지만 그 당시 간략히 이해만하고 넘어간지라 최근에 해당 내용에 대해 설명을 해야할 일이 생겼을 때 간략한 내용만 전달하게 되어서 좀 더 자세한 내용을 다시 복습하고자 포스팅을 작성하게 된다. [의존성 주입의 종류] Setter Injection public class ExampleClass { @Autowired private ExampleService1 exampleService1; @Autowired private ExampleService2 exampleService2..
Build 할 때 java.lang.NoClassDefFoundError: org/gradle/wrapper/GradleWrapperMain 에러 해결 원인: gradle wrapper 실행파일(gradle-wrapper.jar)이 없어서 문제가 생김. (.gitignore 를 확인 커밋할때 제외될 가능성이 높음) 해결방법 gradle 설치 $ wget https://services.gradle.org/distributions/gradle-5.2.1-bin.zip $ mkdir /opt/gradle $ sudo mkdir /opt/gradle $ sudo unzip -d /opt/gradle gradle-5.2.1-bin.zip $ export PATH=$PATH:/opt/gradle/gradle-5.2..
Java에서 Apache OpenOffice + JODConverter 를 활용한 PDF Converter 개발 Apache OpenOffice란 다양한 운영체제에서 사용하 수 있는 오피스 제품이다.(오픈소스) -> 현재는 버전업 속도가 빠른 리브레오피스(LibreOffice)를 추천 현재 라이브러리는 RedHat Linux 기준으로 작성되었다. OpenOffice v4.0.0 기준으로 작성되었다. (그 이상 버전에서는 jre 관련 에러가 표시되어 다운그레이드함) build.gradle에 의존성 추가 dependencies { ... // Windows compile group: 'org.jodconverter', name: 'jodconverter-core', version: '4.0.0-RELEASE..