java的话是学什么框架现在比较主流,企业也经常会用到

2020-12-08 13:36发布

10条回答
茄子酱
2楼 · 2020-12-09 10:01

一、单体应用架构

单体应用架构比较简单,普遍用到就是五大框架,包括mvc层、持久层等。由于这五大框架是web开发框架学习的基础,相对于微服务框架比较简单,在此简单介绍一下。

1.Spring:ioc容器和bean管理,解决的是业务逻辑层和其他各层的松耦合问题,也起到纽带和桥梁的作用。

2.Springmvc:目前使用最普遍和最流行的mvc框架。

3.Struts2:也是一款类似于Springmvc功能的mvc框架,它的前身struts1基本没人使用了。struts2相较于springmvc有诸多劣势,包括自身漏洞门问题,慢慢走向没落。现在使用的大部分都是维护的老项目老系统。

4.hibernate:重量级的面向对象的持久层框架,其实它的功能非常强大,由于其自身功能的强大在使用和配置上比较复杂,很多程序员待之以鄙夷。hibernate用于中小系统项目还是很合适的,开发效率较高。

5.mybatis:是一款中低量级别的半自动的持久层框架,由于自身使用的灵活性和易于aql调优,目前还是非常流行的,很多大型项目都用到它。

二、微服务架构

微服务架构相对于单体应用架构复杂些,尤其是微服务架构用到分布式应用架构就更为复杂。

1.springboot:微服务基础框架,由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。特点 :1. 创建独立的Spring应用程序 2. 嵌入的Tomcat,无需部署WAR文件 3. 简化Maven配置 4. 自动配置Spring 5. 提供生产就绪型功能,如指标,健康检查和外部配置 6. 绝对没有代码生成和对XML没有要求配置。一句话总结:使用springboot可以高效快速开发web应用,而且可以不使用单体应用开发框架中那些繁杂的xml配置。

2.Dubbo:Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubbo这样的分布式服务框架的需求,并且本质上是个服务调用的东东,说白了就是个远程服务调用的分布式框架(告别Web Service模式中的WSdl,以服务者与消费者的方式在dubbo上注册) 其核心部分包含: 1. 远程通讯: 提供对多种基于长连接的NIO框架抽象封装,包括多种线程模型,序列化,以及“请求-响应”模式的信息交换方式。 2. 集群容错: 提供基于接口方法的透明远程过程调用,包括多协议支持,以及软负载均衡,失败容错,地址路由,动态配置等集群支持。 3. 自动发现: 基于注册中心目录服务,使服务消费方能动态的查找服务提供方,使地址透明,使服务提供方可以平滑增加或减少机器。

3.SpringCloud:用官方文档的说明:Spring Cloud为开发人员提供了快速构建分布式系统中的一些通用模式(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁,领导选举,分布式 会话,群集状态)。 分布式系统的协调导致了锅炉板模式,并且使用Spring Cloud开发人员可以快速地站起来实现这些模式的服务和应用程序。 它们可以在任何分布式环境中正常工作,包括开发人员自己的笔记本电脑,裸机数据中心和受管平台,如Cloud Foundry。

以上就是公司普遍使用的一些框架,当然还有其他的一些框架,比如jFinal、ejb、公司自研封装的一些框架等等


爱梦 - 拿来吧你
3楼 · 2020-12-09 10:09

核心框架:Spring Framework 4.1

安全框架:Apache Shiro 1.2

视图框架:Spring MVC 4.1

服务端验证:Hibernate Validator 5.2

布局框架:SiteMesh 2.4

工作流引擎:Activiti 5.21

任务调度:Spring Task 4.1

持久层框架:MyBatis 3.2

数据库连接池:Alibaba Druid 1.0

缓存框架:Ehcache 2.6、Redis

日志管理:SLF4J 1.7、Log4j

工具类:Apache Commons、Jackson 2.2、Xstream 1.4、Dozer 5.3、POI 3.9


天才小馒头
4楼 · 2020-12-09 10:33

Spring,Spring Mvc,Mybatis 等等。

java的框架主要有:SpringMVC、Spring、Mybatis、Dubbo、Maven、RabbitMQ、Log4j、Ehcache、Redis、Shiro。不过这十个我们不需要都学会,只要学会其中四五个比较常用的就可以。

第一个,SpringMVC。

Spring MVC是一种基于Java地实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,主要是帮助我们简化日常的Web开发;

第二个,Mybatis。

MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架;

第三个,Spring。

Spring深得企业的青睐;

第四个,Maven。

越来越多的开发人员开始使用maven。

掌握以上四种框架,你在找工作的时候就会比较吃香。

灰机带翅膀
6楼 · 2020-12-13 17:52

十大常用框架:

  • 一、SpringMVC

  • 二、Spring

  • 三、Mybatis

  • 四、Dubbo

  • 五、Maven

  • 六、RabbitMQ

  • 七、Log4j

  • 八、Ehcache

  • 九、Redis

  • 十、Shiro


郝多余 - 想要一个家
7楼 · 2020-12-14 09:09

1、SpringMVC

2、Struts2

3、Hibernate

4、JSF

5、Vaadin

6、GoogleWebToolkit

7、Grails


布啦啦
8楼 · 2020-12-14 09:22

核心框架:Spring Framework 4.1

安全框架:Apache Shiro 1.2

视图框架:Spring MVC 4.1


彭彭彭
9楼 · 2020-12-14 13:35

第一个,SpringMVC。

Spring MVC是一种基于Java地实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,主要是帮助我们简化日常的Web开发;

第二个,Mybatis。

MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架;

第三个,Spring。

Spring深得企业的青睐;

第四个,Maven。

越来越多的开发人员开始使用maven。

相关问题推荐

  • 回答 2

    Statement的execute(String query)方法用来执行任意的SQL查询,如果查询的结果是一个ResultSet,这个方法就返回true。如果结果不是ResultSet,比如insert或者update查询,它就会返回false。我们可以通过它的getResultSet方法来获取ResultSet,或者通过getUpda...

  • 回答 22

    忙的时候项目期肯定要加班 但是每天加班应该还不至于

  • 回答 108
    已采纳

    虽然Java人才越来越多,但是人才缺口也是很大的,我国对JAVA工程师的需求是所有软件工程师当中需求大的,达到全部需求量的60%-70%,所以Java市场在短时间内不可能饱和。其次,Java市场不断变化,人才需求也会不断增加。马云说过,未来的制造业要的不是石油,...

  • 回答 5
    已采纳

    工信部证书含金量较高。工信部是国务院的下属结构,具有发放资质、证书的资格。其所发放的证书具有较强的权威性,在全国范围内收到认可,含金量通常都比较高。 工信部证书,其含义也就是工信部颁发并承认的某项技能证书,是具有法律效力的,并且是国家认可的...

  • 回答 70
    已采纳

    学Java好不好找工作?看学完Java后能做些什么吧。一、大数据技术Hadoop以及其他大数据处理技术都是用Java或者其他,例如Apache的基于Java 的 HBase和Accumulo以及ElasticSearchas。但是Java在此领域并未占太大空间,但只要Hadoop和ElasticSearchas能够成长壮...

  • 回答 16
    已采纳

    就是java的基础知识啊,比如Java 集合框架;Java 多线程;线程的五种状态;Java 虚拟机;MySQL (InnoDB);Spring 相关;计算机网络;MQ 消息队列诸如此类

  • 回答 12

    #{}和${}这两个语法是为了动态传递参数而存在的,是Mybatis实现动态SQL的基础,总体上他们的作用是一致的(为了动态传参),但是在编译过程、是否自动加单引号、安全性、使用场景等方面有很多不同,下面详细比较两者间的区别:1.#{} 是 占位符 :动态解析 ...

  • 回答 62

    没问题的,专科学历也能学习Java开发的,主要看自己感不感兴趣,只要认真学,市面上的培训机构不少都是零基础课程,能跟得上,或是自己先找些资料学习一下。

  • 回答 4

    1、反射对单例模式的破坏采用反射的方式另辟蹊径实例了该类,导致程序中会存在不止一个实例。解决方案其思想就是采用一个全局变量,来标记是否已经实例化过了,如果已经实例化过了,第 二次实例化的时候,抛出异常2、clone()对单例模式的破坏当需要实现单例的...

  • 回答 5

     优点: 一、实例控制  单例模式会阻止其他对象实例化其自己的单例对象的副本,从而确保所有对象都访问唯一实例。 二、灵活性  因为类控制了实例化过程,所以类可以灵活更改实例化过程。 缺点: 一、开销  虽然数量很少,但如果每次对象请求引用时都要...

  • 回答 4

    这个主要是看你数组的长度是多少, 比如之前写过的一个程序有个数组存的是各个客户端的ip地址:string clientIp[4]={XXX, xxx, xxx, xxx};这个时候如果想把hash值对应到上面四个地址的话,就应该对4取余,这个时候p就应该为4...

  • 回答 6

     哈希表的大小 · 关键字的分布情况 · 记录的查找频率 1.直接寻址法:取关键字或关键字的某个线性函数值为散列地址。即H(key)=key或H(key) = a·key + b,其中a和b为常数(这种散列函数叫做自身函数)。...

  • 回答 6

    哈希表的大小取决于一组质数,原因是在hash函数中,你要用这些质数来做模运算(%)。而分析发现,如果不是用质数来做模运算的话,很多生活中的数据分布,会集中在某些点上。所以这里最后采用了质数做模的除数。 因为用质数做了模的除数,自然存储空间的大小也用质数了...

  • 回答 2

    是啊,哈希函数的设计至关重要,好的哈希函数会尽可能地保证计算简单和散列地址分布均匀,但是,我们需要清楚的是,数组是一块连续的固定长度的内存空间

  • 回答 3

     解码查表优化算法,seo优化

  • 回答 5

    1.对对象元素中的关键字(对象中的特有数据),进行哈希算法的运算,并得出一个具体的算法值,这个值 称为哈希值。2.哈希值就是这个元素的位置。3.如果哈希值出现冲突,再次判断这个关键字对应的对象是否相同。如果对象相同,就不存储,因为元素重复。如果对象不同,就...

没有解决我的问题,去提问