下载APP
登录
关闭
讲堂
算法训练营
Python 进阶训练营
企业服务
极客商城
客户端下载
兑换中心
渠道合作
推荐作者
当前播放: 16 | 定义JPA的实体对象
00:00 / 00:00
标清
  • 标清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看

玩转Spring全家桶

共123讲 · 123课时,1300分钟
24711
免费
01 | Spring课程介绍
免费
02 | 一起认识Spring家族的主要...
免费
03 | 跟着Spring了解技术趋势
免费
04 | 编写你的第一个Spring程序
免费
05 | 如何配置单数据源
免费
06 | 如何配置多数据源
07 | 那些好用的连接池们:Hika...
08 | 那些好用的连接池们:Alib...
09 | 如何通过Spring JDBC访问...
10 | 什么是Spring的事务抽象(...
11 | 什么是Spring的事务抽象(...
免费
12 | 了解Spring的JDBC异常抽象
13 | 课程答疑(上)
14 | 课程答疑(下)
15 | 认识Spring Data JPA
16 | 定义JPA的实体对象
17 | 开始我们的线上咖啡馆实战...
18 | 通过Spring Data JPA操...
19 | Spring Data JPA的Repos...
20 | 通过MyBatis操作数据库
21 | 让MyBatis更好用的那些工...
22 | 让MyBatis更好用的那些工...
23 | SpringBucks实战项目进度...
24 | 通过Docker辅助开发
25 | 在Spring中访问MongoDB
26 | 在Spring中访问Redis
27 | Redis的哨兵与集群模式
28 | 了解Spring的缓存抽象
29 | Redis在Spring中的其他用...
30 | SpringBucks实战项目进度...
31 | Project Reactor介绍(上...
32 | Project Reactor介绍(下...
33 | 通过Reactive的方式访问Re...
34 | 通过Reactive的方式访问Mo...
35 | 通过Reactive的方式访问RD...
36 | 通过AOP打印数据访问层的...
37 | 通过AOP打印数据访问层的...
38 | SpringBucks实战项目进度...
39 | 编写第一个Spring MVC C...
40 | 理解Spring的应用上下文
41 | 理解请求的处理机制
42 | 如何定义处理方法(上)
43 | 如何定义处理方法(下)
44 | Spring MVC中的视图解析...
45 | Spring MVC中的视图解析...
46 | Spring MVC中的常用视图...
47 | Spring MVC中的常用视图...
48 | 静态资源与缓存
49 | Spring MVC中的异常处理...
50 | 了解Spring MVC的切入点
51 | SpringBucks实战项目进度...
52 | 课程答疑
53 | 通过RestTemplate访问Web...
54 | RestTemplate的高阶用法
55 | 简单定制RestTemplate
56 | 通过WebClient访问Web资源
57 | SpringBucks实战项目进度...
58 | 设计好的RESTful Web Se...
59 | 设计好的RESTful Web Se...
60 | 什么是HATEOAS
61 | 使用Spring Data REST实...
62 | 使用Spring Data REST实...
63 | 分布式环境中如何解决Sess...
64 | 使用WebFlux代替Spring M...
65 | 使用WebFlux代替Spring M...
66 | SpringBucks实战项目进度...
67 | 认识Spring Boot的组成部...
68 | 了解自动配置的实现原理
69 | 动手实现自己的自动配置
70 | 如何在低版本Spring中快速...
71 | 了解起步依赖及其实现原理
72 | 定制自己的起步依赖
73 | 深挖Spring Boot的配置加...
74 | 理解配置背后的PropertyS...
75 | 认识Spring Boot的各类Ac...
76 | 动手定制自己的Health In...
77 | 通过Micrometer获取运行数...
78 | 通过Spring Boot Admin...
79 | 如何定制Web容器的运行参...
80 | 如何配置容器支持HTTP/2...
81 | 如何配置容器支持HTTP/2...
82 | 如何编写命令行运行的程序
83 | 了解可执行Jar背后的秘密
84 | 如何将Spring Boot应用打...
85 | SpringBucks实战项目进度...
86 | 简单理解微服务
87 | 如何理解云原生(Cloud N...
88 | 12-Factor App(上)
89 | 12-Factor App(下)
90 | 认识Spring Cloud的组成...
91 | 使用Eureka作为服务注册中...
92 | 使用Spring Cloud Loadb...
93 | 使用Feign访问服务
94 | 深入理解服务发现背后的Di...
95 | 使用Zookeeper作为服务注...
96 | 使用Consul作为服务注册中...
97 | 使用Nacos作为服务注册中...
98 | 如何定制自己的Discovery...
99 | SpringBucks实战项目进度...
100 | 使用Hystrix实现服务熔...
101 | 使用Hystrix实现服务熔...
102 | 如何观察服务熔断
103 | 使用Resilience4j实现服...
104 | 使用Resilience4j实现服...
105 | 使用Resilience4j实现服...
106 | SpringBucks实战项目进度...
107 | 基于Git的配置中心(上)
108 | 基于Git的配置中心(下)
109 | 基于Zookeeper的配置中心
110 | 深入理解Spring Cloud的...
111 | 基于Consul的配置中心
112 | 基于Nacos的配置中心
113 | SpringBucks实战项目进度...
114 | 认识Spring Cloud Stre...
115 | 通过Spring Cloud Stre...
116 | 通过Spring Cloud Stre...
117 | SpringBucks实战项目进度...
118 | 通过Dapper理解链路治理
119 | 使用Spring Cloud Sleu...
120 | 如何追踪消息链路
121 | 除了链路还要治理什么
122 | SpringBucks实战项目进度...
123 | 结束语
本节摘要

PDF 课件和源代码下载地址:

https://github.com/geektime-geekbang/geektime-spring-family

猜你喜欢

unpreviewunpreview

展开

精选留言(14)

  • 2019-02-20
    老师可否介绍下JDBC/Jdbc Template/JPA/Hibernate/Mybatis的区别和联系?
    还有这些技术如何跟spring结合?
    谢谢老师!

    作者回复: JDBC是各种操作的基础,JPA是个规范,Hibernate是JPA的一种实现,Spring Data JPA用的是Hibernate,MyBatis是另一种ORM的框架,Hibernate不用自己手写SQL,但其实复杂的HQL写到最后跟写SQL也没啥大差别了。

    15
  • 2019-02-20
    老师,这里您提到这个Project Lombok工具,中间有说明这个三个构造器相关的注解,虽然可能不常用,但还是想了解一下这三个注解的差异,还有这个@Builder这个注解是什么方式来构造的呢?谢谢老师的分享。

    作者回复: 构造方法的注解其实就是参数的不同,@Builder的用法课程中的例子有,就是调用builder()然后一路赋值,最后用build()构造对象。

    3
  • 2019-03-02
    老师,如果我们现在有个员工表外键引用部门表,业务场景是员工调部门,原生SQL只需要把员工表里的部门ID外链值改变就可以了,jpa里我只能把部门表也查出来Cascade save,有优化方案吗?
    2
  • 2019-02-21
    老师想问下Lombok中的注解都推荐使用吗?有没有哪些不太推荐使用的呢

    作者回复: 我一般用@Data @Builder @Slf4j,还有构造方法的那几个。

    2
  • 2019-09-17
    JDBC是各种操作的基础,
    JPA是个规范,
    Hibernate是JPA的一种实现,
    Spring Data JPA用的是Hibernate,
    MyBatis是另一种ORM的框架,
    Hibernate不用自己手写SQL,但其实复杂的HQL写到最后跟写SQL也没啥大差别了。
    三年前用过JPA,简单SQL还行,复杂的用mybatis更爽,试试就知道啦!
    展开
    1
  • 2019-06-24
    在想老师为什么着重讲hibernate而不是mybatis呢,好像现在互联网大厂基本都弃用hibernate而使用mybatis?

    作者回复: 不是弃用,只是更多的会选择MyBatis,因为这样DBA对SQL能有更大的把控力度,然后大部分工程都用MyBatis,那渐渐规范就变成了用MyBatis。但这并不是说Hibernate不好,其实它作为老牌ORMapping框架,还是很不错的。

    1
  • 2019-05-19
    老师,springdata jpa如果项目中用到了复杂的查询sql,是不是对代码的侵入比较大?另外涉及到sql优化是不是有影响?在什么样的场景下适合用JPA?

    作者回复: 不是对代码侵入性大,是它本来就是代码的一部分,复杂的语句本来就得靠你手写,比如HQL语句。优化SQL本来就是自动生成的语句性能不好,要做手工调整,也得靠手写。所以在一些大厂,默认就会使用MyBatis,对SQL的把控力度更强一点。

    1
  • 2019-03-13
    老师,如果用mybatis的话实体类里面就不用JPA注解了吧

    作者回复: 额,那是。MyBatis也不认JPA注解呀,不是一家人。

    1
  • 2019-02-23
    老师,我用spring data中的saveall方法想实现批量插入,更新数据,但看了源码后是一条条执行的。。测试后,速度太慢了。请问有其它的批量操作替代方案吗?谢谢~

    作者回复: 批量操作就别用Repository了。直接用Hibernate的批量操作,或者JDBC的也行,都有针对大批数据的操作的。

    1
  • 2019-02-21
    1、请问老师 Springboot 结合 MybatisPlus 的使用 除一般的CURD之外 的 进阶策略。
    2、请问课程后面是否涉及到 jekins feign 等现在公司日常中的 应用软件或框架。
    3、老师讲解能细致一点吗
    4、github中代码中可以适当增加一些注解

    作者回复: 我没用过MyBatisPlus诶,抱歉,我用page-helper和mybatis-generator比较多一些,后面会讲到这两个的。
    Jenkins是持续集成用的,和我们这个课程没什么关系,不会涉及。
    Feign在讲Spring Cloud时会讲到。
    Github上的代码都是课程演示中讲过的代码,我大部分都是视频中就解释过的了,如果看视频时没有看明白的话,估计按我自己的思路写的注释对你的帮助也不大诶。

    1
  • 2019-03-27
    请问老师,Hibernate官网的Entity类加了static,这样做有什么好处吗,因为平时写代码的时候entity都是用的非静态类
  • JDBC是各种操作的基础,JPA是个规范,Hibernate是JPA的一种实现,Spring Data JPA用的是Hibernate,MyBatis是另一种ORM的框架,Hibernate不用自己手写SQL,但其实复杂的HQL写到最后跟写SQL也没啥大差别了
  • 2019-02-21
    丁老师你好,我曾经在用lombok时,项目打成jar包后,其他项目用的时候没有getter,setter方法,麻烦老师解答一下,谢谢。

    作者回复: 在IDE里么?要有Lombok插件,其他项目也需要依赖Lombok的JAR

  • 2019-02-21
    老师催更啊😭等了好久了

    编辑回复: 每日更新两节课哈~