AWS 배포할 스프링부트를 간단하게 구현할 것 입니다.
기능은 2개 입니다.
1. Member를 DB에 등록
2. Member를 조회
순서
1. Domain 생성
2. Repository 생성
3. Service 생성
4. HTML 생성
5. Controller 생성
6. 실행화면 확인
1. Domain 생성
Member 도메인 생성
package helloWorld.hellowWorld;
import lombok.Data;
import javax.persistence.*;
@Entity
@Data
public class Member {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "member_id")
private Long id;
private String name;
}
2. Repository 생성
MemberRepository 생성
package helloWorld.hellowWorld;
import org.springframework.data.jpa.repository.JpaRepository;
public interface MemberRepository extends JpaRepository<Member, Long> {
}
3. Service 생성
MemberService 생성
package helloWorld.hellowWorld;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
@Service
@Transactional
@RequiredArgsConstructor
public class MemberService {
private final MemberRepository memberRepository;
public void insertMember(Member member) {
memberRepository.save(member);
}
public List<Member> findAllMember() {
return memberRepository.findAll();
}
}
4. HTML 생성
4-1. main.html 생성
처음 접속했을 때 나오는 페이지
등록된 멤버들의 조회
멤버를 등록하는 페이지로 이동
hello world
회원 목록
4-2. insert.html 생성
멤버를 등록하는 페이지
멤버를 이름을 입력해 전송
hello world
회원 목록
5. Controller 생성
MemberController 생성
package helloWorld.hellowWorld;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PostMapping;
import java.util.List;
@Controller
@RequiredArgsConstructor
public class MemberController {
private final MemberService memberService;
// 처음 화면
@GetMapping("/")
public String main(Model model) {
List<Member> memberList = memberService.findAllMember();
model.addAttribute("memberList", memberList);
return "main";
}
// 입력 화면
@GetMapping("/insert")
public String insertForm() {
return "insert";
}
// 멤버 데이터 수신
@PostMapping("/insert")
public String insertData(@ModelAttribute Member member) {
memberService.insertMember(member);
return "redirect:/";
}
}
6. 실행 화면
6-1. main 화면
회원 등록 버튼을 통해 입력폼으로 이동
6-2. insert 화면
6-3. main 결과
6-4. Heidi에서 확인
Heidi를 통해 마리아DB에 삽입된 것을 확인할 수 있다.