随笔分类 - java
摘要:CAP:Consistency(数据强一致性)、Availability(其中一台机器故障其他的可以提供服务)、Partitiontolerance(机器间因网络延迟等问题不能同步,确保都可以提供服务),因为分布式微服务集群基本上是要求的所以一般都是在CP 或者 AP 之间做选择。 CA本来就矛盾。
阅读全文
摘要:虚拟机安装(配置虚拟机安装centos(社区版)系统,这里就不描述了)好后如果需要与本地互联需要配置网络 点击vm 编辑 虚拟网络编辑器 选择你安装的vm(类似交换机)配置对应的网段(可能会提示需要管理权限点击就是) 然后点击你本地的网络适配器(类似一个客户端)配置对应的vm的ipv4参数 接着进入
阅读全文
摘要:Maven是跨平台的项目管理工具。主要服务基于Java平台的项目构建,依赖管理和项目信息管理。一键部署(清理 编译 测试 报告 打包 部署)自动下载,统一依赖管理,仓库管理 Maven坐标主要组成: groupId:定义当前Maven项目隶属项目 artifactId:定义实际项目中的一个模块 ve
阅读全文
摘要:websocket简单聊天 下载websocket Demo https://docs.spring.io/spring/docs/current/spring framework reference/web.html websocket 添加websocket依赖及部分js依赖 文件目录结构: w
阅读全文
摘要:web根据资源名称去到class目录找到对应的文件,output输出屏幕 POM添加依赖 配置资源拦截器,同时classes\META INF\services 目录下新建文件javax.servlet.ServletContainerInitializer 配置:xyz.luofu.www.app
阅读全文
摘要:Servlet3.0 - ServletContainerInitializer注册JAVA组件: 在web容器启动时为提供给第三方组件机会做一些初始化的工作,例如注册servlet或者filtes等,servlet规范中通过ServletContainerInitializer实现此功能。每个框架
阅读全文
摘要:下载jar包和源码 引入ideal
阅读全文
摘要:一 进行文件一致性校验 为了确保你得到的文件是正确的版本,而没有被注入病毒和木马程序。例如我们经常在网上下载软件,而这些软件已经被注入了一些广告和病毒等,如果不进行文件与原始发布商的一致性校验的话,可能会给我们带来一定的损失。 二 文件一致性校验原理 要进行文件的一致性校验,我们不可能像文本文件比较
阅读全文
摘要:分析http请求的路径分析,之前说过socket完成对端口的监听: 先看下connector: 查看EndPoint,java8后使用的是NioEndpoint:查看ctrl+F12可以看到有相关的几个内部类Acceptor(接受请求)、Poller(从请求池中获取请求)、SocketProcess
阅读全文
摘要:接着分析下start()方法: host启动 context启动 后续severlet的加载,优先级 warpper load方法等: 容器组件启动会触发lisener监听器从而知道容器中发生了变化(如:热部署)。
阅读全文
摘要:tomcat总体结构 Server:接受请求并解析,完成相关任务,返回处理结果。通常情况下使用Socket监听服务器指定端口来实现该功能,一个最简单的服务设计如下: Start():启动服务器,打开socket连接,监听服务端口,接受客户端请求、处理、返回响应 Stop():关闭服务器,释放资源 缺
阅读全文
摘要:模拟MapperFactoryBean实现对接口的代理,相关代码如下:
阅读全文
摘要:代理的名词: 代理对象:增强后的对象 目标对象:被增强的对象 他们不是绝对的,会根据情况发生变化 java实现的代理的两种办法: 静态代理: 继承:代理对象继承目标对象,重写需要增强的方法; 缺点:会代理类过多,非常复杂 聚合:目标对象和代理对象实现同一个接口,代理对象当中要包含目标对象。 缺点:也
阅读全文
摘要:以下分析基于spring framework 5.0.x相关源码可自行去github下载或者maven依赖然后利用类似ideal工具自动关联源码功能。 what is IOC 控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之
阅读全文
摘要:说明:以下分析基于spring framework 5.0.x,mybatis spring 1.3.2,mybatis 3.4.6相关源码可自行去github下载或者maven依赖然后利用类似ideal工具自动关联源码功能。 我们知道spring对bean的管理,我们可以通过多种方式将bean添加
阅读全文
摘要:在资源目录下新增banner.txt文件,输入下面的图案 就可以修改启动信息了 或者在线生成txt图案或者logo 工具是在线生成的,地址:http://patorjk.com/software/taag/#p=display&f=ANSI Shadow&t=Guoye 在文本框中输入你想要的文字,
阅读全文
摘要:Class.getResource(String path)path不以'/'开头时,默认是从此类所在的包下取资源;path以'/'开头时,则是从项目的ClassPath根下获取资源。在这里'/'表示ClassPathJDK设置这样的规则,是很好理解的,path不以'/'开头时,我们就能获取与当前类
阅读全文
摘要:四:接着我们分析往上回到PostProcessorRegistrationDelegate类中invokeBeanFactoryPostProcessors这个方法继续往下:Instantiate and invoke all registered BeanPostProcessor beans,
阅读全文
摘要:以下分析基于spring-framework-5.0.x,关于源码可以自行去github上下载 java中描述对象的我们称为类class,spring 中描述对象的信息的包括元数据信息,注解信息的我们称为bean. 我们通过分析spring源码一步一步解析: 先发一个整体模型图 首先我们编写一个启动
阅读全文

浙公网安备 33010602011771号