본문 바로가기

BackEnd304

[스프링 입문] 스프링 DB 접근 기술 공부 내용을 정리하고 앞으로의 학습에 이해를 돕기 위해 작성합니다. H2 데이터베이스 설치https://www.h2database.com/html/main.html  H2 Database EngineH2 Database Engine Welcome to H2, the Java SQL database. The main features of H2 are: Very fast, open source, JDBC API Embedded and server modes; in-memory databases Browser based Console application Small footprint: around 2.5 MB jar file size     Suppwww.h2database.com1. 위 사이트에서 H2 데이.. 2024. 7. 2.
[스프링 입문] 회원 관리 예제 - 웹 MVC 개발 공부 내용을 정리하고 앞으로의 학습에 이해를 돕기 위해 작성합니다.  회원 웹 기능 - 홈 화면 추가컨트롤러와 html을 추가했다. HomeControllerpackage hello.hello_spring.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping;@Controllerpublic class HomeController { @GetMapping("/") public String home() { return "home"; }}@GetMapping을 이용해서 "/"를 연결시킨다. "/"는 도메인의 첫 번째 주소다.이후.. 2024. 7. 1.
[Spring error] Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception 내용 프로젝트 중 Controller와 html을 작성 후 서버를 실행시켰는데 이런 에러가 떴다.  해당 에러는 하나의 url을 여러 개의 컨트롤러에 매핑시켰기 때문에 발생하는 것인데, 처음에는 캐시 문제인 줄 알고 캐시를 삭제했었다. 하지만 문제가 해결되지 않아서 컨트롤러를 하나씩 열어봤는데 예전에 작성한 컨트롤러에 GetMapping을 제대로 작성하지 않아서 생긴 문제였다.   이렇게 수정을 하고 나니 서버가 잘 돌아갔다.  새로 추가한 컨트롤러의 GetMapping은 "/"로 지정했기 때문에 url이 중복된 것 같다. 앞으로는 코드 작성할 때 좀 더 꼼꼼하게 봐야겠다. 2024. 7. 1.
[스프링 입문] 회원 관리 예제 - 스프링 빈과 의존관계 공부 내용을 정리하고 앞으로의 학습에 이해를 돕기 위해 작성합니다. 스프링 빈을 등록하는 방법에는 2가지가 있다.1. 컴포넌트 스캔2. 자바 코드로 직접 빈 등록 컴포넌트 스캔과 자동 의존관계 설정이전 시간에 만든 회원 서비스를 완성도 있게 만들려면 Controller와 view가 필요하다. (회원가입 결과를 HTML로 뿌려주기 위해)-> 이 과정을 멤버 컨트롤러가 멤버 서비스를 의존한다 라고 표현한다. 1. MemberController를 생성한다.package hello.hello_spring.controller;import hello.hello_spring.service.MemberService;import org.springframework.beans.factory.annotation.Autowi.. 2024. 7. 1.
[스프링 입문] 회원 관리 예제 - 백엔드 개발 공부 내용을 정리하고 앞으로의 학습에 이해를 돕기 위해 작성합니다. 비즈니스 요구사항 정리 컨트롤러 : 웹 MVC 컨트롤러 역할서비스 : 핵심 비즈니스 로직 구현리포지토리 : DB에 접근, 도메인 객체를 DB에 저장하고 관리도메인 : 비즈니스 도메인 객체, ex) 회원, 주문, 쿠폰 등 주로 DB에 저장하고 관리됨데이터는 회원 ID, 이름뿐인 단순한 구조이다.기능은 회원 조회, 등록을 구현할 것이다. 아직 데이터 저장소가 선정되지 않아서 인터페이스로 구현한다. (추후에 변경할 수 있도록) 회원 도메인과 리포지토리 만들기 1. domain이라는 패키지를 만들고 Member 클래스를 생성한다.package hello.hello_spring.domain;public class Member { privat.. 2024. 6. 30.
[스프링 입문] 스프링 웹 개발 기초 공부 내용을 정리하고 앞으로의 학습에 이해를 돕기 위해 작성합니다. 정적 컨텐츠 1. static 폴더에 html 파일 하나를 만들고 웹 브라우저에서 호출했을 때 진행 과정웹 브라우저에서 호출 내장 톰켓 서버가 요청을 받음스프링에게 요청 내용 넘김컨트롤러에서 hello-static.html 파일이 있는지 찾아본다 (우선순위를 가짐)컨트롤러에 없으면 resources에서 파일을 찾고 있으면 반환해 준다. MVC와 템플릿 엔진 1. 과거에는 view에 모든 프로그래밍을 다했다.(model1 방식) -> 이러한 방식은 유지보수하기 정말 번거롭다.2. 최근에는 model , view, controller로 역할을 분리하여 유지보수성이 좋아졌다.2. view는 화면을 보여주는데 모든 역량을 집중해야 한다.3. c.. 2024. 6. 28.