PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

java最常用的技术栈有哪些

藏色散人
藏色散人 原创
2023-01-05 11:36:17 7646浏览

java常用的技术栈有:1、jdk;2、web框架;3、web容器;4、orm框架;5、spring;6、数据库;7、搜索引擎;8、后端模板引擎;9、工作流;10、其它语言中间件,如kafka,rocketmq或rabbitmq等。

本教程操作环境:Windows10系统、Java8.0版、Dell G3电脑。

java最常用的技术栈有哪些?

Java开发常用技术栈盘点

1. 前言

最近很多人私下询问我常用的Java开发技术栈,所以今天就总结一波平常使用的Java技术栈。

2. JDK

JDK 的版本现在大部分转移到了8,超前一点的使用11,请认准LTS版本!不要生产上使用9、 10、12、13、14。在Oracle JDK和Open JDK之间推荐使用Open JDK,避免引起不必要的商业纠纷。Amazon Corretto 、Alibaba Dragonwell 都不错。7 以上不用太考虑兼容问题,不过最好测试一波再迁移。

2. Web 框架

主流还是Servlet系列的Spring MVC为主。Structs应该只有老项目在用。响应式框架Spring Webflux开始进入视野,尝试的人、问的人逐渐多了起来。建议有志于抓住未来方向的同学了解一下。

3. Web 容器

目前应该还是Tomcat最多,但是近几年红帽的Undertow也起来了,Jetty实际生产并没有优势,测试可能会用。有能力的公司会选择Netty自行实现高性能的 Web 容器。

4. ORM 框架

现在Mybatis在国内依然是老大的地位,国外却很少有相关的教程。其次是JPA体系,主要包括Spring Data JPA 、Hibernate。有兴趣的话可以去看一下JOOQ。随着响应式编程的兴起,JDBC开始出现了潜在的对手R2DBC,需要持续关注动向。

5. Spring

谈到Java离不开Spring,Spring生态的统治地位依然不可动摇。目前单体应用还是Spring Boot一把梭,微服务Spring Cloud体系还是占绝对优势。但是你的项目真适合搞微服务吗?Spring近年来开始转向响应式,无论Webflux,还是R2DBC,以及更近的RSocket都是Spring官方力推的一些响应式框架或协议。所以响应式必须列入你的知识清单了。

6. 数据库

大部分还是Mysql、但是MSSQL、PostgreSQL也用的不少。国产云原生数据库TiDB的发展也不可小视。作为文档数据库Mongo虽然过去两年爆出了一些安全问题,但是依然领导着这个领域。内存型数据库Redis依然在缓存领域占据重要的地位,Memcached、Hazelcast 也经常出现在视野中。

7. 搜索引擎

在搜索引擎领域Lucene及其两个衍生品Solr和ElasticSearch占据绝对优势,ElasticSearch更加活跃一些。

8.后端模板引擎

在前后端分离已经流行的今天,模板引擎的生存空间再一次被压缩,目前我最多用它们来搞搞代码生成器。已经很少在使用它们了,Freemarker、Velocity Thymeleaf越来越少被提及了。

9. 工作流

常用的名气大的主要是Activity和Flowable。

10. 其它语言无关的中间件

消息队列主要是Kafka、RocketMQ、RabbitMQ,老牌ActiveMQ开始没落,Yahoo捐献给Apache的Pulsar不知道为什么没有像zookeeper一样买账的。Nginx依然是高性能Web服务器、代理服务器的首选。

这就是我对Java当前常用技术栈的一些看法和观点。

推荐学习:《Java视频教程

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。