Java & Spring

    [Spring] 입문5

    스프링 DB 접근 기술 이전까지는 메모리에 데이터를 저장하는 방식으로 구현했다. 하지만 이렇게 하면 서버가 내려갈 경우 모든 데이터가 사라진다는 단점이 있다. 데이터베이스를 만들어서 서버가 내려가도 없어지지 않도록 구현해보자. 아래 소주제들중 일부를 보면 순수 JDBC -> 스프링 JdbcTemplate -> JPA -> 스프링 데이터 JPA 이렇게 발전했다고 볼 수 있다. 이전에 사용되었던 기술들은 알아두면 좋으니 간단하게 살펴보는 정도로만 확인해본다. H2 데이터베이스 설치 (Mac M1 기준) H2 데이터베이스는 간단하고 가벼운 RDBMS다. H2 데이터베이스가 뭔지 자세한 내용이 중요한게 아니니 설명은 생략한다. 1. DB 접근 기술을 알기전에 DB 먼저 있어야 하므로 가벼운 H2 데이터베이스를 ..

    [Spring] 입문4

    회원관리 예제 - 웹 MVC 개발 이번 부분은 타임리프라는 템플릿엔진으로 간단하게 화면들을 추가하는 부분이다. 어렵지 않아서 금방금방 습득할 수 있었다. 개발 완료 후 파일 구조 회원 웹 기능 - 홈 화면 추가 1. HomeController.java 추가 package hello.hellospring.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; @Controller public class HomeController { // localhost:8080/ 로 들어오면 가장 기본적으로 호출될 부분 @GetMapping("/") public..

    [Spring] 입문3

    스프링 빈과 의존관계 스프링 빈에 대해 알기 전에 IOC와 DI에 대해 먼저 알아야한다. 아직은 명확히 와닫지 않아서 쉽게 설명해놓은 링크만 첨부한다. 좀더 명확하게 알게되면 새로 포스팅해야지! 간단하게 말하면 이제 controller에서 view에 화면을 뿌려주는 작업을 할건데, controller에서는 service를 통해서 회원가입을 하고 데이터를 조회할 수 있다. 이렇게 되는 걸 서로 의존관계가 있다고 하고(controller가 service를 의존하고 있다.) 이제 이 과정을 스프링으로 구현해볼 것이다. 오늘 개발 후 폴더 구조 (보이지 않는 부분은 변경 사항 없음) 스프링 빈을 생성하는 방법 스프링 빈이란? Spring IoC 컨테이너가 관리하는 자바 객체를 빈(Bean)이라는 용어로 부른다...

    [Spring] 입문2

    Spring 입문2 Spring 입문2 오늘 배운 부분 파일 구성 회원 도메인과 레포지토리 만들기 package hello.hellospring.domain; public class Member { private Long id; private String name; // private 변수에 대해 getter setter public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } domain 폴더를 만들고 안에 Member 모델을 작성해줄 클래스를 ..

    [Spring] 입문1(feat. 인프런 김영한님 강의)

    Spring 입문1(feat.인프런 김영한님 강의) Spring boot 기초 우선 오늘 공부한 내용의 폴더 구조는 다음과 같다. 프로젝트는 HelloSpringApplication 파일에서 시작된다. Controller는 요청이 들어왔을 때 이를 받아서 처리해주는 부분이고, resources는 정적 컨텐츠를 저장하는 부분인데 단순 정적 컨텐츠와 템플릿 엔진을 썼을 경우를 위해 static, templates로 분리해주었다. 그 외에 service나 다른 파일들은 다음 강의에서 설명한다. 정적 컨텐츠 // java/hello.hellospring/controller/helloController.java @Controller public class HelloController { @GetMapping("h..