一个非常好的问题。Java是主流开发语言,应用普遍,不同的业务场景会用到很多不同框架。以Web服务开发为例,基本框架可分为数据层、HTTP开发、异步任务、鉴权认证、日志监控等几大类别。
学习过程中多总结,虽然框架很多,但是可以专题分类,针对常用的几个框架重点学习,积累起来非常快。
注意学习框架时要挑选当前广泛使用的Top3,已经过时或者太新还看不清楚未来的框架,可以在需要时再去学习研究。
以Web服务开发为例,常用框架分类总结如下:
1. Spring框架,Spring Boot和Spring Cloud是最常用框架,有非常丰富的组件和易用的功能。
2. 数据层,MySQL数据库,MyBatis持久层,Flyway版本化管理数据库SQL脚本,Ali Druid连接池等框架。
MyBatis Plus是国内的一个开源项目,对MyBatis做了进一步增强、简化开发和提高效率,并且提供了简单易用的代码生成器。
Hibernate是另一个经常使用的持久化框架。
3. 缓存系统,最常使用Redis,MongoDB等其他NoSQL也经常使用。
4. 异步消息队列,常用ActiveMQ,RocketMQ,RabbitMQ,建议选择一个学习。
5. JSON数据处理,常用Fastjson,Gson,Jackson,Json-lib,推荐Fastjson。
6. 开发工具包,Apache Commons套件,lang, collections, codec, io等功能库。
7. 网框开发工具包,推荐Apache HttpClient,其他比如OKHttp,Java原生库HttpURLConnection使用也很普遍。
另外常用的WebClient,Spring框架提供的RestTemplate。
8. 鉴权认证,控制访问权限,REST接口安全,常用Apache Shiro, Jwt。
9. 异步任务调度,复杂耗时任务,使用Quartz框架异步执行,Spring框架自带的Schedule可以满足小型项目使用。
10. 单元测试JUnit + Mockit
11. 日志系统,集成LogBack,接入LogStash配合ELK分析处理。
12. 服务监控,使用Actuator等框架实现运行信息收集和报警,配合图像化展示工具,比如Prometheus + Grafana + AlertManager
13. Swagger接口文档
14. Postman接口调试工具
我是工作多年的Web应用架构师,陆续发布关于软件开发方面的文章,欢迎关注我,了解更多IT专业知识。
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有