目前很火的一款跟数据库打交道的框架hebernate,这款框架在国外很欢迎,开发确实非常的方便简洁,走一波教程!
看完就会!!!




实体类manager

package cn.com.zzn.model;import javax.persistence.*;
import java.sql.Timestamp;
import java.util.Objects;@Entity(name = "manager")  //对应表名
public class Manager {private int id;private String loginId;private String realName;private String pwd;private Integer loginCount;private Timestamp lastLoginDt;@Id@GeneratedValue(strategy = GenerationType.IDENTITY)//自增@Column(name = "id", nullable = false)public int getId() {return id;}public void setId(int id) {this.id = id;}@Basic@Column(name = "loginId", nullable = false, length = 20)public String getLoginId() {return loginId;}public void setLoginId(String loginId) {this.loginId = loginId;}@Basic@Column(name = "realName", nullable = true, length = 10)public String getRealName() {return realName;}public void setRealName(String realName) {this.realName = realName;}@Basic@Column(name = "pwd", nullable = true, length = 200)public String getPwd() {return pwd;}public void setPwd(String pwd) {this.pwd = pwd;}@Basic@Column(name = "loginCount", nullable = true)public Integer getLoginCount() {return loginCount;}public void setLoginCount(Integer loginCount) {this.loginCount = loginCount;}@Basic@Column(name = "lastLoginDt", nullable = true)public Timestamp getLastLoginDt() {return lastLoginDt;}public void setLastLoginDt(Timestamp lastLoginDt) {this.lastLoginDt = lastLoginDt;}@Overridepublic boolean equals(Object o) {if (this == o) return true;if (o == null || getClass() != o.getClass()) return false;Manager manager = (Manager) o;return Objects.equals(id, manager.id) && Objects.equals(loginId, manager.loginId) && Objects.equals(realName, manager.realName) && Objects.equals(pwd, manager.pwd) && Objects.equals(loginCount, manager.loginCount) && Objects.equals(lastLoginDt, manager.lastLoginDt);}@Overridepublic int hashCode() {return Objects.hash(id, loginId, realName, pwd, loginCount, lastLoginDt);}
}

接口文件(ManagerDao)

package cn.com.zzn.until;import cn.com.zzn.model.Manager;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;import java.util.List;
import java.util.Map;@Repository //库 springboot自动托管的
//CrudRepository<Manager,Integer> 第一个参数实体类第二个参数主键类型
public interface ManagerDao extends CrudRepository<Manager,Integer> {//sqlserver没有limit要用top1    //查询登录次数最大的一个数@Query(value = "select * from manager order by loginCount desc limit 1",nativeQuery = true)public Manager findByMaxLoginCount();//
@Query(value = "select loginCount from manager order by loginCount desc limit 1",nativeQuery = true)
public Integer findByMaxLoginCount2();//查询范围数字@Query(value = "select loginId,realName from manager where id >:min and id<:max ",nativeQuery = true)public List<Map<String,String>> findByLoginIdRealNameById(Integer min, Integer max);//根据loginId查数据public Manager findByLoginId(String loginId);//只查loginId + realName
//    @Query(value = "select loginId,realName from manager where  ")
//    public Map<Integer,String> findByLoginIdRealName();}

application.properties文件

spring.datasource.url=jdbc:mysql://localhost:3306/travelmanage?userUnicode=true&characterEncoding=UTF-8
spring.datasource.username=travelmanage
spring.datasource.password=travelmanage
#hebernate字段设置
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
#根据实体类的表创建表 危险 会删除以前的表重新创建会清空数据,切记他会删除所有的数据库表再创建
#spring.jpa.hibernate.ddl-auto=create#更新
spring.jpa.hibernate.ddl-auto=update#打印日志
spring.jpa.show-sql=true

jpa初学 hibernate学习相关推荐

  1. 【转】JPA、Hibernate和Mybatis区别和总结

    很多人都用过java的数据库连接池C3P0,但官方没有说明名称的由来. 据传闻:连接池作者是<星球大战>迷,C3P0就是其中的一个机器人,并且这个名称中包涵connection 和pool ...

  2. Hibernate学习总结【比较与Mybatis框架之间的区别】

    经过一周的Hibernate学习,我理解了作为以JPA为核心的持久层查询标准.JPA所涉及的思想为ORM(object relational mapping),它解释了为什么我们的实体关系要和数据库一 ...

  3. SpringData Jpa、Hibernate、Jpa 三者之间的关系

    JPA规范与ORM框架之间的关系是怎样的呢? JPA规范本质上就是一种ORM规范,注意不是ORM框架--因为JPA并未提供ORM实现,它只是制订了一些规范,提供了一些编程的API接口,但具体实现则由服 ...

  4. JPA与Hibernate的优缺点

    http://developer.51cto.com/art/200906/130500.htm JPA(Java Persistence API)是Sun官方提出的Java持久化规范.它为Java开 ...

  5. 简述 JPA 与 Spring Data JPA 与 Hibernate

    1.JPA是什么?以及相关概述 JPA的是 Java Persistence API 的简写,是Sun官方提出的一种ORM规范! Sun提出此规范有2个原因: 1.简化现有Java EE和Java S ...

  6. hibernate学习笔记(总结)

    hibernate学习笔记 课程内容 6 1 HelloWorld 6 2 Hibernate原理模拟-什么是O/R Mapping以及为什么要有O/R Mapping 6 3 常见的0/R框架(了解 ...

  7. Hibernate学习大全

    第1课 课程内容. 6 第2课Hibernate UML图. 6 第3课 风格. 7 第4课 资源. 7 第5课 环境准备. 7 第6课 第一个示例HibernateHelloWorld 7 第7课 ...

  8. Hibernate 学习教程

    第1课 课程内容. 6 第2课Hibernate UML图. 6 第3课 风格. 7 第4课 资源. 7 第5课 环境准备. 7 第6课 第一个示例HibernateHelloWorld 7 第7课 ...

  9. 马士兵Hibernate学习笔记

    马士兵hibernate学习笔记 课程内容 6课程内容 1 HelloWorld 6 2 Hibernate原理模拟-什么是O/R Mapping以及为什么要有O/R Mapping 6 3 常见的0 ...

最新文章

  1. 细细品味C#——Socket编程专题
  2. leetcode算法题--Queue Reconstruction by Height
  3. 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(二)转载自码农网
  4. 2020\Simulation_1\1.15.125GB
  5. mysql 126_MySQL教程126-MySQL事务隔离级别
  6. 用python求期望_用Python计算明日方舟2021龙门幸运墙期望
  7. java中servlet的请求范围_java – 如何设置servlet中并发请求数的限制?
  8. eclipse python java_如何使用Eclipse使用Python导入Java类?
  9. Word常见基本操作-《和秋叶一起学Word》
  10. 有哪些不错的查文献或查资料的网站或APP?
  11. mysql注入实验报告_网络安全实验报告 第二章
  12. linux的睡眠框架及实现
  13. 桌面环境与桌面搜索Desktop Search tools
  14. jemter在linux上怎么安装_jmeter 在linux服务器的安装和运行教程图解
  15. 预渲染与服务端渲染的区别
  16. 一款强大的API接口文档管理工具(Smart-Doc + Torna)
  17. 大数据具体内涵与外延尚未被清楚界定
  18. LXD 2.0 系列(八):LXD中的LXD
  19. 【机器视觉基础知识整理】
  20. 大数据——Flink 时间语义

热门文章

  1. 插画素材 | 冬天很冷,看到它内心就暖了!
  2. 决策树 随机森林 xgboost_推荐收藏 | 决策树、随机森林、bagging、boosting、Adaboost、GBDT、XGBoost总结...
  3. cuSPARSE库:(一)函数的异步执行
  4. volatile与多线程
  5. Kubernetes复杂吗?Cube-新的容器管理服务产品
  6. Linux的文件系统及文件缓存知识点整理
  7. CentOS开机流程
  8. tableview 添加手势_【iOS12+Swift5】如何在tableViewController里面给Cell添加手势
  9. animation 先执行一次 在持续执行_FANUC机器人:先执行指令功能/后执行指令功能介绍与使用方法...
  10. 队列的基本操作_算法设计:数据结构-队列