일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Spring
- Java의정석
- DispatcherServlet
- JPA
- 김영한
- Python
- 자바공부
- 불친절한 SQL 프로그래밍
- 스프링MVC
- 시큐어코딩
- 스프링입문
- java
- 자바의정석
- 제네릭
- 자바의정석 연습문제
- 계층 쿼리
- 스프링
- 이것이자바다
- 인프런
- 자바연습문제
- REGEXP_SUBSTR
- 서블릿
- 스프링 핵심원리
- Numpy
- 분석함수
- inflearn
- 스프링 부트와 JPA
- Secure Coding
- docker
- 불친절한SQL프로그래밍
- Today
- Total
목록인프런 (47)
Continuous Challenge
1. H2 Database 설치하기 주의! h2 데이터베이스는 꼭 다음 링크에 들어가서 1.4.200 버전 설치 최근에 나온 2.0.206 버전을 설치하면 일부 기능이 정상 동작하지 않음 https://www.h2database.com/html/download-archive.html 파일 압축 해제 후 h2/bin 폴더로 가서 h2.sh 파일 실행(파일 권한 변경 필요) 2. 순수 JDBC 개방-폐쇄 원칙(OCP, Open-Closed Principle) 확장에는 열려있고, 수정, 변경에는 닫혀있다. 스프링의 DI (Dependencies Injection)을 사용하면 기존 코드를 전혀 손대지 않고, 설정만으로 구현 클래스를 변경할 수 있다. 3. 스프링 통합 테스트 @SpringBootTest : 스프..
스프링 빈을 등록하는 방법 1. 컴포넌트 스캔과 자동 의존관계 설정 2. 자바 코드로 직접 스프링 빈 등록하기 컴포넌트 스캔 원리 - @Component 애노테이션이 있으면 스프링 빈으로 자동 등록된다. - @Controller 컨트롤러가 스프링 빈으로 자동 등록된 이유도 컴포넌트 스캔 때문이다. - @Component 를 포함하는 다음 애노테이션도 스프링 빈으로 자동 등록된다. . @Controller . @Service . @Repository 기본적으로는 main() 을 포함한 패키지 하위의 컴포넌트에 대해서만 스캔이 이루어진다. 스프링은 스프링 컨테이너에 스프링 빈을 등록할 때, 기본으로 싱글톤으로 등록한다(유일하게 하나만 등록해서 공유한다) 따라서 같은 스프링 빈이면 모두 같은 인스턴스다. (..
일반적인 웹 애플리케이션 계층 구조 컨트롤러: 웹 MVC의 컨트롤러 역할 서비스: 핵심 비즈니스 로직 구현 리포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인: 비즈니스 도메인 객체, 예) 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨 인텔리제이 단축키(Mac) cmd + option + Enter : Import shift + F6 : 변수 명 일괄 변경 코드 라인 선택 & cmd + option + V : 변수 생성 코드 블럭 선택 & cmd + option + M : 함수 생성 class 이름 선택 & cmd + shift + T : 테스트 클래스 생성 코드 블럭 선택 & cmd + option + / : 주석
더보기 스프링 웹 개발 기초 1. 정적 컨텐츠 - 파일을 그대로 웹 브라우저에 내려주는 것 2. MVC와 템플릿 엔진 - 가장 많이 하는 방식. - JSP, PHP : 대표적인 템플릿 엔진 - 서버에서 변형해서 뷰에 내려주는 것 3. API - json 데이터 구조 포맷으로 클라이언트에 전달 - Vue.js, React를 사용할 때에 많이 사용 - 서버끼리 전송할 때 1. 정적 컨텐츠 - 스프링 부트 정적 컨텐츠 기능 https://docs.spring.io/spring-boot/docs/current/reference/html/web.html#web.servlet.spring-mvc.static-content 1) 호출된 뷰와 관련된 컨트롤러가 있는지 확인 2) 내부(resource)에 있는 html ..
cd /build/libs java -jar {배포 파일}.jar 4. Build 실행하기 1) Build (Mac) ./gradlew build 2) jar 파일 실행 cd /build/libs java -jar hello-spring-0.0.1-SNAPSHOT.jar 3) 실행 확인
3. View 환경설정 1. main > resources > static > index.html 파일 생성 2. 작성 후 서버 Restart - 스프링 부트가 제공하는 Welcome Page 기능 . static/index.html 을 올려두면 Welcome page 기능을 제공한다. thymeleaf 템플릿 엔진 - thymeleaf 공식 사이트: https://www.thymeleaf.org/ - 스프링 공식 튜토리얼: https://spring.io/guides/gs/serving-web-content/ - 스프링부트 메뉴얼: https://docs.spring.io/spring-boot/docs/current/reference/html/web.html#web.servlet.spring-mvc.t..
2. 라이브러리 살펴보기 1) 스프링 부트 라이브러리 - spring-boot-starter-web . spring-boot-starter-tomcat: 톰캣 (웹서버) . spring-webmvc: 스프링 웹 MVC - spring-boot-starter-thymeleaf: 타임리프 템플릿 엔진(View) - spring-boot-starter(공통): 스프링 부트 + 스프링 코어 + 로깅 . spring-boot .. spring-core . spring-boot-starter-logging .. logback, slf4j - slf4j : 일종의 인터페이스. - logback : 어떤 구현체로 로그를 출력할 것인가. 성능도 빠르고 지원해주는 부분이 많아 두 가지 조합을 함께 사용하는 경우가 많아져 ..