今天继续学习JPA,但是IDE工具变为了IntelliJ IDEA,其实多数我还是更喜欢Eclipse系列,但是Android Studio什么的,多Get一个技能也不是坏事。
1 新建Spring Boot工程
Next,然后填写项目信息:
看上面,我把语言改成了Kotlin,因为我最近在学习Kotlin,所以,你又get到新技能了。继续Next
依赖,我们这里选择了JPA和一种数据库驱动。Next
项目名称和位置,这里项目创建完毕,点击Finisth等待项目初始化完毕(主要是下载模版和依赖)。
除了代码由java改为kotlin,其他没有变化。
2 新建实体
我们先建一个包,名为cn.techcave.demo.jpa.domain,在此包下通过新建一个kotlin Clasee来创建名为Record的实体,具体代码如下:
package cn.techcave.demo.jpa.domain
import javax.persistence.Entity
import javax.persistence.GeneratedValue
import javax.persistence.GenerationType
import javax.persistence.Id
@Entity
data class Record(
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
var id: Long? = null,
var name:String? = null,
var value: Double? = null
) {
}
3 新建Repository
对于Repository,我的理解就是dao,代码说话:
package cn.techcave.demo.jpa.repository
import cn.techcave.demo.jpa.domain.Record
import org.springframework.data.jpa.repository.JpaRepository
import org.springframework.stereotype.Repository
@Repository
interface RecordRepo :JpaRepository<Record, Long> {
}
超简单好不好,我都不想说话了。
4 新建一Service吧
好了,默默的看代码
package cn.techcave.demo.jpa.service
import cn.techcave.demo.jpa.domain.Record
import cn.techcave.demo.jpa.repository.RecordRepo
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.data.domain.Example
import org.springframework.stereotype.Service
import org.springframework.data.domain.ExampleMatcher
import org.springframework.data.domain.ExampleMatcher.GenericPropertyMatchers.startsWith
@Service
class RecordService {
@Autowired
lateinit var recRepo: RecordRepo
fun qbeRecord(rec: Record): Record? {
val matcher = ExampleMatcher.matching()
.withIgnorePaths("value")//忽略value属性
.withIncludeNullValues()//包含空值
.withMatcher("name", startsWith().ignoreCase())//字段name,匹配开始,忽略大小写
val example = Example.of(rec, matcher)
return recRepo.findOne(example)
}
fun findOne(id:Long): Record? {
return recRepo.findOne(id)
}
fun newRecored(rec: Record) {
recRepo.save(rec)
}
}
qbeRecord方法就是Query By Example 的使用例子
相关推荐
Spring Data JPA API。 Spring Data JPA 开发文档。 官网 Spring Data JPA API。
Spring Boot使用spring-data-jpa配置Mysql多数据源,可用版本
该案例使用SpringBoot 整合了SPringData JPA,使用SpringData 开发简化了Dao层的开发量,简化了数据访问,使得持久化更加简单 !
Spring Boot+Maven+Spring Data JPA+apache Shiro+Easyui实现通用用户权限管理系统
Spring Boot 系列教程 Data JPA
spring注解完整版+spring data jpa官方文档中文翻译+JPA2.0官方文档 文档内容齐全 值得参考学习
Spring Data JPA中文文档1.4.3
NULL 博文链接:https://mixo44.iteye.com/blog/1797079
Spring Boot+Spring Data Jpa进销存系统;本系统使用Spring Boot架构,数据访问层采用Spring Data Jpa,安全框架采用Shiro,实现了完整权限系统,Controller方法采用Shiro注解,来实现有效的权限控制;界面采用了...
#boot-jpa-security-dmdb-freemark spring boot spring security 达梦数据库 ftl assembly 打包
5-Spring-Boot(五):spring data jpa的使用.docx5-Spring-Boot(五):spring data jpa的使用.docx5-Spring-Boot(五):spring data jpa的使用.docx5-Spring-Boot(五):spring data jpa的使用.docx5-Spring-Boot(五):...
Spring Boot Data Jpa Example quick start # build mvn clean install # run mvn spring-boot:run 数据库配置 spring.jpa.hibernate.ddl-auto: create 启动时生成表 spring.jpa.hibernate.ddl-auto: create-drop ...
spring boot 集成activemq Datajpa Ehcache 里面有详细的例子
第四章节 Spring Boot 整合 Spring Data JPA(SpringBoot 高级)一、Spring Data JPA 介绍Spring Dat
ng-spring-boot, Spring Boot Spring Data JPA AngularJS示例 采用 Spring Boot 和AngularJS的快速Prototype快速 Prototype这个例子演示了英镑 Spring Boot Spring Data JPA 和前端可以一起用来编写web应用程序的...
java运行依赖jar包
spring+springmvc+spring data jpa+mysql代码示例。运行前需创建数据库sssp并修改相关数据库配置
'SpringDataJPA从入门到精通'分为12章 内容包括整体认识JPA、JPA基础查询方法、定义查询方法、注解式查询方法、@Entity实例里面常用注解详解、JpaRepository扩展详解、JPA的MVC扩展REST支持、DataSource的配置、乐观...
赠送jar包:spring-data-jpa-2.0.9.RELEASE.jar; 赠送原API文档:spring-data-jpa-2.0.9.RELEASE-javadoc.jar; 赠送源代码:spring-data-jpa-2.0.9.RELEASE-sources.jar; 赠送Maven依赖信息文件:spring-data-jpa...
spring data jpa最新版本1.8.0,包含了spring-data-jpa-1.8.0.RELEASE.jar,spring-data-jpa-1.8.0.RELEASE-javadoc.jar以及 spring-data-jpa-1.8.0.RELEASE-sources.jar文档和源代码