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

JPAjava

JPAJava Persistence APISunJavaJDK 5.0XMLnode

JPAJava EEJava SEORMJPAHibernateTopLinkJDOORM使JPASpringEJB3.0mysql

Spring Data JPAspring

Spring Data JPASpringORMJPAJPA使Hibernate JPA使使Spring Data JPAsql

使Spring BootSpring Data JPAJava
數據庫

Spring Data JPAapi

1Maven微信

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

2this

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便

相關文章
相關標籤/搜索