본문 바로가기

Spring52

Spring 기본편 시작 이번 스프링 기본편 목표입니다. member 패키지를 생성하고 ENUM으로 Grade(회원등급) 선언해줍니다. member 패키지 안에 class Member 만들고 , 생성자, getter, setter 설정해줍니다. package hello.core.member; public class Member { private Long id; private String name; private Grade grade; //생성자와 getter, setter를 생성해준다. public Member(Long id, String name, Grade grade) { this.id = id; this.name = name; this.grade = grade; } public Long getId() { return id;.. 2022. 3. 14.
회원관리예제 웹MVC 개발 오늘은 회원관리 웹MVC와 스프링 DB접근기술에 대해 공부했다. 회원 웹 기능 - 홈 화면 추가 controller 패키지안에 HomeController 클래스를 만든다. @Controller public class HomeController { @GetMapping("/") public String home() { return "home"; } } home으로 return 하기 때문에 home.html 파일을 templates 패키지안에 만들어준다. Hello Spring 회원 기능 회원 가입 회원 목록 실행후 localhost:8080에 들어가면 이런 창이 나오게된다. MemberController에 이 코드를 추가한다. @GetMapping("/members/new") public String cr.. 2022. 1. 23.
스프링 빈과 의존관계 컴포넌트 스캔과 자동 의존관계 설정 controller 패키지 안에 MemberController를 만든다. @Controller public class MemberController { private final MemberService memberService; @Autowired public MemberController(MemberService memberService) { this.memberService = memberService; } } 생성자에 @Autowired를 붙이면 스프링이 컨테이너에 있는 Memberservice와 연결해준다. 하지만 이렇게 하면 오류가 발생하는데, 스프링 컨테이너에 memberService가 빈으로 등록되어있지 않기 때문이다. 해결하기 위해서는 MemberServ.. 2022. 1. 20.
스프링 입문 - 회원 관리 예제, 백엔드 개발 비즈니스 요구사항 정리 데이터 : 회원ID, 이름 기능 : 회원 등록, 조회 아직 데이터가 저장소가 선정되지 않음(가상의 시나리오) 컨트롤러 : 웹 MVC의 컨트롤러 역할 서비스 : 핵심 비즈니스 로직 구현 리포지토리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인 : 비즈니스 도메인 객체, 예) 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨 아직 데이터 저장소가 선정되지 않아서, 우선 인터페이스로 구현 클래스를 변경할 수 있도록 설계 데이터 저장소는 RDB, NoSQL 등등 다양한 저장소를 고민중인 상황으로 가정 개발을 진행하기 위해서 초기 개발 단계에서는 구현체로 가벼운 메모리 기반의 데이터 저장소 사용 domain 패키지를 만들고 Member class를 생성한다... 2022. 1. 19.
스프링 입문 - 스프링 웹 개발 기초 정적 컨텐츠 정적 컨텐츠 입니다. 정적 컨텐츠 방식은 resources의 static폴더안의 html 파일을 그대로 웹브라우저에 반환한다. MVC와 템플릿 엔진 HelloController 부분이다. @GetMapping("hello-mvc") public String helloMvc(@RequestParam("name") String name, Model model){ model.addAttribute("name", name); return "hello-template"; } MVC와 템플릿 엔진 방식은 Controller에서 hello-template을 리턴하고, viewResolver(화면과 관련된 해결자, 뷰를 찾아주고 템플릿 엔진에 연결시켜줌)가 hello-template으로 이동하여 템플릿 엔.. 2022. 1. 18.
Spring(진짜 시작.) 오늘부터 김영한 팀장님 인프런 스프링 입문 - 스프링 기본 - 스프링 백엔드 MVC 1편인가 쭉 들을 예정 스프링은 왜 들어도 이해가 안될까 프로젝트 생성 스프링 부트 스타터 사이트로 이동해서 스프링 프로젝트 생성 https://start.spring.io Project : Maven -> Gradle로 많이 갈아타는 추세기 때문에 Gradle 선택 Spring Boot : SNAPSHOT은 현재 개발중이라는 뜻으로 스냅샷이 아닌 가장 최신의 버전 선택 Project Metadata는 본인 마음대로 Dependencies가 중요한데 Spring Web이랑 html 파일을 생성해주는 Thymeleaf를 ADD 한다. Generate를 누르면 zip 파일을 다운받고 이 zip 파일을 원하는 폴더에 넣고 in.. 2022. 1. 16.