본문 바로가기

Web/Spring8

[Spring] AOP 스프링 - AOP 참고 강의: 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술(김영한,인프런) AOP가 필요한 상황 모든 메소드의 호출 시간을 측정하고 싶다면? 공통 관심 사항(cross-cutting concern) vs 핵심 관심 사항(core concern) 회원 가입 시간, 회원 조회 시간을 측정하고 싶다면? AOP 적용 AOP: Aspect Oriented Programming 공통 관심 사항(cross-cutting concern) vs 핵심 관심 사항(core concern) 분리 [시간 측정 AOP 등록] 회원가입, 회원 조회등 핵심 관심사항과 시간을 측정하는 공통 관심 사항을 분리 시간을 측정하는 로직을 별도의 공통 로직으로 만듬 핵심 관심 사항을 깔끔하게 유지할.. 2022. 12. 5.
[Spring] 스프링 DB 접근 기술 스프링 - 스프링 DB 접근 기술 참고 강의: 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술(김영한,인프런) H2 데이터베이스 설치 개발이나 테스트 용도로 가볍고 편리한 DB, 웹 화면 제공 설치 : https://www.h2database.com [터미널] [테이블 생성] gerberated by default : 자동으로 db가 id 값을 넣어줌 pk는 id로 넣은 상태 대소문자 구별이 없는듯함 이렇게 하면 h2에서처럼 sql문을 사용해서 db에 접근이 가능함 항상 터미널로 h2는 실행시켜놀것 // 순수 JDBC ~ 스프링 JdbcTemplate는 15년전의 기술이므로 강의만 가볍게 보고 넘김 JPA JPA는 기존의 반복 코드는 물론이고, 기본적인 SQL도 JPA가 직접 만.. 2022. 11. 4.
[Spring] 회원 관리 예제 - 웹 MVC 개발 스프링 - 회원 관리 예제 / 웹 MVC 개발 참고 강의: 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술(김영한,인프런) 회원 웹 기능 - 홈 화면 추가 우선순위가 있어서 컨트롤러에서 "/"이라는 기본 페이지가 있으면 먼저 페이지 로드됨 이후 컨트롤러에도 없을 경우에 static에서 찾아서 페이지를 로드하는 것 회원 웹 기능 - 등록 get과 post의 url은 같지만 방식이 다르기때문에 스프링이 해석 가능 회원 웹 기능 - 조회 th:each : 문법 -> 반복문 2022. 11. 3.
[Spring] 스프링 빈과 의존관계 스프링 - 스프링 빈과 의존관계 참고 강의: 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술(김영한,인프런) 컴포넌트 스캔과 자동 의존관계 설정 회원 컨트롤러가 회원 서비스와 회원 리포지토리를 사용할 수 있게 의존관계를 준비하는 과정 [회원 컨트롤러에 의존관계 추가] MemberController 생성 @Controller 입력 -> 자동으로 모듈도 import 해줌 여기까지 하면 MemberController 객체를 생성할 수 있음 -> '스프링 빈이 관리된다'라고 표현 생성자에 @Autowired가 있으면 스프링이 연관된 객체를 스프링 컨테이너에서 찾아서 넣어줌 이렇게 객체의존관계를 외부에서 넣어주는 것을 DI(Dependency Injection), 의존성 주입이라 함 이전.. 2022. 11. 2.
[Spring] 회원 관리 예제 - 백엔드 개발 스프링 - 회원 관리 예제 - 백엔드 개발 참고 강의: 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술(김영한,인프런) 비즈니스 요구사항 정리 데이터 : 회원ID, 이름 기능 : 회원 등록, 조희 아직 데이터 저장소가 선정되지 않음(가상의 시나리오) [일반적인 웹 애플리케이션 계층 구조] 컨트롤러 : 웹 MVC의 컨트롤러 역할 서비스 : 핵심 비즈니스 로직 구현 리포지토리 : 디비에 접근, 도메인 객체를 DB에 저장하고 관리 도메인 : 비즈니스 도메인 객체, ex) 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리 됨 [클래스 의존관계} 아직 데이터 저장소가 선정되지 않아서, 우선 인터페이스로 구현 클래스를 변경할 수 있도록 설계 데이터 자장소는 RDB, NoSQL 등등.. 2022. 10. 31.
[맥os] 단축키 command + shift + . = 숨긴파일보기 / 확장자볼때 사용 2022. 10. 26.
[Spring] 웹 개발 기초 스프링 - 웹 개발 기초 참고 강의: 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술(김영한,인프런) 정적 컨텐츠 스프링 부트 정적 컨텐츠 기능 파일을 그대로 웹 브라우저에 보여주는 것 docs.spring.io에서 static content 검색 : http://docs.spring.io/spring-boot/docs/2.3.1.RELEASE/reference/html/spring-boot-features.html#boot-features-spring-mvc-static-content 동작 확인 : (실행) http://localhost:080/hello-static.html MVC와 템플릿 엔진 MVC : Model, View, Controller ex) JSP 예전에는 V+.. 2022. 10. 24.
[Spring] 프로젝트 환경설정 스프링 - 프로젝트 환경설정 참고 강의: 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술(김영한,인프런) // 아직 인텔리제이 셋팅이 안되서 내일 라이센스 넣고 셋팅 후 사진 첨부 할 예정 사전 준비 java 11 버전 설치 : JDK 11.0.17(설치완료) IDE : IntelliJ or Eclipse (IntelliJ 설치완료) 스프링 부트 스타터 사이트 : http://start.spring.io // 예전에는 직접 코딩을 했지만 요즘은 해당 사이트를 통해서 기본적인 시작 코드를 제공해 줌 프로젝트 선택 project : gradle project spring boot : 2.3.x language : java packaging : jar java : 11 Project .. 2022. 10. 24.
반응형