컴퓨터/Spring Boot (25) 썸네일형 리스트형 [TIL] Spring Boot(intellij) - 스프링 빈과 의존 관계 * 인프런 김영한 강사님의 스프링 입문 강의 정리 회원 컨트롤러가 회원 서비스와 리포지토리를 사용할 수 있으려면 그들 사이를 엮어주는 무언가가 필요하고 이 때 사용하는 것이 바로 스프링 빈이다. 스프링 빈을 등록하는 방법은 컴포넌트 스캔과 직접 코드로 등록하는 두 가지 방법이 있다. 1. 컴포넌트 스캔 - 컴포넌트 스캔은 @Component 어노테이션이 있으면 스프링 빈으로 자동 등록된다. - @Controller, @Service, @Repository 등은 @Component를 포함하므로 스프링 빈으로 자동 등록된다. [controller] @Controller public class MemberController { ... } [service] @Service public class MemberSe.. [TIL] Spring Boot(intellij) - 회원 관리 개발(2) - 테스트 구현 * 인프런 김영한 강사님의 스프링 입문 강의 정리 지난 강의에서 작성한 리포지토리와 서비스에 대해 각각 테스트 케이스를 작성한다. 테스트는 src/test/java의 하위 폴더에 생성하며 main의 구조를 그대로 가져온다. 자바는 JUnit 프레임 워크로 테스트를 실행한다. JUnit? - java에서 단위테스트(unit test)를 지원해주는 프레임워크 - assert()로 테스트 판별 - 테스트 어노테이션을 제공한다. ex) @Test, @Before.. ** ctrl+shift+T - 테스트 클래스 파일을 자동으로 생성해준다. ▶ 리포지토리(memoryMemberRepository) 테스트 package myStudyspring.myStudyspring.repository; import myStud.. [TIL] Spring Boot(intellij) - 회원 관리 개발(1) * 인프런 김영한 강사님의 스프링 입문 강의 정리 회원 관리 백엔드 개발을 진행하였다. 회원관리 도메인, 리포지토리, 서비스, 테스트 케이스 등을 생성하여 실행해 보았다. 현재 DB를 설정하지 않았으므로 우선 인터페이스로 구현 클래스를 변경할 수 있도록 설계한다.(데이터 저장소를 사용) ▶ 웹 계층 구조 컨트롤러 -> 서비스->리포지토리->DB 도메인 컨트롤러 : 컨트롤러의 역할 서비스 : 핵심 비즈니스 로직을 구현한다. 리포지토리 : DB에 접근하여 도메인 객체를 DB에 저장하고 관리한다. 도메인 : 비즈니스 도메인 객체 예제에서는 domain - member service - MemberService repository - memberRepository(interface), memoryMemberRe.. [TIL] Spring Boot(intellij) - 템플릿 엔진과 API * 인프런 김영한 강사님의 스프링 입문 강의 정리 스프링의 가장 기초인 정적 페이지, 템플릿엔진을 이용한 동적 페이지 그리고 MVC 패턴과 API를 공부하였다. ▶ 정적 페이지 - resources/static 하위에 html 파일을 생성 - 스프링 컨테이너에서 관련 컨트롤러가 없으면 resources: static하위의 html 파일을 찾아 웹 브라우저에 전송한다. ▶ MVC 패턴과 템플릿 엔진 MVC 패턴? - 디자인 패턴 중 하나로 Model, View, Controller의 약자이다. - 프로젝트 구성요소를 세가지의 역할로 구분한 패턴이다. - Model : 애플리케이션의 정보 - View : 사용자 인터페이스 요소 - Controller : Model과 View를 연결하는 역할, 이벤트 처리 -.. [TIL] Spring Boot(intellij) - 프로젝트 생성 우선 intellij를 사용할 것이므로 설치하고 프로젝트 환경설정을 하였다. ▶ spring 프로젝트 생성 https://start.spring.io 에서 스프링 프로젝트를 생성한다. myStudy-spring으로 프로젝트 명을 정하고 build tool은 gradle로 하였다. 의존성도 추가할 수 있는데 웹 애플리케이션을 만들것이므로 spring web과 html 화면 템플릿을 위한 thymeleaf를 추가하였다. 확실히 sts를 사용하여 프로젝트를 생성할 때보다 훨씬 간단한 방식으로 스프링 프로젝트 생성을 할 수 있었다. ▶ source tree - 깃 연동 다음과 같이 git에 repositoy를 생성하고 sourcetree에 clone 하여 깃에 연동하였다. ▶ welcome page 생성 jav.. [TIL] Spring Boot(intellij) - start (스프링 입문 강의 정리) 스프링부트는 1년간 회사에서 일을 하며 사용했던 경험이 있다. 그만두고 혼자서 프로젝트를 따보려했는데 생각보다 쉽지 않았다. 회사에서 일할 당시 거의 세팅되어있는 환경에서 페이지 처리만 했었기 때문에 혼자 프로젝트를 시작해보려했으나 왜 이런 기능을 써야하는지도 제대로 이해하지 못한 채 구글링에 의존(?)하여 어거지로 프로젝트를 따려고 하는 나의 모습에 현타가 왔다.. (심지어 꼬여서 제대로 완성도 하지 못했다. 틈날 때마다 해결 중이다..) 그러던 중 김영한 강사님의 스프링 강의가 매우 평이 좋다는 것을 알게 되었다. 로드맵도 정리가 잘 되어 있었고 이 강의를 통해서 내가 그동안 가지고 있던 많은 궁금증들이 해소될 것 같아 듣기로 결심하였다. 입문 강의는 무료인데 첫 강의 몇개를 들어보고 알게 된 것은 .. STS (Spring Boot) 게시판 CRUD_3. Bootstrap 적용과 SiteMesh 설정 나의 초라한 실력으로는 게시판을 절대로 이쁘게 꾸밀 수 없다는 것을 알기에 부트스트랩을 적용해보았다. Free Bootstrap Themes, Templates, Snippets, and Guides - Start Bootstrap 위 사이트를 이용하였는데, 무료 템플릿이 몇 개 있어서 로그인 한 뒤 마음에 드는 템플릿을 골라 다운받으면 된다. 부트스트랩을 사용하면 별도의 프론트 작업을 할 필요가 없기 때문에 시간이 매우 단축되고 여러 기능들도 포함되어 있어 개발 시 매우 편리하다. 마음에 드는 템플릿을 골라 다운받은 후 압축을 해제하면 다음과 같은 화면을 확인할 수 있다. 여기서 css,img, js,scss,vendor 폴더를 복사하여 그대로 스프링부트에 붙여넣기를 한다. static 폴더에 boot.. STS (Spring Boot) 게시판 CRUD_2. MVC 패턴의 이해와 MyBatis를 이용한 DB 연동 ◎ MVC 패턴이란 모델-뷰-컨트롤러(Model-View-Controller)의 약자로 소프트웨어 공학에서 사용되는 디자인 패턴 중 하나이다. 디자인 패턴이란 "소프트웨어 개발 시 공통적으로 발생하는 문제를 해결하기 위한 해결책"으로 문제 상황에 맞게 쓰이는 템플릿이다. MVC 패턴은 이 중 하나로 응용 프로그램을 세 가지의 요소로 나누어 개발하는 방법론이다. 비즈니스 처리 로직과 사용자 인터페이스를 분리하여 개발하기 때문에 서로 간에 영향을 최소화하여 개발하기 편리하다는 장점이 있기 때문에, 이번 프로젝트에서 MVC 패턴을 사용하였다. 그렇다면, 모델, 뷰, 컨트롤러 각 요소는 어떤 역할을 하는지 살펴보자. ◈ Model - 백그라운드에서 이루어지는 내부 비즈니스 로직을 처리하기 위한 부분으로 어플리케.. 이전 1 2 3 4 다음