Java程序员的方向太多了,移动开发、大数据、区块链、人工智能等就更不用说了,大部分Java程序员都是JavaWeb/后端开发。那么作为JavaWeb开发程序员需要熟悉哪些框架呢?今天stackmanager,我罗列了一些必须掌握的通用框架。学会这些,20K+不是问题。1.Spring毫无疑问,Spring框架是现在Java后端框架家族中最强大的一个。它拥有两个强大的工具IOC和AOP,大大简化了软件开发的复杂度。而且,Spring现在可以与所有主流开发框架集成,可谓万能框架。Spring使JAVA开发更容易。官网:https://spring.io/projects/spring-framework源码:https://github.com/spring-projects/spring-framework推荐:Java必看Spring知识汇总更多内容请访问Java技术栈微信公众号后台回复关键字:spring。2.SpringMVCSpringMVC是一个用于替代Struts的MVC开源框架。它是Spring项目的重要组成部分。它可以与SpringIOC容器紧密结合,具有松散耦合、配置方便、代码分离等特点,使JAVA程序员开发WEB项目更加容易。官网:https://spring.io/projects/spring-framework源码:https://github.com/spring-projects/spring-framework推荐:从0开始手写一个SpringMVC框架更多信息请访问Java技术栈微信公众号后台回复关键词:mvc。3.SpringBootSpringBoot是Spring开源组织下的一个子项目,也是Spring组件的一站式解决方案。主要是为了简化Spring框架的使用难度,省去繁重的配置。SpringBoot为各种组件提供启动器。只要开发者可以配置相应的组件参数,SpringBoot就会自动配置,让开发者可以快速构建依赖Spring组件的Java项目。官网:https://spring.io/projects/spring-boot源码:https://github.com/spring-projects/spring-boot推荐:SpringBoot核心配置文件详解SpringBoot2.x启动全程源码解析SpringBoot20道面试题更多答案请在Java技术栈微信公众号后台回复关键字:boot。4.SpringCloudSpringCloud是一系列框架的有序集合。它是目前最流行的微服务框架。它利用SpringBoot的开发便利性,巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以通过一个启动和部署单击使用SpringBoot开发风格。官网:http://projects.spring.io/spring-cloud/源码:https://github.com/spring-cloud推荐:SpringCloud最新Finchley版踩坑微服务为什么选择SpringCloud?多个版本的SpringCloudChoice怎么样?了解更多,请在Java技术栈微信后台回复关键字:cloud公众号。5.Mybatis/iBatisiBatis曾经是开源软件组Apache推出的轻量级对象关系映射持久层(ORM)框架。随着开发团队转移到GoogleCode,ibatis3.x正式更名为Mybatis,即:iBatis2.x、MyBatis3.x。官网:http://www.mybatis.org/mybatis-3/源码:https://github.com/mybatis推荐:Mybatis4种方式传递多个参数更多信息请关注Java技术栈微信公众号,后台回复:mybatis。6.HibernateHibernate是一个开源的对象关系映射框架。它用一个非常轻量级的对象封装了JDBC。它建立了POJO和数据库表之间的映射关系。它是一个全自动的orm框架。Hibernate可以自动生成SQL语句并自动执行,使Java程序员可以使用对象编程思想随心所欲地操作数据库。官网:http://hibernate.org/源代码:https://github.com/hibernate7.DubboDubbo是阿里巴巴开源的基于Java的高性能RPC分布式服务框架,已成为Apache基金会孵化项目.Dubbo可以将核心业务抽取出来作为一个独立的服务,逐步形成一个稳定的服务中心,可以用来提高业务复用和灵活扩展,让前端应用可以更快地响应不断变化的市场需求。官网:http://dubbo.apache.org源码:https://github.com/apache/incubator-dubbo推荐:Dubbo架构设计详解史上最全40道Dubbo面试题及答案。更多内容请访问Java技术栈微信公众号后台回复关键字:dubbo。8、NettyNetty是JBOSS提供的一个开源的、异步的、事件驱动的网络通信框架。Netty可用于快速开发高性能、高可靠性的Web服务器和客户端程序。Netty简化了网络应用程序的编程和开发过程,使得网络编程的开发变得异常简单。官方网站:https://netty.io/源代码:https://github.com/netty/netty9.ShiroApacheShiro是一个强大而灵活的开源安全框架,可以干净地处理身份验证、授权、企业会话管理和加密。官网:http://shiro.apache.org/源代码:https://github.com/apache/shiro10.EhcacheEhCache是??一个纯Java的进程内缓存框架,速度快,功能强大。它是Hibernate中的默认CacheProvider。它使用JVM的堆内存,超出内存可以缓存到磁盘,企业版可以使用JVM堆外的物理内存。官网:http://www.ehcache.org/源码:https://github.com/ehcache/ehcache3推荐:介绍Ehcache并结合Spring实现缓存:ehcache。11.QuartzQuartz是一个应用广泛的基于Java的开源任务调度框架。你用过这个框架做定时任务吗?官网:http://www.quartz-scheduler.org/源代码:https://github.com/quartz-scheduler/quartz12.VelocityVelocity是一个基于Java的模板引擎,一种简单而强大的模板语言,提供模板为各种Web框架服务,适配MVC模型。官网:http://velocity.apache.org/源代码:https://github.com/apache/velocity-engine13.jQueryjQuery是一个快速简洁的JavaScript框架,它封装了JavaScript中常用的功能代码,并提供一个简单的JavaScript设计模式,极大地简化了JavaScript编程。虽然很久没有做web开发了,但是一直没有忘记,还记得一些常用的写法,比如:$("#wx").html("javastack");官网:http://jquery.com/源代码:http://jquery.com/download/14.JUnitJUnit是一个Java语言的单元测试框架。大多数Java开发环境都集成了JUnit作为它们的单元测试工具。官网:https://junit.org源代码:https://github.com/junit-team/15.Log4jLog4j是Apache开源的日志框架。通过Log4j,我们可以将程序中的日志信息输出到控制台和文件等来记录日志。作为最古老的日志框架之一,其目前的主流版本是Log4j2。Log4j2是一个重新架构的日志框架,它摒弃了之前Log4j的缺点,吸收了优秀的日志框架Logback的设计。官网:https://logging.apache.org/log4j/2.x/源码:https://logging.apache.org/log4j/2.x/source-repository.html如果上面大部分都没有用过,如果你连听都没听过,那你怀疑自己是不是伪程序员,那就来吧。这些都是Java程序员必备的开发框架,有的不一定是首选,但是这些对于Java程序员来说一定是必备的。.
