Spring Boot從入門到精通(九)整合Spring Data JPA應用框架

JPA

JPAJava Persistence APISunJavaJDK 5.0XML

JPAJava EEJava SEORMJPAHibernateTopLinkJDOORM使JPASpringEJB3.0

Spring Data JPA

Spring Data JPASpringORMJPAJPA使Hibernate JPA使使Spring Data JPA

使Spring BootSpring Data JPAJava

Spring Data JPA

1Maven

1Spring Boothttp://start.spring.io/

2

Spring BootSpring BootSpring BootSpring BootJava

MavenSpring Data JPA

 

3Generate-Crtl+使IntelliJ IDEAFile->Project Structure -> + MavenOK

4MaveninstallMaven

2pom.xml

MySQLMaven

<dependency>
	<groupId>mysql</groupId>
	<artifactId>mysql-connector-java</artifactId>
</dependency>

  

spring-boot-starter-parenthjar使maven helper

3
application.properties

#數據庫
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/dba
spring.datasource.username=root
spring.datasource.password=123456
spring.jpa.hibernate.ddl-auto=none
spring.jpa.database-platform=org.hibernate.dialect.MySQL5Dialect

#端口號
server.port=8080

spring.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=true
spring.jpa.properties.hibernate.type=trace
spring.jpa.properties.hibernate.use_sql_comments=true
spring.jpa.properties.hibernate.jdbc.batch_size=50
logging.level.org.hibernate.type.descriptor.sql=trace

  

4BootUserBootUserMySQL

package com.yoodb.study.demo05.entity;

import javax.persistence.*;
import java.io.Serializable;

@Entity
@Table(name="boot_user")
public class BootUser implements Serializable {
    @Id
    //strategy=GenerationType.IDENTITY 自增長
    @GeneratedValue(strategy= GenerationType.IDENTITY)
    @Column(name="id")
    private String id;

    @Column(name="user_name")
    private String name;

    @Column(name="detail")
    private String detail;

    public String getId() {
        return id;
    }

    public void setId(String id) {
  this.id=id;
}

publicStringgetName(){
returnname;
}

publicvoidsetName(Stringname){
this.name=name;
}

publicStringgetDetail(){
returndetail;
}

publicvoidsetDetail(Stringdetail){
this.detail=detail;
}
}

  

5RepositoryUserRepository

package com.yoodb.study.demo05.repository;

import com.yoodb.study.demo05.entity.BootUser;
import org.springframework.data.jpa.repository.JpaRepository;

public interface UserRepository extends JpaRepository<BootUser, Integer> {

}

  

6UsersDaoImplTest

package com.yoodb.study.demo05;

import com.yoodb.study.demo05.repository.UserRepository;
import com.yoodb.study.demo05.entity.BootUser;

import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.annotation.Rollback;

import javax.transaction.Transactional;

@SpringBootTest
public class UsersDaoImplTest  {
    @Autowired
    private UserRepository userRepository;

    /**
     * 添加用戶
     */
 @Test
@Transactional//對於事務提交方式默認回滾
@Rollback(false)//取消自動回滾
publicvoidtestInsertUsers(){
BootUserusers=newBootUser();
users.setName("關注微信公衆號“Java精選”");
users.setDetail("SpringBoot從入門到精通系列文章持續更新中,帶你從入門到精通,玩轉SpringBoot框架。");
this.userRepository.save(users);
}

}

  

7IntelliJ IDEA

Error running 'UsersDaoImplTest.testInsertUsers': Failed to resolve org.junit.platform:junit-platform-launcher:1.6.0

IntelliJ使IDEAMaven settings.xmlMaven CentralMavenpom.xml

<dependency>
	<groupId>org.junit.platform</groupId>
	<artifactId>junit-platform-launcher</artifactId>
	<scope>test</scope>
</dependency>

來源:素文宅博客

轉自:https://blog.yoodb.com/yoodb/article/detail/1574

Spring BootSpring Data JPAspringboot-study-demo05https://github.com/yoodb/springboot

Spring bootSpring Data JPA便

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章