Java框架的学习方向和学习顺序

Java的学习一般从Java基础的语法开始,到数据库、JavaWeb。接下来就是学习java框架了,java框架那么多,很多小伙伴不知道应该学习哪一种或者哪几种。从就业的角度来说,要学习通用性最强的框架。

首先看一下大部分的Java工程师招聘要求,重点关注对框架的要求:

截图取自Boss直聘

总结来就是:Spring、SpringMVC、Mybatis、SpringBoot、SpringCloud。

时间来不及的话,先学一下Spring,搞懂搞懂 AOP 和 IOC 两个概念,以及Spring 中 bean 的作用域与生命周期,等等。然后学习SpringBoot框架,这个框架应用的比较多。MyBatis是必须学的。SpringCloud可以先放一放。

下面详细介绍下这几个框架,并附上学习视频。

1.Spring

Spring 是个Java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯。

Spring框架的优势:

  • 开源;
  • 轻量:Spring 是轻量的,基本的版本大约2MB;
  • 控制反转(IOC):Spring通过控制反转降低耦合度,对象们给出它们的依赖,而不是创建或查找依赖的对象们;
  • 面向切面的编程(AOP):Spring支持面向切面的编程,并且把应用业务逻辑和系统服务分开;
  • 容器:Spring 包含并管理应用对象的生命周期和配置;
  • 事务管理:Spring 提供一个持续的事务管理接口,可以扩展到上至本地事务下至全局事务(JTA);
  • 异常处理:Spring 提供方便的API把具体技术相关的异常(比如由JDBC,Hibernate or JDO抛出的)转化为一致的unchecked 异常。
学习链接:https://www.bilibili.com/video/BV1yt411e7E8?from=search&seid=7841233821499407698

2.SpringMVC

Spring MVC是Spring提供的一个强大而灵活的web框架。借助于注解,Spring MVC提供了几乎是POJO的开发模式,使得控制器的开发和测试更加简单。这些控制器一般不直接处理请求,而是将其委托给Spring上下文中的其他bean,通过Spring的依赖注入功能,这些bean被注入到控制器中。

这个视频不错,包含了Mybatis+Spring+SpringMVC。

3.MyBatis

Mybatis是一个持久层框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直接编写原生态sql,可以严格控制sql执行性能,灵活度高。

MyBatis 可以使用 XML 或注解来配置和映射原生信息,将 POJO映射成数据库中的记录,避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。

通过xml 文件或注解的方式将要执行的各种 statement 配置起来,并通过java对象和 statement中sql的动态参数进行映射生成最终执行的sql语句,最后由mybatis框架执行sql并将结果映射为java对象并返回。(从执行sql到返回result的过程)。

下面这个视频主要讲的是配置文件编写、动态SQL、MyBatis缓存机制、MyBatis-Spring整合、MyBatis逆向工程,MyBatis高级内容(MyBatis源码解析,MyBatis单/多插件运行机制,MyBatis四大对象工作原理,自定义TypeHandler、MyBatis存储过程&游标处理等)。

https://www.bilibili.com/video/BV1mW411M737

4.SpringBoot

Spring Boot是Spring开源组织下的子项目,是Spring组件一站式解决方案,主要是简化了使用Spring的难度,简省了繁重的配置,提供了各种启动器,开发者能快速上手。

SpringBoot的优点:

  • 独立运行 Spring Boot而且内嵌了各种servlet容器,Tomcat、Jetty等,现在不再需要打成war包部署到容器中,Spring Boot只要打成一个可执行的jar包就能独立运行,所有的依赖包都在一个jar包内。
  • 简化配置 spring-boot-starter-web启动器自动依赖其他组件,简少了maven的配置。
  • 自动配置 Spring Boot能根据当前类路径下的类、jar包来自动配置bean,如添加一个spring-boot-starter-web启动器就能拥有web的功能,无需其他配置。
  • 无代码生成和XML配置 Spring Boot配置过程中无代码生成,也无需XML配置文件就能完成所有配置工作,这一切都是借助于条件注解完成的,这也是Spring4.x的核心功能之一。
  • 应用监控 Spring Boot提供一系列端点可以监控服务及应用,做健康检测。

下面这个视频着重介绍SpringBoot的使用和内部原理,包含微服务概念、配置文件、日志框架的使用、web开发、Thymeleaf模板引擎、Docker容器技术等等。

https://www.bilibili.com/video/BV1gW411W76m?from=search&seid=13372594037840896149

5.SpringCloud

Spring Cloud 作为 Java语言的微服务框架,它依赖于 Spring Boot ,有快速开发、持续交付和容易部署等特点。Spring Cloud 的组件非常多,涉及微服务的方方面面,井在开源社区 Spring、Netflix Pivotal 两大公司的推动下越来越完善。

https://www.bilibili.com/video/BV18E411x7eT?spm_id_from=333.788.b_636f6d6d656e74.15
#学习路径##Java#
全部评论
感谢参与【创作者计划2期·技术干货场】!欢迎更多牛油来写干货,瓜分总计20000元奖励!!技术干货场活动链接:https://www.nowcoder.com/link/czz2jsghtlq(参与奖马克杯将于每周五结算,敬请期待~)
点赞 回复
分享
发布于 2021-04-19 20:16

相关推荐

3 42 评论
分享
牛客网
牛客企业服务