Spring Data JPA的低级错误
//课程表
@Entity
public class Class {
@GeneratedValue(strategy = GenerationType.AUTO)
@Id
private Long classID;// 课程编号 varchar(20) not null,
private String className;// 课程名称 varchar(50),
@Temporal(TemporalType.DATE)//(精确到年月日)
private Date beginTime;// 开始时间 date,
@Temporal(TemporalType.DATE)//(精确到年月日)
private Date endTime;//结束时间 date,
private String classInfo;// 课程简介 text,
private double price;// 价格 numeric,
private int times;// 课时数 integer,
private int classMan;// 课程人数 int, @ManyToOne(cascade = CascadeType.ALL)
private Teacher teacher;//主教练 varchar(20), @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "class_")
private List<Lesson> lessons;
//...省略getter和setter方法
public interface ClassRepository extends JpaRepository<Class,Long> { @Query(value = "SELECT * FROM class WHERE classid=:ID",nativeQuery = true)
Class findClassByID(@Param("ID")Long ID); @Modifying
@Transactional
@Query(value = "UPDATE class SET times=:times WHERE classid=:classid",nativeQuery = true)
void updateClassTimes(@Param("times")int times,@Param("classid") Long classid); @Query(value = " select * FROM class where DATE_FORMAT(begin_time,'%Y%m%d') >=NOW()",nativeQuery = true)
List<Class> findClassByAfter(); @Query(value = " select * FROM class where DATE_FORMAT(begin_time,'%Y%m%d') <NOW()",nativeQuery = true)
List<Class> findClassByBefore(); Page<Class> findByBeginTimeBefore(Date date,Pageable pageable); }
如果实体类里面属性名开头用大写字母,
在JPA中就不能通过查询的方法名和参数名来自动构造一个JPA OQL查询,
如18行的方法不能通过编译,
控制台会提示找不到该属性名,
千万告诫自己编码一定要规范。
Spring Data JPA的低级错误的更多相关文章
- Spring Data JPA初使用(转载)
我们都知道Spring是一个非常优秀的JavaEE整合框架,它尽可能的减少我们开发的工作量和难度. 在持久层的业务逻辑方面,Spring开源组织又给我们带来了同样优秀的Spring Data JPA. ...
- Spring Data JPA初使用
我们都知道Spring是一个非常优秀的JavaEE整合框架,它尽可能的减少我们开发的工作量和难度. 在持久层的业务逻辑方面,Spring开源组织又给我们带来了同样优秀的Spring Data JPA. ...
- Spring Boot (五)Spring Data JPA 操作 MySQL 8
一.Spring Data JPA 介绍 JPA(Java Persistence API)Java持久化API,是 Java 持久化的标准规范,Hibernate是持久化规范的技术实现,而Sprin ...
- Spring Data JPA例子[基于Spring Boot、Mysql]
关于Spring Data Spring社区的一个顶级工程,主要用于简化数据(关系型&非关系型)访问,如果我们使用Spring Data来开发程序的话,那么可以省去很多低级别的数据访问操作,如 ...
- spring + springMVC + spring Data + jpa + maven 项目框架搭建
首先看一下项目结构: 所用到的jar(pom.xml): <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:x ...
- Spring Data JPA(官方文档翻译)
关于本书 介绍 关于这本指南 第一章 前言 第二章 新增及注意点 第三章 项目依赖 第四章 使用Spring Data Repositories 4.1 核心概念 4.2 查询方法 4.3 定义rep ...
- Spring MVC和Spring Data JPA之按条件查询和分页(kkpaper分页组件)
推荐视频:尚硅谷Spring Data JPA视频教程,一学就会,百度一下就有, 后台代码:在DAO层继承Spring Data JPA的PagingAndSortingRepository接口实现的 ...
- Spring MVC和Spring Data JPA之获取数据表数据放在List集合,显示在JSP页面
涉及到很多xml配置没写:只写具体实现的所有类 1.实体类 对应数据表SYS_SBGL, 主键是SBBM,主键是自动生成的uuid 数据表内容如下(有图有真相): package com.jinhet ...
- spring data jpa @query的用法
@Query注解的用法(Spring Data JPA) 参考文章:http://www.tuicool.com/articles/jQJBNv . 一个使用@Query注解的简单例子 @Query( ...
随机推荐
- The Best Blockchain Open Source Projects
https://101blockchains.com/blockchain-open-source/ Blockchain has been the buzzword of the year for ...
- 学习Spring-Data-Jpa(九)---注解式方法查询之@NamedQuery、@NamedNativeQuery
1.@NamedQuery.@NamedNativeQuery @NamedQuery与@NamedNativeQuery都是定义查询的一种形式,@NamedQuery使用的是JPQL,而@Named ...
- Anaconda3(4)安装pytorch
安装链接 https://pytorch.org/ 0在anaconda3安装python3.6环境 https://blog.csdn.net/u012005313/article/details ...
- hadoop map中获取文件/切片名称
//import org.apache.hadoop.mapreduce.InputSplit;//import org.apache.hadoop.mapreduce.lib.input.FileS ...
- browserslist详解
https://www.jianshu.com/p/d45a31c50711 https://juejin.im/post/5b8cff326fb9a019fd1474d6 https://githu ...
- 8个SpringBoot精品项目
8个SpringBoot精品项目 https://gitee.com/52itstyle/spring-boot-seckill 秒杀 https://gitee.com/52itstyle/spri ...
- Django 1.11 使用命令makemigrations命令无法执行表修改动作
由于在学习过程中,遇到models模型变动,变动后合并发生问题,故当时做了删除应用文件夹下migrations文件,由于数据库里无较多新数据,故删除后重建,但重建后执行模型合并操作结果为No Chan ...
- Java正则表达式入门基础篇
正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配的一个或多个字符串.正则表达式作为 ...
- gamma测试报告
Gamma阶段测试报告 测试计划及结果 我们针对测试做了比较多的改进. 测试代码分为针对纯java部分的单元测试和需要android运行环境的自动化仪器化测试 单元测试 这一部分基本继承Beta阶段的 ...
- 使用stunnle加密传输
Stunnel是一个可以用SSL对任意 TCP 连接加密的程序.它可以运行在多种UNIX和Windows上,它是基于 OpenSSL的,所以它要求已经安装了 OpenSSL,并进行了正确的配置.——来 ...