반응형

spring 6

[ spring ] 예제 - 회원관리 : 웹 MVC 개발

저번에는 멤버 컨트롤러와 의존관례를 설정했다. (아래링크) https://haena02.tistory.com/167 [ spring ] 예제 - 회원 관리 : 도메인, 리포지토리, 서비스, 테스트케이스 1. 비지니스 요구사항 정리 데이터: 회원ID, 이름 기능: 회원 등록, 조회 아직 데이터 저장소(DB)가 선정되지 않음(가상의 시나리오) 컨트롤러: 웹 MVC의 컨트롤러 역할 서비스: 서비스의 핵심 비지 haena02.tistory.com https://haena02.tistory.com/172 [ spring ] 스프링 빈과 의존관계, 예제 - 회원관리 : 의존관계 설정 스프링 빈을 동록하고, 의존관계 설정하기 리포지토리랑 서비스를 다 만들고 화면을 붙이고 싶다면 컨트롤러와 뷰 템플릿이 필요하다. 멤버..

[ spring ] 스프링 빈과 의존관계, 예제 - 회원관리 : 의존관계 설정

스프링 빈을 동록하고, 의존관계 설정하기 리포지토리랑 서비스를 다 만들고 화면을 붙이고 싶다면 컨트롤러와 뷰 템플릿이 필요하다. 멤버 컨트롤러를 만들게 되면 이 컨트롤러는 멤버서비스를 통해서 회원가입하고 데이터를 조회할 수 있어야한다. 이 경우에 멤버 컨트롤러가 멤버 서비스를 의존한다고 표현한다. 스프링이 뜰 때 컨트롤러의 객체를 생성해서 스프링이 가지고있다. 이를 스프링 빈을 관리한다고 표현한다. 스프링은 스프링 컨테이너에 스프링 빈을 등록할 때, 유일하나 하나만 등록해서 공유한다.(싱글톤) 같은 스프링빈이면 모두 같은 인스턴스이다. 1 컨포넌트 스캔방식 스프링이 서비스, 리포지토리, 컨트롤러 들을 관리 할 수 있으려면 각각 @Service, @Repository, @Controller 를 명시 해줘야..

[ spring ] 예제 - 회원 관리 : 도메인, 리포지토리, 서비스, 테스트케이스

1. 비지니스 요구사항 정리 데이터: 회원ID, 이름 기능: 회원 등록, 조회 아직 데이터 저장소(DB)가 선정되지 않음(가상의 시나리오) 컨트롤러: 웹 MVC의 컨트롤러 역할 서비스: 서비스의 핵심 비지니스 로직이 들어있음 (ex.로그인 횟수제한) 리포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인: 비지니스 도메인 객체 (ex. 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨) 데이터 저장소가 선정되지 않아서, 우선 인터페이스로 구현 클래스를 변경할 수 있도록 설계 (데이터 저장소는 RDB, NoSQL 등 고민중인 상황으로 가정) 초기 개발 단계에서는 구현체로 가벼운 메모리 기반의 데이터 저장소 사용 2. 회원 도메인과 리포지토리 만들기 //멤버클래스 packag..

[ Spring ] 스프링 웹 개발 기초 : 정적컨텐츠, MVC와 템플릿엔진, API

웹 개발을 하는데에는 세가지 방식 정적컨텐츠, MVC와 템플릿엔진, API로 세가지 방식이 있다. 1. 정적 컨텐츠 정적 컨텐츠 - 서버에서 하는거 없이 파일을 웹브라우저에 내려주는 것 이를 위해서는 위에 그림처럼 static 파일에 html파일을 생성해주면 된다. 정적 컨텐츠 입니다. 실제로 아래와 같은 코드로 hello-static.html 파일을 생성하고 localhost:8080/hello-static.html 로 들어가보면 아래 사진과 같이 html 코드에 대한 결과가 그대로 나오게 된다. 원리를 살펴보자. 웹 브라우저에서 주소를 입력하면 내장 톰켓 서버가 스트링 컨테이너로 넘긴다. 스트링 컨테이너에서는 관련 컨트롤러가 있나 확인을 해보고 없으면 파일을 찾아서 웹 브라우저로 넘긴다. 2. MVC..

[ Spring ] Welcome Page 만들기 및 컴파일

컨트롤러에서 리턴 값으로 문자를 반환하면 뷰 리졸버( viewResolver )가 리턴값과 같은 파일를 찾아서 처리한다. resources:templates/ +{ViewName}+ .html 현재 컨트롤러에서 hello를 리턴하고 있어, 이를 실행하면 hello.html이 실행이된다. @Controller public class HelloController { @GetMapping("hello") public String hello(Model model) { model.addAttribute("data", "hello!!"); return "hello"; } } 안녕하세요. 손님 위와 같이 두개의 코드를 작성한 뒤 locallhost:8080/hello로 들어가면 " 안녕하세요. Hello! " 라고 ..

[ Spring ] 환경설정

자바는 JAVA 11, IDE는 IntelliJ를 사용할 것이다. https://start.spring.io/ 위 사이트에서 아래와 같이 세팅을 하고 build.gradle 를 IntelliJ로 불러온다. 잘 불러왔다면 아래와같이 파일이 뜰 것이다. 파일에서 메인을 실행시키면 http 포트 8080이 열렸다고 뜰 것이다. http://localhost:8080/ 로 들어가보면 아래와 같이 뜨는데, 아직 아무것도 안해줬기에 정상이다. 오늘은 간단한 세팅만을 해보았고 다음부터는 공부를 해볼것이다!

반응형