//课程表
@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的低级错误的更多相关文章

  1. Spring Data JPA初使用(转载)

    我们都知道Spring是一个非常优秀的JavaEE整合框架,它尽可能的减少我们开发的工作量和难度. 在持久层的业务逻辑方面,Spring开源组织又给我们带来了同样优秀的Spring Data JPA. ...

  2. Spring Data JPA初使用

    我们都知道Spring是一个非常优秀的JavaEE整合框架,它尽可能的减少我们开发的工作量和难度. 在持久层的业务逻辑方面,Spring开源组织又给我们带来了同样优秀的Spring Data JPA. ...

  3. Spring Boot (五)Spring Data JPA 操作 MySQL 8

    一.Spring Data JPA 介绍 JPA(Java Persistence API)Java持久化API,是 Java 持久化的标准规范,Hibernate是持久化规范的技术实现,而Sprin ...

  4. Spring Data JPA例子[基于Spring Boot、Mysql]

    关于Spring Data Spring社区的一个顶级工程,主要用于简化数据(关系型&非关系型)访问,如果我们使用Spring Data来开发程序的话,那么可以省去很多低级别的数据访问操作,如 ...

  5. spring + springMVC + spring Data + jpa + maven 项目框架搭建

    首先看一下项目结构: 所用到的jar(pom.xml): <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:x ...

  6. Spring Data JPA(官方文档翻译)

    关于本书 介绍 关于这本指南 第一章 前言 第二章 新增及注意点 第三章 项目依赖 第四章 使用Spring Data Repositories 4.1 核心概念 4.2 查询方法 4.3 定义rep ...

  7. Spring MVC和Spring Data JPA之按条件查询和分页(kkpaper分页组件)

    推荐视频:尚硅谷Spring Data JPA视频教程,一学就会,百度一下就有, 后台代码:在DAO层继承Spring Data JPA的PagingAndSortingRepository接口实现的 ...

  8. Spring MVC和Spring Data JPA之获取数据表数据放在List集合,显示在JSP页面

    涉及到很多xml配置没写:只写具体实现的所有类 1.实体类 对应数据表SYS_SBGL, 主键是SBBM,主键是自动生成的uuid 数据表内容如下(有图有真相): package com.jinhet ...

  9. spring data jpa @query的用法

    @Query注解的用法(Spring Data JPA) 参考文章:http://www.tuicool.com/articles/jQJBNv . 一个使用@Query注解的简单例子 @Query( ...

随机推荐

  1. turtle模块

    turtle(海龟)绘图用法 import turtle -->调出turtle库 setup()-->设置窗体大小和位置 turtle.setup(width,height,startx ...

  2. idea每次新建项目的默认路径

    idea每次新建项目的默认路径 每次新建项目的默认路径是上一次新建项目所在的文件夹.第一次需要手动切换.

  3. VScode插件:Todo Tree

    Todo Tree 用于记录很多需要做但是暂时没办法立即做的事情,如修改样式,日期格式处理等 用法: // TODO: 流程图用canvas重构 然后,你在代码中写的TODO,会被识别出来,点击即可查 ...

  4. Pandas | 07 函数应用

    要将自定义或其他库的函数应用于Pandas对象,有三个重要的方法,下面来讨论如何使用这些方法.使用适当的方法取决于函数应用于哪个层面(DataFrame,行或列或元素). 表合理函数应用:pipe() ...

  5. JS的ES7支持

    1.指数运算符(幂): ** 2.Array.prototype.includes(value) : 判断数组中是否包含指定value console.log(2**4); let arr = [2, ...

  6. SpringBoot简介以及案例

    1什么是SpringBoot Spring Boot 是所有基于 Spring 开发的项目的起点.Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置 ...

  7. AQS源码的简单理解

    概念 AQS全称 AbstractQueuedSynchronizer. AQS是一个并发包的基础组件,用来实现各种锁,各种同步组件的.它包含了state变量.加锁线程.等待队列等并发中的核心组件. ...

  8. 【Gamma】“北航社团帮”测试报告——小程序v3.0

    目录 测试计划.过程和结果 后端测试--单元测试与覆盖率 后端测试--压力测试 展示部分数据 平均数据 前端测试--小程序v3.0 新功能 各页面均可正常打开,跳转,回退 授权登录与权限检查 页面数据 ...

  9. 【Gamma阶段】第六次Scrum Meeting

    冰多多团队-Gamma阶段第六次Scrum会议 工作情况 团队成员 已完成任务 待完成任务 卓培锦 编辑器风格切换(添加夜间模式) UI界面手势切换 牛雅哲 语音输入shell应用:基于pytorch ...

  10. mysql 数据库中的每张表加同一个字段(避免重复加)

    DROP PROCEDURE IF EXISTS testEndHandle; DELIMITER $$ CREATE PROCEDURE testEndHandle() BEGIN DECLARE ...