일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Design Patterns
- springboot
- db
- JVM
- jenkins
- Web Server
- ubuntu
- linux
- Spring Boot
- java
- laravel
- it
- Spring
- Oracle
- 맛집
- ReactJS
- php
- 요리
- Spring Batch
- jsp
- redis
- tool
- AWS
- Gradle
- Git
- elasticsearch
- MySQL
- devops
- IntelliJ
- javascript
- Today
- Total
목록Java & Kotlin (251)
아무거나
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..
public static void main(String[] args) { fileCopy("./file/copy/example1.txt", "./file/copy/example2.txt"); } public static void fileCopy(String origPath, String newPath) { try { // 원본 파일을 읽는다 FileInputStream fileInputStream = new FileInputStream(origPath); // 원하는 경로로 파일을 복사한다 FileOutputStream fileOutputStream = new FileOutputStream(newPath); int data = 0; while ((data = fileInputStream.read()) !..
특정 패키지 내부의 원하는 클래스에 특정 메소드만 지정하여 Aspect 적용 의존성 추가 [build.gradle] ... implementation 'org.springframework.boot:spring-boot-starter-aop' ... Bean 등록 [Application.java] @Bean public SelectLogAspect selectLogAspect() { return new SelectLogAspect(); } Controller 생성 [CrudController.java] import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import org.springframework.web.bind.a..
Spring Boot + Mybatis + Mysql 을 활용한 계층형(=hierarchy) 게시판 구현 테이블 설계 CREATE TABLE `tb_board` ( `BOARD_NO` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '게시판 고유 값', `GROUP_NO` int(11) unsigned NOT NULL COMMENT '게시판 그룹번호 (원글은 자신의 값)', `SORT_SEQ` int(2) unsigned NOT NULL COMMENT '게시글 정렬 순번', `BOARD_LVL` int(2) unsigned NOT NULL COMMENT '게시글 레벨(depth)', `BOARD_TITLE` varchar(45) NOT NULL COMMENT '게시..
Swagger 이용시 java.lang.NumberFormatException: for input string 과 같이 오류를 표시하는 경우가 있다. 이럴 경우에는 아래와 같이 build.gradle 에 내용을 추가하자. dependencies { ... implementation("io.swagger:swagger-annotations:1.5.21") implementation("io.swagger:swagger-models:1.5.21") ... }
Stream을 활용한 데이터 가공 문자열로된 숫자와 알파벳대소문자로 되어있는 데이터 정렬 // Code List list = Arrays.asList("9", "A", "Z", "1", "B", "Y", "4", "a", "c"); List sortedList = list.stream().sorted().collect(Collectors.toList()); sortedList.forEach(System.out::println); return sortedList; // Output [ "1", "4", "9", "A", "B", "Y", "Z", "a", "c" ] 문자열로된 숫자와 알파벳대소문자로 되어있는 데이터 reverse 정렬 // Code List list = Arrays.asList("9", "..
반복되는 쿼리 묶기 설정 ... SELECT BOARD_NO, GROUP_NO, SORT_SEQ, BOARD_LVL, BOARD_TITLE, BOARD_CONTENTS, SYS_REGR_ID, SYS_REG_DTIME, SYS_MODR_ID, SYS_MOD_DTIME FROM TB_USER_BOARD ORDER BY GROUP_NO DESC, SORT_SEQ ASC LIMIT #{size} OFFSET #{offset} WHERE BOARD_NO = #{boardNo} ...
* 참고로 해당 포스팅은 Aspect가 gradle 디펜던시에 추가되어있다는 가정하에 진행 원하는 패키지 경로 안에 그 하위에 *Service로 끝나는 파일들만 Aspect 적용 import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.aspectj.lang.JoinPoint; import org.aspectj.lang.Signature; import org.aspectj.lang.annotation.AfterReturning; import org.aspectj.lang.annotation.Aspect; import org.springframework.stereotype.Component; @Component @Aspec..