Web Project/Spring Boot

PersistentObjectExceptionHibernate에서 발생하는 문제로 detached(준영속성) 상태의 엔티티 객체를 persist() 메서드로 저장하려고 했을 때 발생한다.쉽게 말해서 이미 로직 상 한 번 DB에 저장된 엔티티(Detached 상태)를 또 다시 저장하려고 했을 때 발생하는 문제이다.식별자 값(ID)의 존재 유무를 통해 어떤 영속성 엔티티인지 준영속성 엔티티인지 판별한다. Deatached 상태의 엔티티는 merge()로 저장하거나 변경 감지를 통해야 한다.변경 감지는 원하는 값만 변경할 수 있음.Merge는 모든 값이 변경됨.엔티티의 생명 주기 상태:Transient: 엔티티가 영속성 컨텍스트에 저장되지 않은 새로운 상태.Persistent: 엔티티가 영속성 컨텍스트에 저장..
김영한 스프링 부트 강의를 듣는 중 예제를 따라하다가 의문이 생겼다. input 태그의 name 값을 이용해서 post 메서드 방식으로 입력한 값을 컨트롤러에 전달해준다는데 아무리 봐도 html과 java 파일을 연결해주는 코드가 없었다. 결론부터 말하자면, 우리의 눈에 보이지 않을 뿐 스프링 프레임 워크 내부에서 자체적으로 처리해주는 것이었다. 이름 등록 사용자가 값을 입력하는 html이다. package hello.hellospring.controller; public class MemberForm { private String name; public String getName() { return name; } public void setName(String name) { this.name = nam..
스프링 부트를 실행하면 index.html 파일을 먼저 찾아서 화면에 뿌린다.즉, index.html 파일이 start 파일이 되는 것이다.MVC 패턴Model, View, Controller로 구성되는 웹개발 디자인 패턴이 있다. 추후 자세하게 다룰 예정. // controller/HelloController @GetMapping("hello") public String hello(Model model) { model.addAttribute("data", "hello!!"); return "hello"; }data라는 attributeName으로 hello!!라는 attributeValue를 넘겨준다.hello를 return 해주는 것은 hello.html..