Java相关框架整理

@TOC

1、SSM

  1. Spring:是一个ioc(控制反转)和aop(面向切面编程)的容器框架
  2. SpringMVC(model view control):是一种基于Java,实现了webMvc的web框架
  3. Mybatis:是基于Java的持久层框架,提供与数据库的映射
    tomcat:应用服务器,是servlet容器用来处理动态页面
    interceptor拦截器:浏览不需要登陆,如果浏览到一些涉及隐私的页面就会跳转到登陆界面
    实现spring的HandlerInterceptor接口
    继承HandleInterceptor类
    前端控制器:DispatcherServlet,是 SpringMVC统一的入口,所有的请求都通过它,配置在web.xml文件中,初始化 DispatcherServlet时,该框架在web应用程序WEB-INF目录中寻找一个名为[servlet-名称]-servlet.xml的文件,并在那里定义相关的Beans

2、Spring Boot

是一个微服务开发框架,是启动spring项目的工具,目的是简化spring应用的搭建
nginx:集群是多台服务器部署在相同的应用上构成一个集群,通过负载均衡的策略提供服务
redis:现在resis中查询,没有数据再到SQL中查询,提高效率和并发量
缓存穿透:查询一个不存在的东西
缓存击穿:大量key周期失效
雪崩:大量key集中创建并失效
应用场景:验证码登录、热点数据(经常被查询)

3、Spring cloud

是一个基于Springboot实现的开发工具
核心功能:

  1. 请求通过网关zuul来访问内部服务(是介于客户端和服务端的中间层,所有外部请求都会通过网关)——优点:客户端需要调起多个请求才能完成一个业务需求,现在只需要和网关交互
  2. zuul接收到请求后,从eureka(server、client)获取服务
  3. 由ribbon进行负载均衡(轮询)后,分发到后端具体实例
  4. 微服务之间通过feign组件通信处理业务(包含了ribbon和hystrix)
  5. hystrix负责处理服务超时熔断
  6. MQ消息中间件(rabbitMQ,ActionMQ),用于流量削峰,异步通信

4、微服务、分布式

  1. 微服务springcloud:是将模块拆分成一个独立的服务单元(provider,consumer),通过接口来实现数据交互
  2. 分布式dubbo:将一个大的业务系统划分为多个业务模块,分别部署到不同的机器上,各个业务模块通过接口进行数据交互
    差别:微服务不一定部署到不同的服务器上

拆分原则:先拆分公共部分,再根据业务拆分

5、其他

单例模式

系统运行期间,一个类只有一个实例
一般在频繁的对一个对象进行访问时使用,避免产生过多垃圾

  1. 懒汉模式:延迟加载,类加载时不创建实例化,运行时创建
  2. 饿汉模式:先实例化,不允许外部对象实例化(线程安全)

json是一种轻量级数据交换格式
Ajax是一种异步请求技术
json的数据传递是通过Ajax异步调用获取信息,控制器返回的bean对象转换成json格式输出

maven用于构建和管理项目的工具

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值