前言
Spring Data JPA 是在 JPA 规范的基础上进行进一步封装的产物,和之前的 JDBC、slf4j 这些一样,只定义了一系列的接口。具体在使用的过程中,一般接入的是 Hibernate 的实现,那么具体的 Spring Data JPA 可以看做是一个面向对象的 ORM。虽然后端实现是 Hibernate,但是实际配置和使用比 Hibernate 简单不少,可以快速上手。如果业务不太复杂,个人觉得是要比 Mybatis 更简单好用。
本文就简单列一下具体的知识点,详细的用法可以见参考文献中的博客。本文具体会涉及到 JPA 的一般用法、事务以及对应 Hibernate 需要掌握的点。
人生转折点
去年的时候,几个玩的好的老同学就聊了起来,其中有个考上了西安财大,读了新闻系,毕业后干了不久就想做了,原因很现实,既感觉不到前途,也感受不到任何钱途,索性就去报了一个线下培训班学前端,没选择学Java的原因主要是因为前端的可视化,不会看着枯燥,现在在上海工作了2年多,也有20k+的薪资。
我也考虑了几天,索性还是去报了个培训班,白天工作,晚上学习,反反复复7个月的线上培训,终于破茧成蝶。
刚开始每天面试5家公司,每天海投的简历,但我从来不按照预约时间去面试,利用周末两天整理邮箱中近60家公司地址,逐个百度位置,将距离近的公司排到一起,定到一天去面试。
大多HR都会问您预约的不是今天。我每次都会说:“刚好在咱公司附近面试就顺道过来了,如果不方便我就到预约时间点再来”,几乎所有HR都让我进去面试了。
第四天去了最好的一家公司,也是我的第一任东家,待遇还算不错12k,当时自己其实也只是一个小白,但相比于保安的工作薪资直接翻了2倍多,已经是很满足了。
今年由于新冠肺炎的影响,公司不得不延迟复工,心想着,我可以趁着这段时间好好学习一些更深入的技术知识,于是我又报了之前那个线上培训班,之前了解过他们做高级培训就做的很好,加上我刚入门也是选择的他们,整体感受是非常满意的。
为什么没选择自学?建议?
没选择自学主要是因为当时还有工作,也担心找不到一个学习方向,浪费太多时间,得不偿失。现在网上免费的资源确实很多,当我回头再看的时候却发现很多都是没有重点的,讲的也很干…接下来就跟大家简单分享一下对于自学者的学习建议吧。
1、对于0基础的朋友,我是不建议看书学习的,多看视频去学习,不信的话你可以自己尝试去买回来看,过不了多久估计就扔一边看不下去了。
2、不懂的地方反复看,还不懂可以百度或者去看相关的博客,因为我是报的培训班,有不懂地方直接可以问老师,老师引我思考,然后我就能理解了。
3、复习,对于自己学过的知识一定要复习,如果视频有配套的笔记,建议第二天再巩固一遍,自己也可以用word做笔记,写一写学习日志。
4、根据视频内容尝试画思维导图,大家可以去下载Xmind,思维导图能够帮你形成一个系统的学习过程,思路清晰,让自己有全局观。
上面是我刚入门培训班给我的学习路线,这当然只是1/6的内容,但是你会很清楚的知道你要学习什么内容,旁边的绿色就是实战内容,实战是帮助你巩固知识最有效的方法。
同时,养成这样的习惯不容易遗忘,很多人都是当时觉得学会了,但过一会儿又只知道几个名词。因此,思维导图能方便你日后的复习,提高复习效率,有效检索遗忘的知识点。
敲重点:
向对象是JavaSE的重中之重,里面的知识点个人认为是最难的。后面的知识点都是建立在这之上展开的,没学好面向对象,后面就会稀里糊涂。
- **面向对象是基石,JavaSE中最重要的一是集合,二是IO,**希望大家学习这两个知识点时认真对待,多敲代码,多思考。
- 常用API里,String及其相关类StringBuilder, StringBuffer等必须熟悉,后面会不断用到。不学好的话,后面怎么死都不知道!
- 泛型一般只出现在集合中,个人觉得如果一时无法掌握,那么暂时会在集合中使用泛型就行了。
- 反射对于初学者来说是非常抽象的!!但它又无比重要。它虽然不是JavaSE的重点,但是它是JavaWeb很多难点的底层支撑,不懂反射,寸步难行。
重点
- 面向对象☆☆☆☆☆
- 集合☆☆☆☆☆
- IO ☆☆☆☆☆
- String/StringBuffer/StringBuilder ☆☆☆☆☆
- 反射☆☆☆☆☆
- 泛型☆☆☆☆
熟悉
- 异常
- 多线程
先过一遍
- 网络编程
- 正则表达式
总结
哪些人适合自学?
我总结了以下适合自学的前提条件:
1、对于编程有兴趣,有足够的时间,至少一年以上,且不着急找工作的;
2、有较强自制力,能坚持自学下去的,三天打鱼两天晒网是绝对不行的,但据我了解,能坚持下来的人真的很少很少;
3、具备一定学历,最起码是高中以上。学习编程是要有一定的英语和数学基础的,同时现在面试对于算法面试几乎成了必问题,没有一定逻辑是难以坚持自学的;
哪些人适合培训班?
如果你不符合以上三点,我建议你选择报培训班,不然就劝你放弃。培训班最大的优势在于:省时、高效,培训机构通常会依据当前技术的发展现状、业界的人才需求变化情况,动态地调整教学内容,构建出一个比较完整的就业培训体系,能够让你在短短数月之内,带你入门。
作为一名写了二十多年代码,参加过大大小小的一堆项目,学过一打以上的各种编程语言或技术的老码农来说,我认为编程中充满了套路,只要能掌握这些套路,把这些套路用熟练,应付中低层次的软件开发工作是不成问题的。
而在传授开发套路这块,培训机构是比较高效的,只要你选的是靠谱的培训机构,人别太笨,基础别太差,培训老师手把手教你,经过几个月的强化训练,多数编程套路都能学会。
《一线大厂Java面试真题解析+Java核心总结学习笔记+最新全套讲解视频+实战项目源码》开源
Java优秀开源项目:
ali1024.coding.net/public/P7/Java/git
github.com/spring-projects
最后
给大家送一个小福利
附高清脑图,高清知识点讲解教程,以及一些面试真题及答案解析。送给需要的提升技术、准备面试跳槽、自身职业规划迷茫的朋友们。
附高清脑图,高清知识点讲解教程,以及一些面试真题及答案解析。送给需要的提升技术、准备面试跳槽、自身职业规划迷茫的朋友们。
[外链图片转存中…(img-x4Un0Mfe-1648741553808)]