原文网址:Java后端开发技术选型_IT利刃出鞘的博客-CSDN博客

简介

本文介绍Java后端开发的技术选型。持续更新。

本文中的每一项都按照从上到下为从好到差的顺序排列技术栈,并给它们打分(满分100分)。我推荐使用最高分的那个,也就是第一个。

持久层框架

说明

这几个框架我都用过。按开发速度来看,一个模块,如果MyBatis-Plus开发需要1天,则JPA需要2.5天,MyBatis需要4天。

新项目基本都是用MyBatis-Plus了。

评分

  1. MyBatis-Plus(95)

    1. 好处:开发速度快、兼容MyBatis
    2. 缺点:个别场景的多表联查不如JPA。
  2. JPA(60)
    1. 好处:个别场景的多表联查比较好用。
    2. 缺点:正常场景下,开发速度不如MyBatis-Plus。
  3. MyBatis(40)
    1. 优点:可以被MyBatis-Plus依赖,与MyBatis-Plus共同使用。
    2. 缺点:开发速度慢

分布式框架

说明

现在新项目一般都用Spring Cloud Alibaba了。feign+nacos+sentinel,很舒服!

评分

  1. Spring Cloud Alibaba(95)

    1. 优点:feign调用基于http,灵活;nacos和sentinel很好用
  2. Spring Cloud原生(80)
    1. 优点:feign调用基于http,灵活
    2. 缺点:eureka已闭源,配置中心使用不方便
  3. Dubbo(50)
    1. 优点:基于长连接,比SpringCloud速度稍快一点儿
    2. 缺点:不够灵活,且相关的组件很少

分布式锁

  1. Redisson(95分)

    1. 续期、可重入等接近完美
  2. Zookeeper(70分)
    1. 用的比较少
  3. MySQL(30分)
    1. 效率很低

分布式定时任务

  1. XXL-JOB(90分)

    1. 很流行;很好用
  2. PowerJob(80分)
    1. 流行度低;使用体验略差
  3. Quartz(50分)
    1. 难用;
  4. Spring自带(30分)
    1. 无可视化页面

分布式事务

  1. Seata(95分)

    1. 阿里开发,很流行

MQ

  1. RocketMQ(95)
  2. RabbitMQ(85)
  3. Kafka(70)

Redis客户端

  1. Ridisson(98)
  2. RedisTemplate(80)
  3. Jedis(60)

ElasticSearch客户端

  1. Spring Data ElasticSearch(95)
  2. bboss-elasticsearch(75)
  3. elasticsearch-sql(60)

链路追踪

  1. SkyWalking(90)
  2. Zipkin(80)
  3. Cat(60)

接口文档工具

  1. knife4j(90)
  2. swagger(75)
  3. apidoc(60)

杂项

JSON工具

  1. Jackson(99)

    1. Spring自带,效率和稳定性都很好
  2. FastJson(60)
    1. bug多,经常爆出问题
  3. gson(50)
    1. 不流行

HTTP客户端

  1. RestTemplate(95)

    1. Spring自带,稳定性好
  2. HttpRequest(80)
    1. hutool的,灵活性好

Java后端开发技术选型相关推荐

  1. 2022年最新Java后端开发技术架构总结

    做了十年的Java开发和项目管理,和大家介绍一下我总结的一两年用得比较多的Java框架(包括软件.中间件),以及相关开发.测试.运维.项目管理.技术支持等. 2022年最新Java后端开发技术架构总结 ...

  2. Java后端开发技术栈

    能力素质:正向心态 思维能力 团队合作 学习能力 沟通能力 工具软件:开发工具 maven git JVM排查工具(JMC) 语言:开发语言.脚本.Linux 数据结构和算法:7种数据结构和3种常用算 ...

  3. Java后端开发需具备什么技术?这几个部分你需要关注

    Java后端开发需具备什么技术?对于初学Java并且有志于后端开发的同学来说,需要重点关注以下几个部分: Java开发普遍需要: 1.Java基础 2.数据库 MYSQL/SQLServer/Orac ...

  4. Java 后端开发面试总结:25 个技术专题(最全面试攻略)

    另送福利: java 面试准备 准确的说这里又分为两部分: 1.Java 刷题 2.算法刷题 Java 刷题:此份文档详细记录了千道面试题与详解:  !     私信我回复[03]即可免费获取 很多人 ...

  5. Java后端开发工程师技术栈整理

    文章目录 Java后端开发工程师技术栈整理 常用工具 Java IDE 数据库客户端 数据库建模工具 SSH客户端 文本编辑器 Markdown编辑器 API调试工具 浏览器 压力测试工具 DevOp ...

  6. java后端开发所学的技术有哪些?

    学习目标: 了解java后端开发工程师所具备的最基础的技术 学习内容: 熟悉java语言.了解J2EE体系结构.熟悉相关软件开发工具 了解IO.多线程.集合.通信传输.数据库访问.JVM 了解serv ...

  7. 2022编程语言排名, 后端开发语言选型

    文章目录 1 2022 编程语言排名 1.1 IEEE Spectrum 2021年度 1.2 TIOBE指数 2022.05 2 后端开发语言选型 2.1 特点概览 2.2 「PHP 是世界上最好的 ...

  8. Java后端开发需要掌握什么

    Java后端开发需要掌握什么? 需要熟悉Apache.NginX.Tomcat.WildFly.Weblogic等Web服务器和应用服务器的使用,熟悉面向对象的设计原则,熟悉基于JSP和Servlet ...

  9. java后端开发需要会什么技能,从事Java后端开发,需要掌握哪些知识和技能?

    很多小伙伴想转行做Java的后端,但是又不知道到底该学习些什么,做Java的后端,需要学习和了解什么? 1.首先要明确后端包括哪些职业 DBA(数据库维护优化专家) Developer(程序猿) Ar ...

  10. Java后端开发工程师是否该转大数据开发?

    背景 看到一些java开发工程师,对java后端薪酬太悲观了.认为换去大数据领域就会高工资.觉得java后端没有前途.我从事java后端开发,对大数据领域工作有些了解,但不深入.本文描述一下我对jav ...

最新文章

  1. POJ1178枚举三个地方(所有点都去同一个点)
  2. Docker 1.10版本发布
  3. 钉钉微应用的开发——主前端
  4. Caffe 学习笔记1
  5. 如何用数学和化学方法测量英国海岸线的长度
  6. 为什么QueueingConsumer会被Deprecated?
  7. 德勤2021技术趋势:繁琐、点状的匠人AI时代将终结,MLOps时代来临
  8. vlookup函数练习_为什么职场要学excel函数?看这个案例演示:自动计算快递价格...
  9. easyexcel 导入指定_阿里巴巴EasyExcel使用(3)-导入
  10. 收费版APP三年总结(个人经验)
  11. mysql openwrt 编译_如何编译OpenWrt
  12. POJ 2777 Count Color (线段树区间修改 + 状态压缩)
  13. 生成器 Generators
  14. 配置 eNSP 连接VMware虚拟机网络
  15. jQuery教程大纲
  16. php strpos无效,php问题:strpos功能不起作用
  17. Python queue
  18. Maya寻找Mel文件的位置
  19. MT9V034摄像头采集
  20. 赵运泓:12:4下周黄金行情走势分析

热门文章

  1. 华为18级工程师三年心血终成趣谈网络协议文档(附详细讲解)
  2. android u盘加密代码,怎么用安卓手机给u盘加密
  3. easyui图标对照
  4. Easyui按钮图标
  5. 分布式常见面试题详解
  6. 【stm32开发日志】步进电机、直线模组、丝杆的接线、编程与使用
  7. S7-200SMART案例分析——伺服选型(一)
  8. python计算器功能介绍_python计算器功能如何实现?这篇文章给你最实用的代码
  9. c语言二级吧,c语言二级考试
  10. DEM数据下载,拼接,裁剪