본문 바로가기

전체 글290

2022.10.17. § 학습 전(계획) ▶ 학습 목표는 무엇인가? Spring Framework의 핵심 개념 AOP(Aspect Oriented Programming) ▶ 이미 알고 있는 내용은 무엇인가? AOP에 관한 내용들은 저번에 아주 얕게 다뤄보았다. 오늘 자세히 다룰 것이므로, 집중해서 학습해야겠다. ㅎㅇㅌ!! § 학습 후(점검 및 평가) ▶ 새롭게 배운 내용은 무엇인가? AOP가 필요한 이유와 어떻게 적용할 수 있는지에 대해 새롭게 알게 되었다. ▶ 다른 사람에게 설명할 수 있는가? 아직 AOP의 모든 파트를 학습하지 못했기 때문에, 아직 설명은 불가능할 것 같다. ▶ 아직 이해되지 않은 내용은 무엇인가? 내용들이 아직 두루뭉실하게 이해된 느낌이다. ▶ 이해되지 않은 내용을 보완하기 위해서 나는 무엇을 할 수 있.. 2022. 10. 17.
스프링 DB 접근 기술 순수 JDBC 기술 작성해야 하는 쿼리 코드가 어마어마하다. 스프링 JDBC 템플릿 순수 JDBC 기술을 이용할 때보다 반복되는 코드가 줄어들지만, 똑같이 SQL을 직접 작성해야 했다. JPA 기본적인 CRUD 기능에서 쿼리를 작성할 필요는 없었다. (물론 select 해야할 때 JPQL을 짜야) 스프링 데이터 JPA 구현 클래스를 작성할 필요 없이, 인터페이스만으로 개발이 끝난다. (기본적으로 findByName(), findByEmail() 메서드를 제공해줌) + 간략한 스프링의 DB 접근 기술을 나열했고, 이후 자세한 학습을 할 때마다 내용을 추가할 예정. 2022. 10. 17.
배열 내용 출력하기 배열의 내용들을 출력하기 위해서, toString() 메서드를 이용하면 주소값이 나온다. 그렇기 때문에, Arrays의 API를 사용해주어야 한다. (전 자주 헷갈립니다..😅) 2022. 10. 14.
2022.10.14. § 학습 전(계획) ▶ 학습 목표는 무엇인가? Spring Framework의 핵심 개념 DI(Dependency Injection) ▶ 이미 알고 있는 내용은 무엇인가? 오늘은 어제 학습하다 말았던 DI를 마저 학습한다. 오늘로 DI 내용들이 끝이 나는데, 잘 집중해서 DI에 관련된 내용들을 잘 마무리할 수 있었으면 좋겠다. 내일 주말이라고 미루지 말자! 화이팅!💪 § 학습 후(점검 및 평가) ▶ 새롭게 배운 내용은 무엇인가? Java 기반 컨테이너 설정과 Component Scan에 대해 새롭게 학습했다. ▶ 다른 사람에게 설명할 수 있는가? 설명은 아직 불가능할 것 같다. ▶ 아직 이해되지 않은 내용은 무엇인가? 오늘 배운 내용 중 이해한 내용이 거의 없다..😭 ▶ 이해되지 않은 내용을 보완하기 위.. 2022. 10. 14.
2022.10.13. § 학습 전(계획) ▶ 학습 목표는 무엇인가? Spring Framework의 핵심 개념 DI(Dependency Injection) ▶ 이미 알고 있는 내용은 무엇인가? 지난 번에 DI에 대해서 간단하게 학습했었다. 오늘은 하루 종일 DI에 대해서 학습할 건데, 그만큼 중요한 내용인 것 같다. 중요한 내용인 만큼, 꼼꼼히 봐야겠다. 힘내자 오늘도! § 학습 후(점검 및 평가) ▶ 새롭게 배운 내용은 무엇인가? DI에 대해 새롭게 학습했다. 스프링 컨테이너, 빈, 그리고 빈 스코프에 대해 학습했다. 마지막으로, 싱글톤 실습을 진행했다. ▶ 다른 사람에게 설명할 수 있는가? 오늘 배운 내용이 결코 쉽지 않았다... 오늘 배운 내용을 다른 사람에게 설명하는 건 아직 어렵다. ▶ 아직 이해되지 않은 내용은 무.. 2022. 10. 13.
2022.10.12. § 학습 전(계획) ▶ 학습 목표는 무엇인가? Spring Framework 기본 Spring Framework 모듈 구성 - 아키텍처 Spring Boot ▶ 이미 알고 있는 내용은 무엇인가? 아키텍처 측면에서 보는 Spring Framework의 모듈 구성은 처음 배우고, Spring Boot에 대해서는 익히 들어봤다. Spring Boot의 간단한 소개를 학습할 것 같으므로, 가벼운 마음으로 학습하고, 어제 학습한 Spring Framework의 특징들에 대해서 다시 봐야겠다. 오늘도 화이팅! § 학습 후(점검 및 평가) ▶ 새롭게 배운 내용은 무엇인가? 아키텍처가 무엇인지, 웹 어플리케이션을 위한 아키텍처에서 계층형 아키텍처가 무엇인지에 대해 새롭게 알게 되었다. Spring Boot란 무엇이고,.. 2022. 10. 12.
2022.10.11. § 학습 전(계획) ▶ 학습 목표는 무엇인가? Spring Framework 기본 Spring Framework의 소개와 특징 ▶ 이미 알고 있는 내용은 무엇인가? Spring Framework이 무엇인지에 대해서는 학습했었다. 자세한 내용을 학습하지는 않았기에, 이번 학습을 계기로 개념을 완전히 정립할 수 있겠다. 연휴 동안 잘 쉬었으니, 이번 한 주도 열심히 달려보자! 화이팅!💪 § 학습 후(점검 및 평가) ▶ 새롭게 배운 내용은 무엇인가? 1. Framework와 Library의 차이 Framework는 어플리케이션 흐름의 주도권이 Framework에 있고, Library는 어플리케이션 흐름의 주도권이 개발자에게 있다. 2. Spring Framework의 특징 POJO(Plain Old Java .. 2022. 10. 11.
빌드 시, '--warning-mode all' 경고 빌드 시, 다음과 같은 콘솔 창에 다음과 같은 경고 문구를 마주했다. 구글링을 해본 결과, 단순 경고 메시지로, Gradle의 버전을 올려주어야 해결이 되고, 만약 버전 업을 시켜주고 싶지 않다면, 경고 메시지를 무시하는 방법으로 해결할 수 있다고 한다. 구글링을 통해 알아낸 해결 방법(경고 메시지 무시 방법)은 다음과 같다. Settings → Builde, Execution, Deployment → Gradle-Android Compiler → Commend-line Options에 --warning-mode all를 입력 → Apply, OK 순서대로 클릭 or Settings → Builde, Execution, Deployment → Compiler → Java Compi.. 2022. 10. 11.
바빌로니아 법의 점화식을 이용한 제곱근의 근삿값 찾기 다음 코드를 통해 예시를 살펴보자. public class Solution { public String computeSquareRoot(int num) { // 바빌로니아 법 정밀도 상수 (높을수록 정밀해짐) final int PRECISION = 10; double x = PRECISION; for (int i = 0; i < PRECISION; i++) { x = 0.5 * (num / x + x); } // 바빌로니아 법을 통한 제곱근을 소수점 두 자리까지 반환 return String.format("%.2f", x); } } 여기서, PRECISION 변수가 높은 수를 가질수록, 근삿값의 정밀도는 올라간다. 또, 바빌로니아 법의 점화식은 다음 코드 구문이라고 생각하면 된다. x = 0.5 * (n.. 2022. 10. 11.