spring boot 配置 JPA

1.配置maven

       <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-data-jpaartifactId>
        dependency>
在pom.xml 中配置出spring boot的jpa,没有版本是因为上级maven中定义了版本。

2.配置程序

  • application.properties 配置
#配置数据库
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/family
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
#方言
spring.jpa.database-platform=org.hibernate.dialect.MySQL5Dialect
#显示sql语句
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update

进行配置数据源和相关的方言显示等等。

  • po类的设置

@Entity
@Table(name = "user")
@GenericGenerator(name = "system-uuid", strategy = "uuid")
public class UserPo {

    @Id
    @GeneratedValue(generator = "system-uuid")
    private String userId;

    private String userName;

    private String userPassword;

    private String tel;

    private String email;


    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getUserPassword() {
        return userPassword;
    }

    public void setUserPassword(String userPassword) {
        this.userPassword = userPassword;
    }

    public String getTel() {
        return tel;
    }

    public void setTel(String tel) {
        this.tel = tel;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }
}

这个 po类的配置,注意的是@table 是写的是数据库中映射的表名,因为我是反建表的。所以没有指定字段的名称。这个里面一定要添加主键,不然会报错。最后使用的是uuid 自动生成主键的形式。

  • 配置dao
@RepositoryRestResource(path = "user")
public interface UserDao extends JpaRepository<UserPo,String>, JpaSpecificationExecutor<UserPo> {
}

我所使用的RepositoryRestResource 是为了之后的rest进行CRUD的操作,基本上大功告成了。

你可能感兴趣的:(java,spring,jpa)