ITPub博客

首页 > 应用开发 > Java > 好程序员Java教程分享javaweb框架

好程序员Java教程分享javaweb框架

原创 Java 作者:好程序员IT 时间:2019-10-31 13:58:52 0 删除 编辑

   好程序员Java 教程分享 javaweb 框架 : Java 是开源的,框架很多,这些框架都能解决特定的问题,提高开发效率、简化我们的代码复杂度,现在除了很多大家通用的一些主流框架外,很多公司针对自己的业务会自定义一些公司内部的框架,当然作为学习者我们首先要清楚最流行的 javaweb 框架有哪些?

 

  回答这个问题首先要看我们的项目规模,对于”体量”较小的单应用项目,和需要处理海量数据、高并发的分布式项目所学习使用的框架还是不同的。

 

  对于“体量”较小的单应用项目:

 

  ORM 型框架,很多 Javaweb 程序都需要使用关系数据库来进行数据的持久化,所以对于这种需要进行数据库操作的框架,也就是对 JDBC 进行封装的 ORM 框架是需要学习的,目前比较流行的是基于 SQL 的 mybatis 框架,这是一个轻量级的 ORM 框架,学习使用起来比较容易上手,同类型的还有 Hibernate 框架。

 

  MVC 型框架, MVC 把程序从逻辑上分为视图层、控制层、模型层,各层各司其职,之间是相互调用的关系而不是相互依赖的关系,这种模式能很好的适应需求的变化及软件的升级变更。目前应用较多的 MVC 框架是 springMVC 框架,这个框架有清晰的角色划分,有强大而直接的配置方式,高效的绑定和验证等很多优势。较早的 Struts2 框架也是 MVC 框架。

 

  Spring 框架,其实 Java 的从业者很多都绕不开 Spring , Spring 家族有很多“工具”,编程思想从面相过程到面相对象是一个巨大的进步,然而随着程序越来越复杂,对象越来越多,高效的“管理”及应用这些对象变得越来越重要, Spring 的 IoC 就是把对象的创建、“管理”交由 Spring 容器来进行,来实现控制反转,同时提供了各种注入值 (DI) 的方式,大大提高和简化了我们的工作,这就是 javaweb 需要学习的 spring 的 IoC/DI; 我们程序的业务比较复杂时,除了要完成核心功能外,还需要完成注入异常处理、日志记录、事务处理等常规功能,这些常规的操作比较耗费精力, springAOP( 面向切面编程 ) 就是解决这个问题的。

 

  Javaweb 需要学习一些前端框架,尤其是问题中提到的已经写好了数据接口,或者是已经有了简单的后台,前端框架 jQuery 是一定要学习的,如果项目基于效率考虑,需要前后端分离,可以学习 vue 等框架。

 

  对于海量数据、高并发类型的分布式项目,这种类型项目的特点就是前面提到的需要处理的数据量大,例如双十一阿里需要处理的订单数据,比如12306 的抢票等。

 

  提升查询效率的缓存数据库框架Redis ,这个框架在单应用程序中为了提升数据的读取效率也可以使用,先把数据从关系数据库通过 Redis 存放到缓存中,从缓存中读取数据的速度比直接从硬盘上读取就要高多了,另外 Redis 还能进行集群配置主从服务器等,使用非常方便,同类型的还有 memcached 框架 ;

 

  在分布式中,服务集群中的负载均衡特别重要,Nginx 是一个高性能的 HTTP 和反向代理服务框架,支持多种负载均衡算法 ;

 

  消息队列框架:RabbitMQ 、 ActiveMQ 、 RocketMQ 等,在电商系统中,当结算订单后,需要进行积分的变化等操作,这些操作的量很大,如果等积分变化结束后在通知用户结算成功,显然不可行,那么此时积分的变更操作交由消息队列来完成。

 

  搜索框架,为了提升搜索的效率,创建搜索索引库及中文搜索分词等,可以使用solr 框架,同类型的还有 ElasticSearch

 

  用于文件使用的分布式文件系统框架Fastdfs

 

  Springboot 框架,简化了 spring 的复杂配置,提供了 Thymeleaf 模板,很多微服务都是基于 Springboot 的 ;

 

  微服务框架,把应用拆分成若干个为服务后,很好的适用了高并发及海量数据的处理,但是微服务的管理也很重要,目前基于服务注册、服务监控的框架有Dubbo+zookeeper ,还有 SpringCloud ,里面包括 SpringCloudEureka , SpringCloudRibbon , SpringCloudFeign , SpringCloudHystrix , SpringCloudZuul , SpringCloudConfig , SpringCloudZipKin , SpringCloudSleuth 等 ;

 

  其它框架,还有很多根据项目特定要求的一些框架,例如进行日志记录的log4j 框架,进行认证和授权的 shiro 框架,工作流处理的 Activite 框架等。

 

   总结一下:学习框架最好的方式就是在实际项目中去应用,这对框架的原理、应用流程都能有很好的学习效果,如果单纯的做一些简单的Demo ,框架的很多应用场景、优化、注意事项等是学习不全面的。

  


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69913892/viewspace-2662077/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
欢迎关注公众号:好程序员特训营 web前端教程分享 723729549 大数据教程分享 703503210

注册时间:2019-03-20

  • 博文量
    539
  • 访问量
    410754