夜光带你走进SSM框架 (一)新的领域

夜光序言:

笑看风雨逝灯火,风雨阑珊夜归人

 

正文:

  框架做为企业使用的重要技术, 其本质是”写更少的代码,做更多的事情”, 从而大大减少代码量, 让程序员更加关注业务的实现。 自己写的少了,都是用别人写好的东西就要明白别人写了什么

 

  学习框架重难点不仅仅是如果使用框架而是要明白别人到底写了什么。 但是也要掌握好”度”,不要一味追求底层, 要”择其重”, 否则可能出现东西太多, 永远也学习不完的情况~~~

 

 

1. MyBatis 框架

学习 MyBatis 框架要知道它是一个持久层框架。它的主要职责就是完成数据库操作,因此也要求我们有一定的 SQL 基础。MyBatis 灵活就体现在所有 SQL 都是程序员编写,想要什么样的结果就写什么样的 SQL 命令,剩下大部分的事情都交给 MyBatis 完成了。

 

2. Spring 框架

学习 Spring 框架的目标很明确, 就是学习好 IOC/DI、 AOP、 声明式事务。 单独使用 Spring 很简单,重点是学习了核心功能后如何把这些功能运行。目前大部分技术都需要被 Spring 整合, 所以 Spring 是很重要的框架。

Spring 框架不是专注于某一层, 哪里都有 Spring 的影子。所以基础语法学习好后要多做几个项目去, 才能真正的感受到 Spring 的魅力。

 

3. SpringMVC 框架

SpringMVC 做为 MVC 框架, 其关注点就是控制器的编写。如何接收参数, 如何传递内容到页面,还有大量注解这些都是核心。学习时把握好主脉,要从运行原理入手, 清楚的知道里面的核心组件, 学习起来就事半功倍了。

 

4. Shiro 安全框架


Shiro 应用场景都是在权限、安全上,应用场景很明确,所以就导致 Shiro里面有着大量专业术语。 学习 Shiro 从架构图出发,清晰的记忆所有专业术语。我们分两大块学习 shiro,分别是:认证和授权。

 

 

高级技术阶段是随着电商火热后被大量使用的,这些技术大部分都是为了解决”高负载”,”高并发”等使用。


1. Linux
Linux 是操作系统,学习 Linux 就是为了让自己开发的项目发布到 Linux中,所以学习 Linux 的主要要求是如何把项目运行的环境都配置出来。作为JAVA 程序员不要求掌握特别深的 Linux 知识,掌握基本操作即可。本课程就是针对 JAVA 程序员进行设计,快速入门,简单直接。

2. Maven
Maven 是项目构建工具,必须先要弄清楚分布式的概念。 从学习了 Maven 后每个项目可能不是一个 Project 而是很多个, 所以重难点是项目和项目之间的关系以及Maven 中 POM 的配置。


3.Dubbo
使用 Dubbo 先要弄清楚 RPC 概念。从架构图入手,清晰明白 Dubbo 的架构和运行过程,要多花一定时间在 Dubbo 的架构图上。另外,Dubbo 使用过程中要尽量使用配置文件配置而不要使用注解。
 

4. VSFTPD
VSFTPD 可以搭建图片服务器, 先要知道 FTP 协议,然后弄清楚为什么使用VSFTPD 以及熟练使用 FtpClient。

5. Nginx
先要弄清楚反向代理的概念,代理本机目录和代理其他主机。 熟练安装 Nginx 和配置 Nginx 是学习 Nginx 的重点。

6. Redis
NoSQL 数据库在企业中使用越来越多,最主要的优点就是效率高。每个 NoSQL 数据库有着自己独有的操作 API,所以在能够熟练安装 Redis 基础上,更要熟练使用 Jedis操作 Redis。

7. Solr
Solr 搜索,先要能够搭建 SolrCloud。 学会使用 SolrJ 之后,还需要明白”索引”,搜索算法,Solr 实现原理才能掌握好 Solr。

8. ActiveMQ
基于队列实现,明白队列概念后,把 ActiveMQ 安装上可以很快的上手。

9. HttpClient
基于 HTTP 协议使用 Java 代码完成请求/响应的 API,所以请求及响应概念清楚,HttpClient 可以很快的上手。

10. JsonP
浏览器异步请求静态资源,这个可以通过浏览器的调试工具清晰看到。明白这点JsonP 也是可以很快的学习明白的。

11. MyCat
为了保留关系型数据的优点,MyCat 作为一个解决 MySql 不能分库分表的解决方案。学习 MyCat 先从配置 MySQL 主从备份开始,然后熟练配置 MyCat 配置文件。

 

框架学习分为两种:一种是使用一种是明白实现原理。

如果学习框架只是为了知道如果搭建框架的环境, 如果使用框架,框架的学习还是比较容易的。但是如果想要非常清楚的明白每个功能是如何实现的就必须清楚的知道框架底层。学习框架底层可以帮助我们在出现异常时快速的想到是什么原因出现这个错误。 因为我们知道自己写的代码,也知道别人写了什么,出现了错误肯定会更好的解决。

 

MyBatis 框架底层可以从 SqlSessionFactory 入手, 一个类一个方法的往下跟踪,一直跟踪到 SqlSession 关闭。

Spring 的底层源码要从 BeanFactory 和 ApplicationContext 入手,知道 Spring 容器作用。

SpringMVC 底层源码可以从 DispatcherServlet 入手,观察所有核心组件的运行过程。

Struts2 的底层代码要从 struts-default.xml 入手,里面配置了很多内置的内容。

Hibernate 的底层代码查看思路和 MyBatis 类似,从 Configuration 开始。

每个框架可以自己绘制一份流程图, 这样更利于自己把整个框架的运行原理弄清晰框架底层内容可以在边学习框架边学习。

 

【夜光】框架底层的学习适合学有余力的靓仔靓女。如果掌握框架的使用都比较吃力,可以先放一下。熟练使用框架以后再深入底层。

 

 

 

夜光:微服务架构


微服务架构是目前比较火热的一种架构方式,其特点为将一个大型的单一的应用拆分成多个微服务。相比较传统的单一架构模式能够更灵活的应对生产环境中需求变更现象,更好的支持敏捷开发。

从目前火爆程度来看,微服务架构在未来中大型应用架构中已经成为首选的架构方式。被多个国内外大型 IT 公司所关注。

从编码角度来看 Spring Boot、Spring Data、Spring Cloud 三个技术更好的解决了繁琐的开发模式,让复杂的工作简单化。建议 JAVA 工程师(靓仔靓女们)持续关注。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值