본문 바로가기

java13

[2] 간략한 스프링 개요 - AOP 1. AOP 반복되어 사용되는 로직을 분리하여 한 곳에서 보관하고 어디서든 적용할 수 있게 구성하는 것입니다. @Transactional 이 AOP 로 구성되어 있는 어노테이션 중 하나입니다. AOP를 구현할 수 있는 방법은 3가지가 있습니다. 1. 컴파일 시간에 class file을 생성하는 중에 넣어준다 (AspectJ) 2. class file을 실행시는 중에 classLoader가 클래스를 로딩하는 시점에 넣어준다 (AspectJ) 3. 프록시 패턴 - Spring AOP가 사용하는 방식 (디자인 패턴) 2. Proxy Pattern 이 부분은 HFDP 에서도 따로 정리할 계획입니다. refactoring.guru/design-patterns/proxy 프록시 패턴은 말 그대로 "프록시"를 해주는.. 2020. 11. 28.
[1] 간략한 스프링 개요 - IoC 이 레포 를 기반으로 학습합니다. 1. Petclinic 프로젝트 실행 - 해당 레포를 클론 한 후 Intellij를 해당 폴더를 basedir 로 엽니다. - Intellij가 자동적으로 dependency와 plugin들을 설치해줍니다. - Cli에 ./mvnw package를 통해 패키지를 빌드해 줍니다 - maven에 packaging 옵션이 없어서 기본적으로 jar 패키지가 되므로, 빌드하여 생성된 jar 파일을 java로 실행하면 동작합니다. 2. Properties 변경을 통한 환경 설정 src > main > resource 의 application.properties 에서 spring 관련 옵션을 지정해줍니다. # database init, supports mysql too databas.. 2020. 11. 26.
[3] Intellij 에서 기본 maven 프로젝트 시작하기 처음 인텔리제이를 시작하면 다음과 같은 화면이 등장합니다. 오른쪽의 New Project 를 눌러 희망하는 디렉토리에 프로젝트를 생성해봅시다. 만약 원하는 버전의 Java SDK가 없는 경우엔 다음과 같이 SDK를 선택하여 설치해줍니다. 그 후 빌드 도구로 Maven 을 선택한 후 Next 를 눌러줍니다. 여기서 Gradle을 누르면 빌드 툴로 Gradle을 사용하는 것이 됩닌다. 프로젝트의 이름을 지정해주고 프로젝트의 위치를 설정한 후 Finish 를 눌러줍니다. 그럼 다음과 같이 초기 프로젝트가 생성됩니다. 비어있는 src/main/java 폴더에 main 함수를 추가해줍니다. 이제 메인 함수도 만들었겠다, 위 사진의 main 함수 옆의 초록색 실행 버튼을 누르면 당연히 실행이 되겠죠? 라고 생각하는.. 2020. 11. 24.
Java Basic (4) Essential Standard Classes BigInteger long 보다 더 긴 Integer를 저장하기 위해 사용한다. BigInteger number = new BigInteger("62957291795228763406253098"); String 을 이용하여 BigInteger 객체를 선언할 수 있다. 내부적으로 제공되는 메소드만을 사용하여 연산하여야 한다. BigInteger nine = ten.subtract(BigInteger.ONE); // 10 - 1 = 9 BigInteger oneHundredTen = ten.multiply(eleven); // 10 * 11 = 110 BigInteger twelve = oneHundredTen.divide(nine); // integer division: 12 각 메소드를 사용한다고 해서.. 2020. 5. 27.