강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của ansrhks31341081
ansrhks31341081

câu hỏi đã được viết

Dữ liệu mùa xuân JPA

Lập trình JPA 1. Thiết lập dự án

똑같이 작성후 select * from account;

Đã giải quyết

Viết

·

486

0

똑같이 작성후 select * from account; 를 해도 아무변화가 일어나지않네요 .. 왜그럴까요? ㅠㅠ 적용이 안된다고 해야하나..

오류는 일어나지않습니다.

package me.whiteship.demospring;


import org.hibernate.Session;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;

import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

@Component
@Transactional
public class JpaRunner implements ApplicationRunner {

@PersistenceContext
EntityManager entityManager;

@Override
public void run(ApplicationArguments args) throws Exception {
Account account = new Account();
account.setUsername("whiteship");
account.setPassword("jpa");

Session session = entityManager.unwrap(Session.class);
session.save(account);
}
}

spring.datasource.url=jdbc:postgresql://localhost:5432/springdata
spring.datasource.username=postgres
spring.datasource.password=pass

spring.jpa.hibernate.ddl-auto=update
spring.jpa.properties.hibernate.jdbc.lob.non_contxtual_creation=true
    public void run(ApplicationArguments args) throws Exception {
Account account = new Account();
account.setUsername("aaaaa");
account.setPassword("jpa");

Session session = entityManager.unwrap(Session.class);
session.save(account);

System.out.println(account.getUsername());
System.out.println(account.getPassword());
}
}

이렇게 출력해보니까

2020-06-11 15:39:08.303  INFO 18983 --- [         task-1] o.h.e.t.j.p.i.JtaPlatformInitiator       : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]

2020-06-11 15:39:08.312  INFO 18983 --- [         task-1] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'

aaaaa

jpa

2020-06-11 15:40:08.323  INFO 18983 --- [extShutdownHook] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default'

나오긴나오는것 같은데 터미널에는 아~무 이상이 없어요 ㅠㅠ email도 추가 되지않았구요

혹시 이것도 관계가 있을가요?

springdata=# \list

                                 List of databases

    Name    |  Owner   | Encoding |  Collate   |   Ctype    |   Access privileges   

------------+----------+----------+------------+------------+-----------------------

 postgres   | postgres | UTF8     | en_US.utf8 | en_US.utf8 | 

 springdata | postgres | UTF8     | en_US.utf8 | en_US.utf8 | 

 template0  | postgres | UTF8     | en_US.utf8 | en_US.utf8 | =c/postgres          +

            |          |          |            |            | postgres=CTc/postgres

 template1  | postgres | UTF8     | en_US.utf8 | en_US.utf8 | =c/postgres          +

            |          |          |            |            | postgres=CTc/postgres

(4 rows)

Acces privileges..

데이터베이스 지우면 springdata없다고 인텔리제이에서 오류나고,

생성하면 username, password는 커녕 account 테이블 생성조차 안되네요 ㅠㅠ

springJPAjava

Câu trả lời 5

1

저도 같은 증상이에요. 터미널에서 확인이 안되서

인텔리제이 툴로 확인중입니다....

0

ansrhks31341081님의 프로필 이미지
ansrhks31341081
Người đặt câu hỏi

일단 pgadmin사용 해서 잘되는거 확인했네요.. 터미널은 전혀 안되지만요..

감사합니다.

0

whiteship님의 프로필 이미지
whiteship
Người chia sẻ kiến thức

spring.jpa.hibernate.ddl-auto=update

이 설정이 있다면 만들 수 있어야 하는데 뭔가 이상하네요. 도커 말고 PostgreSQL DB를 직접 설치해서 써보세요. Pgadmin 같은 툴을 써서 보시면 좀 더 편하게 보실 수도 있을테구요.

0

ansrhks31341081님의 프로필 이미지
ansrhks31341081
Người đặt câu hỏi

터미널로 crate table account;를 해야 보여요..

선생님께서는 Uesr로 만드시는 예제를 보여주실때 삭제하고 run을 했을경우 자동으로 생성되었잖아요? 그런데 전 생기지도 않습니다..

0

whiteship님의 프로필 이미지
whiteship
Người chia sẻ kiến thức

\dt로 확인했을 때 account 테이블이 보이나요?

Hình ảnh hồ sơ của ansrhks31341081
ansrhks31341081

câu hỏi đã được viết

Đặt câu hỏi