• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

실전 예제 1 - 요구사항 분석과 기본 매핑 강의 세팅 질문있습니다.

23.12.25 02:04 작성 23.12.28 10:57 수정 조회수 134

0

jpamain 실행시 아래같이 db에는 잘 붙는거 확인했는데요.

h2창은 잘뜹니다.

근데 강의 18분<아래 그림 참조>정도에 나오는것처럼 db가 안뜹니다.

<jpa 실행문구>

 

member

package jpabook.jpashop.domain1;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;

@Entity
public class Member {
    @Id
    @GeneratedValue
    @Column(name="MEMBER ID")
    private Long id;

    private String name;

    private String city;

    private String street;

    private String zipcode;

    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;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getStreet() {
        return street;
    }

    public void setStreet(String street) {
        this.street = street;
    }

    public String getZipcode() {
        return zipcode;
    }

    public void setZipcode(String zipcode) {
        this.zipcode = zipcode;
    }
}

 

파일링크

 

jpamain

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.EntityTransaction;
import javax.persistence.Persistence;

public class JpaMain {
    public static void main(String[] args) {
        EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello");

        EntityManager em = emf.createEntityManager();

        EntityTransaction tx = em.getTransaction();
        tx.begin();

        try {



            tx.commit();
        } catch (Exception e) {
            tx.rollback();

        } finally {
            em.close();
        }
        emf.close();
    }







    }

답변 1

답변을 작성해보세요.

0

OMG님의 프로필

OMG

2023.12.25

안녕하세요. ekek님, 공식 서포터즈 OMG입니다.

우선 2가지 상황으로 인해 쿼리 출력이 안되는 것 같습니다.

1.오류가 발생한 경우

  • 오류가 발생했는지 확인하기 위해 catch문에 e.printStackTrace();를 작성해주세요.

try {
    tx.commit();
} catch(Exception e) {
    e.printStackTrace(); // 추가해주세요
    tx.rollback();
}
  1. 쿼리를 출력하도록 세팅이 안된 경우

     

    • show_sql 설정이 true로 되어 있나요?

    • ddl.auto가 create로 되어 있나요? 주석처리 되어 있나요? create로 되어 있어야 Table이 생성되고, 생성 쿼리가 발생합니다.

       

     

    image

    위 내용을 확인해주시고 해결 안될 경우 댓글남겨주세요 😀

감사합니다.