成都网站建设设计

将想法与焦点和您一起共享

SpringBoot下如何自定义Repository中的DAO方法-创新互联

 环境配置介绍

专注于为中小企业提供成都网站设计、网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业正定免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了近千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

jdk 1.8, spring Boot 1.5.3.RELEASE, MySQL, Spring Data, JPA

问题描述

Spring Data提供了一套简单易用的DAO层抽象与封装,覆盖的CURD的基本功能,但是在诸多的情况下,需要用户自定义DAO的实现方法,来实现更为复杂和精细的数据库访问操作,该如何来解决这个问题?

目标描述

这里我们以自定义testAA的方法为例,来介绍如何实现自定义的DAO方法扩展。

数据库表的定义

我们这里定义了一个非常简单的mycity表,来作为示例的实体类BaseEntity:

数据库表定义:

import java.util.Date;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.MappedSuperclass;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Version;
@MappedSuperclass
public abstract class BaseEntity implements java.io.Serializable {
 private static final long serialVersionUID = -2420979951576787924L;
 @Id
 @GeneratedValue(strategy=GenerationType.IDENTITY)
 @Column(name = "ID")
 private Long id;
 @Version
 private Long version;
 @Temporal(TemporalType.TIMESTAMP)
 @Column(name = "CREATE_TIME",columnDefinition="timestamp default CURRENT_TIMESTAMP")
 private Date createTime;
 @Temporal(TemporalType.TIMESTAMP)
 @Column(name = "UPDATE_TIME",columnDefinition="timestamp default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP")
 private Date updateTime;
}

本文标题:SpringBoot下如何自定义Repository中的DAO方法-创新互联
地址分享:http://chengdu.cdxwcx.cn/article/dgodjc.html