본문 바로가기
반응형

전체 글904

spring-boot-maven-plugin 자바에서 maven 관련해서는 아래 참고 포스팅 참고 바란다. Spring Boot Maven Plugin은 다음과 같은 Spring Boot 지원을 제공한다. 프로젝트를 실행가능한 jar 파일이나 war 파일로 패키지(package) Spring Boot 애플리케이션 실행 Build 정보 생성 통합 테스트를 하기 전에 Spring Boot 애플리케이션을 시작 그리고 maven 을 설정하는 pom.xml 파일에 아래 plugin 부분을 명시해줘야한다. org.springframework.boot spring-boot-maven-plugin ${parent.version} test org.projectlombok lombok 물론 groupId랑 artifactId만 작성해줘도 되는데, 다양한 옵션들을 함.. 2023. 6. 22.
LAG, LEAD 함수에 대해서 데이터베이스를 사용할때 LAG , LEAD 함수에 대해서 들어본 적이 있는지. 먼저 사전 풀이 그대로 사용한다면 LAG - 뒤떨어지다. LEAD - 이끌다. 라는 의미를 가지고 있다. 그럼 이 단어를 데이터베이스에서 적용을 하면 어떻게 될까? 이전의 값과 이 후의 값을 나타낼수 있다. 먼저 사용법은 아래와 같다. LAG/LEAD(컬럼명 {,offset} {,default}) OVER({PARTITION BY} ORDER BY) offset, default, partition by는 생략가능, order by는 생략 불가!! LAG 함수 : 이전 행 값 return LEAD 함수 : 다음 행의 값 return offset : 값을 가져올 행의 위치, default 1 default : 값이 없을 경우 지정.. 2023. 6. 21.
@PostConstruct, @PreDestroy 어노테이션 오늘 소개할 어노테이션은 다음과 같다. @PostConstruct @PreDestroy 해당 메서드를 이해하려면 Bean 생명주기(Life Cycle) 에 대해서 이해를 해야한다. 예전에 스프링이 지금처럼 활발하지 않을때는 인터페이스로 빈을 관리하거나, @Bean(initMethod = "initialize", destroyMethod = "close") 이런식으로 빈을 생성하여 시작시, 종료시 행해지는 메서드들을 정의하곤 했다. 그래서 최신 기술로는 오늘 소개하는 @PostConstruct, @PreDestroy 이 두 annotation을 사용하는것이 권장된다. annotation에 대해서는 아래 참고 포스팅 참고 바란다. @PostConstruct Spring은 bean을 초기화 한 이후에 @Pos.. 2023. 6. 20.
mac 에서 telnet 사용법 맥에서 telnet 을 사용하려고 하는데 기본 명령어로 잡혀있지가 않아있었다. telnet 에 대한 내용은 참고 포스팅을 참고 바란다. 일단 먼저 터미널에서 telnet 을 사용하면 없는 명령어라서 brew를 통해서 설치를 해야한다. brew 관련 역시 참고 포스팅 참고 바란다. telnet 설치 brew install telnet 명령어 실행 참고 포스팅 https://thenicesj.tistory.com/213 리눅스 네트워크 명령어 이번 포스팅에서는 리눅스 내에서 네트워크를 다룰때 자주 사용하는 명령어를 정리해볼 것이다. ifconfig ifconfig는 interface config 의 약자로 비슷하게 윈도우에서는 ipconfig 라는 명령어를 사용하기 thenicesj.tistory.com h.. 2023. 6. 19.
JVM 내에 저장되어있는 데이터 위치 값 확인 자바를 사용한다면 JVM 이 뭔지 알것이라고 생각이 되지만 혹시 좀더 이해가 필요하면 아래 참고 포스팅을 참고 바란다. 자바에서 만약 String text = "A"; 이라고 선언을 하면 jvm 메모리 어딘가에 text 값을 저장하고 있는 위치가 있다. 그 것을 확인하기 위해서는 아래와 같이 사용을 한다. System.identityHashCode(text)); 자세히 보면 hashcode라는 글이 있는데 아래 참고 포스팅을 확인하면 도움이 될것이다. 사용을 하면 실제 물리적인 jvm 의 메모리 위치 주소가 출력이 된다. hashcode와 identityHashCode 둘의 차이는 Object의 hashCode() 메소드는 하위 클래스에서 override가 가능하기 때문에 객체마다 유일한 값을 갖고 있지.. 2023. 6. 18.
maven 강제 업데이트 maven 에 대해서는 아래 참고 포스팅을 참고 바란다. IDE를 사용할 경우엔 update maven이라는 버튼이 존재하였고, 해당버튼을 누르게 되면 settings.xml 을 참고하여 repository에서 pom.xml에 적혀있는 라이브러리 들을 가져오게 된다. 그리고 나서 ide에서 build를 진행하겠지만 터미널이나 ide를 통하지 않는 곳에서 빌드를 진행 전에 maven update 를 하려고 한다면 아래명령어를 사용하여 가능하다. mvn clean install -U 참고 포스팅 https://thenicesj.tistory.com/197 빌드 관리도구 Maven / Gradle Spring 을 사용하게 되면 프로젝트 생성시 빌드 도구를 maven이나 gradle 중에 하나를 선택하게 된다... 2023. 6. 17.
Optional – orElse() 와 orElseGet() 이전 포스팅에서 Optional 에 대한 내용을 다룬적이 있다. 자세한 내용은 아래 참고 포스팅 참고 바란다. Optional 은 결국엔 NPE 를 해결하기 위해서 생겨났고, 만약 Null일 경우엔 default 값을 넣어줄수 있는 개념으로 만들어진 함수가 바로 이 orElse / orElseGet 이다. 결국 둘다 null일때 default 를 받을건데 둘의 차이는 어떤것인지 확인해보면 orElse() : T 클래스를 인수로 받음 orElseGet() : T 클래스를 상속받은 하위 클래스를 return해주는 Supplier 함수 인터페이스를 받음 좀더 이해하기 쉽게 예시를 들어서 설명하면 다음과 같다. orElse Optional text = "a"; Sting bb = text.orElse(testM.. 2023. 6. 16.
[eclipse] Ant 란? 현재는 빌드 관련해서는 maven 과 gradle 을 주로 사용하곤 한다. 이 둘에 대해서는 아래 참고 포스팅을 참고 바란다. 현재는 아니지만 maven 과 gradle 이전에는 Apache Ant 를 통해서 빌드도 인기가 있었었다. https://ant.apache.org/ Apache Ant - Welcome Welcome Apache Ant™ Apache Ant is a Java library and command-line tool whose mission is to drive processes described in build files as targets and extension points dependent upon each other. The main known usage of Ant is .. 2023. 6. 15.
Java 에서의 정규 표현식 정규표현식에 대한 정의는 이전 포스팅에서도 많이 다룬적이 있기에 해당 참고 포스팅을 참고 하면 도움 될것이다. 이전 포스팅에서는 파이선에 대한 포스팅이 주를 이뤘는데 이번 포스팅에서는 자바에서의 정규 표현식을 정리 해보려고 한다. 자바에서 정규표현식을 사용하기 위해서는 java.util.regex 에 있는 클래스를 사용하게 되고 주로 Pattern / Matcher 를 사용하게 된다. Pattern은 matches() 메서드를 지원한다. 주어진 패턴이 주어진 정규 표현식에 일치하는지 체크를 한다. 아래와 같이 사용이 된다. String pattern = "^[0-9]*$"; // 숫자만 String str = "123123"; boolean result = Pattern.matches(pattern, s.. 2023. 6. 14.
반응형