憋了半个月的 PDF:精通 Java(五)

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
简介: 真诚的和大家说一句抱歉,因为最近家庭原因 + 我自己思想的懒惰,所以导致有一段时间没有更新技术文章,一直都在憋这一篇关于学习 Java 如何从入门到精通的文章,在没有发文的这段时间很煎熬,甚至无数次的想放弃写这篇文章,因为这篇文章不是很好写,我付出大量的时间和心血来收集大量的素材、研究大量的书本进而熔铸成这篇文章,希望对你有所帮助。

MyBatis 技术内幕

微信图片_20220416171644.png

嗯,这本书其实可以说是把 MyBatis 的一些核心特性和核心组件说完了,《MyBatis 技术内幕》旨在为读者理解 MyBatis 的设计原理、阅读 MyBatis 源码、扩展 MyBatis 功能提供帮助和指导,让读者更加深入地了解 MyBatis 的运行原理、设计理念。希望《MyBatis 技术内幕》能够帮助读者全面提升自身的技术能力,让读者在设计业务系统时,可以参考 MyBatis的 优秀设计,更好地应用MyBatis。

这本书我还是强烈推荐给大家的。

另外,你也可以去看 MyBatis 官方文档 mybatis - MyBatis 3

英文版的看不懂,汉化的也给你安排了。mybatis - MyBatis 3

MyBatis 这部分内容可以去看一些视频

【狂神说Java】Mybatis最新完整教程IDEA版通俗易懂

2020最新MyBatis教程【IDEA版】-MyBatis从入门到精通

那么 MyBatis 都应该掌握哪些内容呢?当然你要会用 MyBatis 了,用法直接参见官网或者 MyBatis 从入门到精通这本书就可以了。

  • MyBatis 基础架构
  • MyBatis 核心配置之 Executor
  • MyBatis 核心配置之StatementHandler
  • MyBatis 核心配置之 ParameterHandlers
  • MyBatis 核心配置之 ResultSetHandler
  • MyBatis一级缓存详解
  • MyBatis 二级缓存详解
  • Mybatis源码分析-解析器模块
  • 面试官问你MyBatis SQL是如何执行的?把这篇文章甩给他
  • MyBatis源码解析-类型转换篇
  • MyBatis源码解析 - 资源加载模块
  • Mybatis源码解读-设计模式总结
  • 【MyBatis源码分析】Configuration加载(上篇)
  • 【MyBatis源码分析】Configuration加载(下篇)

我上面给出的这些连接,都是让你在工作中逐步掌握的,MyBatis 要是达到能够开发的程度,你只需要看完 MyBatis 从入门到精通或者一门视频课程就可以了。

Spring

在学完 MyBatis ,就该学习我们的核心框架 Spring 了,Spring 能风靡到现在一定有他的道理,等你到工作中再慢慢体会它的精髓。

学习 Spring ,我首先给你推荐的一本书就是 Spring 实战,也就是 Spring In Action,这本书我认为即使学习 Spring 最好的一本,没有之一了。

微信图片_20220416171653.png

这个评价我认为是有些低了,还有评价说是什么不注重思想的,这只是一本实战书诶,又不是讲思想的,不能要求一本书能够涵盖所有的内容吧,只要这本书能够给出实战案例,代码示例,清楚的讲明白逻辑,我觉得就是好的。

Spring 揭秘

微信图片_20220416171657.png

这本书和上面的 Spring 实战一起学习,那么 Spring 你就能击败大部分选手了,这两本书是绝配。这本书更多讲解的是方案和思想。这本书没有教程似的训导,更多的是说故事般的娓娓道来,本书是作者在多年的工作中积累的第一手 Spring 框架使用经验的总结,深入剖析了 Spring 框架各个模块的功能、出现的背景、设计理念和设计原理,揭开了 Spring 框架的神秘面纱,使你“知其然,更知其所以然”。每部分的扩展篇帮助读者活学活用 Spring 框架的方方面面,同时可以触类旁通,衍生出新的思路和解决方案。

关于 Spring 基础的视频,我推荐下面几个

【狂神说Java】Spring5最新完整教程IDEA版通俗易懂

尚硅谷-Spring5框架最新版教程(idea版)

作为进阶学习,我推荐宁看看官网

Core Technologies

Spring 官网的权威性不用我多说了吧,但是官网有个特点,这个不只是 Spring 特有的,几乎所有的外国官网都不会带你分析源码,所以如果你想要了解设计思想和理论精髓,还是要撸源码。

撸源码当然很费劲了,这里推荐给你两本书可以搭配着看下,网上对这两本书的褒贬不一,我不强烈推荐任何一本。。。。。。

Spring 源码深度解析

微信图片_20220416171701.png

这本书我看了一些,以我目前的能力水平可能还无法完全看懂这本书,里面的内容非常深奥,不过如果你对 Spring 源码有一些研究的话,可以看看。

Spring 技术内幕

微信图片_20220416171705.png

这本书和上面一样,代码比较多,但是解释相对较少,适合对 Spring 源码有一些了解的同学看。

推荐给你几个 Spring 源码的视频

这可能是B站讲的最好的SPRING源码教程(2021年最新版)

尚硅谷Spring注解驱动教程(雷丰阳源码级讲解)

当然,Spring 你终究还是要看源码的,所以还是硬着头皮啃源码吧,骚年们~

关于 Spring,有哪些需要学习的东西呢?

  • Spring学习(1)——快速入门
  • Spring学习笔记(二):Spring Bean装配
  • 【Spring实战】高级装配 谢随安
  • 谈谈对Spring IOC的理解
  • 详解Spring IOC
  • Spring系列之beanFactory与ApplicationContext
  • BeanFactory 简介以及它 和FactoryBean的区别(阿里面试)
  • Spring(4)——面向切面编程(AOP模块)
  • Spring AOP 扫盲
  • Spring注解?啥玩意?
  • 精进Spring—Spring常用注解【经典总结】
  • 关于 Spring 的文章,可以看下 Spring 系列目录 查漏补缺
  • 使用spring validation完成数据后端校验
  • Spring进阶 - 验证、数据绑定和类型转换
  • 浅谈Spring的Resources体系

Spring 单独拿来使用的场景非常少,更多是作为框架的整合来用,Spring 最主要的特点就是两个:IOC 容器和 Aop,IOC 容器就是 Spring 和 各种资源整合的基础,可以说有了 IOC 的这个特点,才会有 bean 的装配,自动装配等等特性,而 Aop 就是减少业务耦合性的一种技术,让我们能够以"切面"的方式来看到业务关联性。最主要的就是这两项技术,把这两项技术弄懂了 Spring 就差不多了。

HTTP

再继续往下学习之前,我们先聊聊 HTTP 协议,HTTP 协议可以说是我们 Java 开发打交道最多的协议了,关于 HTTP 协议,我们这里不讲述太多,大家可以参考一下我的这篇文章,里面有详细的 HTTP 教程。

想深入了解 HTTP 协议,有哪些值得推荐的书籍?

Tomcat

我刚开始接触 Tomcat 之前也有这个疑问,这个 Tomcat 是啥。。。。。。听起来很别扭,但是你可以通过这篇文章了解一下什么是 Tomcat

Tomcat(一) Tomcat是什么:Tomcat与Java技术 Tomcat与Web应用 以及 Tomcat基本框架及相关配置

牧酱:什么是TOMCAT

Tomcat 我推荐你看看这几本书

微信图片_20220416171711.png

这本书是一本万能工具,其主题涵盖了Apache Tomcat这一广受欢迎的开源servlet、JSP容器和高性能的web server。《Tomcat权威指南》对管理员和web站点管理员而言,具有较强的参考价值;对在开发或产品中要使用 Tomcat 作为 web 应用程序服务器的开发者而言,这是一本有用的指南书;对 Tomcat 感兴趣的人而言,这是一本优秀的介绍工具。

但是这本书翻译好像比较糟糕,大家可以看看英文版

http://index-of.co.uk/Misc/O'Reilly%20Tomcat%20The%20Definitive%20Guide%20(2nd%20Edition).pdf

深入剖析 Tomcat

另外一本就是深入剖析 Tomcat

微信图片_20220416171716.png

这本书会揭示 Tomcat 的工作原理,通过学习本书,你将可以自行开发 Tomcat 组件,或者扩展已有的组件,甚至可以让你自制一个 Tomcat 服务器。

关于 Tomcat 学习有多深,这个没有一个明确的定论,对于初级 Java 开发而言,你知道 Tomcat 是干什么的,能够起到什么作用就可以了,如果你想要达到中高级 Java 程序员的水平,那么任何深入的学习都是不为过的。

Tomcat 架构解析

微信图片_20220416171719.png

本书全面介绍了Tomcat的架构、各组件的实现方案以及使用方式。包括Tomcat的基础组件架构以及工作原理,Tomcat各组件的实现方案、使用方式以及详细配置说明,Tomcat与Web服务器集成以及性能优化,Tomcat部分扩展特性介绍等。读者可以了解应用服务器的架构以及工作原理,学习Tomcat的使用、优化以及详细配置。

这本书和深入剖析 Tomcat 差不多,都是带你深入理解 Tomcat 的一本书,我认为你看哪本都可。

Servlet/JSP 技术

下面要聊的不是框架了,而是一项非常古老的技术:Servlet 和 JSP 技术,这两项技术很多人说不用在学习了,说这话的人有两点考量:1. 他认为老的技术都不用学了;2. 他自己根本就不懂。

在没有前后端分离前,我们的项目架构都是单体,也就是各种 JSP 页面直接耦合进去,Servlet 负责前端和后端的交互,这个时候项目非常冗余,很多文件都扔在一个项目中,导致逻辑混乱,文件类型庞杂。后来随着技术的发展,出现了 SpringMVC ,封装了 Servlet,让我们不用再管理 HttpServletRequest 和 HttpServletResponse,直接让 SpringMVC 把这事干了,我们只用遵照其要求的风格 --- restFul 格式,我们就能够把前后端的接口"标准化",随着 HTML5 等动态页面的发展,从而出现了后面我们说的前后端分离的项目架构,也就是前端是一个项目,后端是一个项目。

但是他们的核心还是 Servlet 和 JSP。

这里我又开始推荐书了

Head First Servlet/JSP

微信图片_20220416171723.png

Head First 系列的书就是幽默,通俗易懂,用轻松愉快的语言,通过做游戏的方式就把知识点给你讲明白了。讲述了关于如何编写 servlets 和 JSP 代码,如何使用 JSP 表达式语言,如何部署 Web 应用,如何开发定制标记,以及会话状态、包装器、过滤器、企业设计模式等方面的知识,以一种轻松、幽默而又形象的方式让你了解、掌握 servlets 和 JSP,并将其运用到你的项目中去。

这本书 cxuan 强烈推荐

这里给大家推荐一个学习 Servlet 的网站

Servlet/JSP Gossip

这同时也是一本书

微信图片_20220416171727.png

作者是台湾人,除了语言有点没有那么痛快之外,其他技术点的讲解还不错。

Servlet & JSP 核心编程

微信图片_20220416171730.png

这也是一本基础书籍,条理清晰。对于初学者来说是一本不可多得的入门书籍。

Servlet 和 JSP 的视频,我给你推荐

尚硅谷最新版JavaWeb全套教程,java web零基础入门完整版

这个其实也包括了前端 HTML CSS JavaScript Servlet JSP 部分

JavaWeb视频教程(JSP/Servlet/上传/下载/分页/MVC/三层架构/Ajax)

这两个视频都是 Web 整合的,单独的 Servlet 可以看看

【千锋】Servlet教程-Servlet入门

2020最新servlet教程-Servlet全解和案例实操_

Spring MVC

SpringMVC 终于来了!!!!为什么最后再说 SpringMVC,因为Spring MVC 其实就是 Servlet 的一种封装,而且 Spring MVC 打交道的对象是 HTTP 协议,所以你需要先掌握上面知识再学 Spring MVC。

学习 SpringMVC,我推荐你看

SpringMVC 学习指南

微信图片_20220416171734.png

本书重在讲述如何通过 Spring MVC 来开发基于 Java 的 Web 应用。全书共计12章,分别从 Spring框架、模型2和 MVC模式、Spring MVC 介绍、控制器、数据绑定和表单标签库、传唤器和格式化、验证器、表达式语言、JSTL、国际化、上传文件、下载文件多个角度介绍了Spring MVC。除此之外,本书还配有丰富的示例以供读者练习和参考。

看透 SpringMVC

微信图片_20220416171737.png

全面介绍 Spring MVC 的架构、原理、核心概念和操作,通过案例完整呈现 Tomcat 的实现,系统总结 Spring MVC 九大组件的处理以及常用的技巧和实践。

这两本书看完,SpringMVC 就差不多了,如果觉得还有遗漏的话,不妨看看官网。

Web on Servlet Stack

视频可以看看这个

2020最新SpringMVC教程【IDEA版】

那么关于 SpringMVC 都需要掌握哪些内容呢?

  • Spring MVC【入门】就这一篇!
  • Spring MVC 解析之 DispatcherServlet
  • Spring Web MVC-09-springmvc 过滤器与拦截器 Handler and Filter
  • SpringMVC全局异常处理
  • SpringMVC 单文件上传与多文件上传
  • SpringMVC上传文件的三种方式
  • 一文读懂SpringMVC中的文件上传与下载
  • Spring MVC打印@RequestBody、@Response日志
  • Spring MVC拦截器实现用户登录权限验证案例
  • Spring MVC框架原理分析
  • SpringMVC - 视图解析过程详解
  • RestTemplate 最详解
  • Spring MVC中使用RestTemplate访问REST服务详解
  • SpringMVC之Controller常用注解功能全解析
  • MVC设计模式介绍 & SpringMVC实现

Stop. Stop. Stop

当你从 Java 基础 -> MySQL基础 -> MyBatis -> Spring -> HTML/CSS -> Servlert/JSP -> SpringMVC 学完之后,我觉得你应该需要花 1 - 2 年左右的时间,此时的你应该能够具备完成一个小型 SSM 项目的能力了,现在先不忘下面继续学习了,你应该把你的知识进行整合,你可以按照书中的内容搭建小型项目,或者完成一些 SSM 项目等,很多 Java 方向的毕业设计也就到这里就能完事儿了。

这里给你推荐一些整合资源

Java SSM练手小项目-手把手带你搭建一个基于SSM框架的人力资源管理后台系统

liddhome/yosebook-ssm

ZhongFuCheng3y/910convenienceSite

学生管理系统(SSM简易版)总结

https://github.com/saysky/ForestBlog

或者看一下尚硅谷的整合教程

尚硅谷SSM框架实战,ssm整合教程

此时的你,可以说能够具备一个初级 Java 开发的基本素质了,但是你可能还找不到工作,为什么?因为现阶段最最最流行的框架你还没有接触,下面有请大名鼎鼎的 SpringBoot 大佬登场。

SpringBoot

SpringBoot 可以说是当今 Java 领域最火的框架了,那么 SpringBoot 为什么这么火呢?

相关文章
|
5月前
|
IDE Java 编译器
使用Java分割PDF文件
使用Java分割PDF文件
|
27天前
|
Java Apache Maven
Java将word文档转换成pdf文件的方法?
【10月更文挑战第13天】Java将word文档转换成pdf文件的方法?
129 1
|
1月前
|
存储 Java API
如何使用 Java 中的 API 更改 PDF 纸张大小
如何使用 Java 中的 API 更改 PDF 纸张大小
40 11
|
1月前
|
Java
Java PDF模板生成PDF
Java PDF模板生成PDF
30 1
|
5月前
|
Java
java处理pdf代码
java处理pdf代码
47 0
|
4月前
|
JavaScript Java
Java 将Markdown文件转换为Word和PDF文档
【7月更文挑战第5天】Java中使用`Spire.Doc for Java`库可方便地将Markdown转换为Word或PDF。基本步骤包括导入模块,创建`Document`对象,加载Markdown文件,然后保存为目标格式(`.docx`或`.pdf`)。若遇到`Invalid UTF-8 stream`错误,需确保Markdown文件是UTF-8无BOM编码。页面设置可通过`PageSetup`类调整。注意,实际应用会依据具体需求和环境有所调整。
273 6
|
5月前
|
Java
Java编程思想(面向对象)第四版PDF分享
探索《Java编程思想》第四版,理解Java不仅是特性集合,更是解决问题的强大工具。本书深入设计层面,构建编程思维模型,助你逐步精通Java。[阅读更多](https://zhangfeidezhu.com/?p=355) ![Java编程思想](https://ucc.alicdn.com/pic/developer-ecology/nrw3f3oqlpmag_c8ff959a921545f1bbabcefd37f029cf.png)
59 1
Java编程思想(面向对象)第四版PDF分享
|
3月前
|
Java
JAVA PDF 截取N页,生成新文件,转图片,多个PDF 合并
JAVA PDF 截取N页,生成新文件,转图片,多个PDF 合并
85 0
|
4月前
|
Java API Apache
如何在Java中实现PDF生成
如何在Java中实现PDF生成
|
5月前
|
XML Java 数据格式
Java用xpdf库获取pdf文件的指定范围文本内容
Java用xpdf库获取pdf文件的指定范围文本内容
89 1

热门文章

最新文章