学习一门编程语言,如果不去操作下数据,就感觉这门编程语言空有皮囊却没有灵魂,对吧?要想学好数据,首先要学习一下 SQL,推荐《SQL 必知必会》,然后是 MySQL,推荐《高性能 MySQL》。再拓展的话,还有 Redis,互联网技术领域中使用最广泛的存储中间件,推荐《Redis 深度历险:核心原理与应用实战》。还有 MongoDB,非关系型数据库,推荐《MongoDB权威指南》。
视频的话,B 站上推荐 3 个。
SQL:一个老外的视频课(中字版啦),内容制作得非常棒,所以完全不用担心听不懂。
https://www.bilibili.com/video/BV1UE41147KC
MySQL:一个女老师讲的,弹幕很精彩。
https://www.bilibili.com/video/BV12b411K7Zu
Redis:
https://www.bilibili.com/video/BV1S54y1R7SB
第三部分:框架
大部分 Java 程序员都要从事 JavaWeb 的相关开发工作,要开发 JavaWeb,自然就离不开 Spring 的系列框架。甚至可以这么说,没有 Spring 的 Java 项目是不存在的。Spring 框架正在变得越来越庞大,但核心的概念仍然是 IOC 和 AOP,也就是控制反转和面向切面编程。这个两个概念对于初学者来说,学习曲线有点陡峭。
目前流行的内容主要是:
-
Spring
-
Spring MVC
-
MyBatis
-
Spring Boot
-
Spring Cloud
要学习 Spring,能读的书不多,我能想到的只有《Spring实战》,坦白地说,这本书很一般,但市面上比它好的书,我还不知道。
单视频的话,推荐:
https://www.bilibili.com/video/BV1Vf4y127N5/?spm_id_from=333.788.videocard.7
学完 Spring,就要学 SpringMVC,推荐大家看视频,江南一点雨的,在 B 站上虽然播放量不是特别大,但我觉得内容特别棒——毕竟好兄弟!视频地址我贴一下。
https://www.bilibili.com/video/BV1qp4y1n7D1
然后是 MyBatis,不用找书看了,直接看官方文档就行,讲得特别好。本身 MyBatis 也没有特别难的东西,就是一些 XML 配置和动态 SQL。
https://mybatis.org/mybatis-3/zh/index.html
Spring+SpringMVC+MyBatis 这三个框架学完,可以说你就具备了开发企业级应用的能力了。至于 Spring Boot,我推荐看纯洁的微笑的博客,访问量在千万级别以上,影响了无数的初学者,我个人强烈推荐。
http://www.ityouknow.com/spring-boot.html
视频的话,也有。
https://www.bilibili.com/video/BV1PE411i7CV
最后是 Spring Cloud,是一系列框架的有序集合。它利用 Spring Boot 的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用 Spring Boot 的开发风格做到一键启动和部署。
博客的话,推荐纯洁的微笑。
http://www.ityouknow.com/spring-cloud.html
https://www.bilibili.com/video/BV1jJ411S7xr
第四部分:练手项目
到底是不是一个好的 Java 练手项目,关键的因素在这个项目的文档是否全面!这个因素我认为是最重要的,GitHub 和码云上有成千上万的项目,真正能脱颖而出的不在这个项目有多牛逼,作者的技术有多厉害,而在于这个项目的文档能不能让大家看得懂!
我不给大家推荐太多,多的话,就乱,不知道该从哪个开始。
1)电商秒杀
SpringBoot 完整电商系统 Mall:包括前台商城系统及后台管理系统,基于 SpringBoot+MyBatis 实现。
https://github.com/macrozheng/mall
miaosha:秒杀系统设计与实现。
https://github.com/qiurunze123/miaosha
2)博客论坛
vhr:微人事是一个前后端分离的人力资源管理系统,项目采用 SpringBoot+Vue 开发。
https://github.com/lenve/vhr
halo([ˈheɪloʊ],意为光环,也可以当成拼音读(哈喽)):一个优秀的开源博客发布应用。
https://github.com/halo-dev/halo
后端技术栈
-
Spring Boot
-
Spring Security
-
MyBatis
-
MySQL
-
Redis
-
RabbitMQ
-
Spring Cache
-
WebSocket
-
…
前端技术栈
Vue
ElementUI
axios
vue-router
Vuex
WebSocket
vue-cli4
…
最后
分享一些系统的面试题,大家可以拿去刷一刷,准备面试涨薪。
这些面试题相对应的技术点:
- JVM
- MySQL
- Mybatis
- MongoDB
- Redis
- Spring
- Spring boot
- Spring cloud
- Kafka
- RabbitMQ
- Nginx
- …
大类就是:
- Java基础
- 数据结构与算法
- 并发编程
- 数据库
- 设计模式
- 微服务
- 消息中间件
(img-50U3zGVB-1714643571905)]
[外链图片转存中…(img-RJNFxCIF-1714643571905)]
[外链图片转存中…(img-GqRtq4fK-1714643571905)]
[外链图片转存中…(img-mrES1azs-1714643571906)]
[外链图片转存中…(img-EE4MLBHT-1714643571906)]
[外链图片转存中…(img-8y6UvnQ5-1714643571906)]
[外链图片转存中…(img-mvQ3L9me-1714643571907)]