SpringBoot+JPA

本文介绍如何在Spring Boot项目中集成MySQL数据库,并利用Spring Data JPA进行数据持久化操作。主要内容包括添加依赖、配置数据库连接参数、创建实体类、定义Repository接口以及实现Service层业务逻辑。

1)pom.xml添加MySQL,spring-data-jpa依赖

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

     <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId></dependency>

2)在application.properties文件中配置MySQL连接配置文件  

########################################################
###datasource
########################################################
spring.datasource.url = jdbc:mysql://localhost:3306/test
spring.datasource.username = root
spring.datasource.password = root
spring.datasource.driverClassName = com.mysql.jdbc.Driver

########################################################
### Java Persistence Api
########################################################
spring.jpa.database = MYSQL
spring.jpa.show-sql = true
spring.jpa.generate.ddl = true

spring.jpa.hibernate.ddl-auto= update
spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.ImprovedNamingStrategy

4)测试

  实体类:@Entity标注类上,进行实体类的持久化操作,当JPA检测到我们的实体类当中有@Entity 注解的时候,会在数据库中生成对应的表结构信息。使用@Id指定主键, 使用代码@GeneratedValue(strategy=GenerationType.AUTO) 指定主键的生成策略,mysql默认的是自增长,例:@Id @GeneratedValue(strategy=GenerationType.AUTO)private int id;//主键.

  Repository接口:Repository 接口是 Spring Data 的一个核心接口,它不提供任何方法,开发者需要在自己定义的接口中声明需要的方法 :public interface Repository<T, ID extends Serializable> { }

    public interface CatRepository extends CrudRepository<Cat, Integer>{

      /* 查询方法以find | read | get开头;涉及查询条件时,条件的属性用条件关键字连接,要注意的是条件属性以首字母大写;使用@Query注解可以自定义JPQL语句实现更灵活的查询 */

      @Query("from Cat where catName=:cn")
      public Cat findMyCatName(@Param("cn")String catName);

    }

  service实现类:  

    @Service
    public class CatService {
      @Resource
      private CatRepository catRepository;//service的接口
      @Transactional//事务的绑定.
      public void save(Cat cat){
        catRepository.save(cat);
      }
    }

如果jdk9 pom.xml添加

<dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId><version>2.3.0</version></dependency>

转载于:https://www.cnblogs.com/god-monk/p/8794742.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值