SpringBoot整合JPA

一:引包

1
2
3
4
5
<!--jpa-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

二:自定义dao层 并且实现JpaRepository<K,V>接口

注意DruidConfiguration文件要和springBoot启动类 在同一目录层级

1
2
3
4
5
6
7
8
9
10
public interface UserRepository extends JpaRepository<User,Long> {

@Override
List<User> findAll();

User findByUsernameAndUserpwd(String yanganlin, String root);

List<User> findByUserpwd(String root);

}

三:配置application.properties

spring.jpa.database-platform= org.hibernate.dialect.MySQL5InnoDBDialect 指定表的的引擎是innodb 如果不指定,可能就是别的了

1
2
3
4
5
6
#JPA
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
spring.jackson.serialization.indent-output=true
# 指定生成表中的引擎
spring.jpa.database-platform= org.hibernate.dialect.MySQL5InnoDBDialect

四:SQL

1
2
3
4
5
6
CREATE TABLE `users` (
`user_id` bigint(20) NOT NULL AUTO_INCREMENT,
`username` varchar(255) DEFAULT NULL,
`userpwd` varchar(255) DEFAULT NULL,
PRIMARY KEY (`user_id`)
) ENGINE=InnoDB AUTO_INCREMENT=71 DEFAULT CHARSET=utf8;

定义的方法:参考 https://www.w3cschool.cn/java/jpa-query-join-manytoone.html