05 2019 档案
摘要:1.IOC框架的设计思路 ① 哪些类需要我们的容器进行管理 ②完成对象的别名和对应实例的映射装配 ③完成运行期对象所需要的依赖对象的依赖
阅读全文
摘要:官方文档 http://dubbo.apache.org/en-us/docs/user/quick-start.html 自己的 使用app方式进行启动
阅读全文
摘要:1. 用户发送请求至前端控制器(DispatcherServlet) 2.DispatcherServlet 将受到的请求调用HandlerMapping 处理映射器 3.处理器映射器根据配置注解找到具体的处理器以及处理拦截器,并转发给DispatcherServlet 4.DispatcherSe
阅读全文
摘要:5.0.2.RELEASE org.springframework spring-aspects ${spring-framework.version} org.springframework spring-webmvc ${spring-framework.version} org.springframework spring-jdbc...
阅读全文
摘要:1. 步骤 实现消费者调用生产者服务接口。 2.安装zookeeper 3.创建maven 工程 4.安装dobboadmin 平台实现监控 5.dubbo 目录结构 dubbo-member-api 会员提供接口,没有实现 dubbo-member-apiimpl 会员接口的实现类 dubbo-o
阅读全文
摘要:1. dubbo 仅支持java语言之间的通讯。 2. dubbo 产生的背景是因为分布式的情况下产生的。 3. 解决服务治理的问题,通过注册中心进行管理 4.SOA 治理方案 tcp 协议传输,只需要知道端口和IP 就能够进行之间的通讯。 传统的RPC远程调用的缺点:(缺少服务治理) 架构原理 角
阅读全文
摘要:1.用于加速用户下载资源的速度。 简单来说,CDN相当于一个中间代理,原来我们需要请求某个网址比如www.baidu.com,请求会直接发送至百度的服务器上,假如请求者在新疆,但百度的服务器在北京,这样的话请求和响应都会受距离影响慢一些,但有了CDN后,请求是先发至距离请求IP定位最近的CDN服务器
阅读全文
摘要:https://blog.csdn.net/yuhaiyang_1/article/details/80862914 一、演变史 1.初始阶段 单体架构,就是所有的软件和应用部署在同一个服务器上面 2.阶段二 应用服务器和数据库的分离 3.阶段三 在数据库没有达到饱和是,应用服务器集群(产生问题 ①
阅读全文
摘要:1. mybatis 是使用JDBC来实现的, 所以需要我们首先了解JDBC 的查询 ①加载JDBC驱动 ②建立并获取数据库连接 ③设置sql语句的传递参数 ④执行sql语句并获得结果 ⑤对结果进行转化,并返回处理后的结果 ⑥释放相关的资源 2.mybatis 核心组件 ①sqlSession 和数
阅读全文
摘要:1. 下载Geoserver War 包。 2.把geoserver.war文件放到 webapps文件夹下 3.添加Tomcat 用户 解压文件conf文件夹下 修改tomcat-users.xml 文件
阅读全文
摘要:问题描述 前段时间遇到个问题,自己内部系统调用出现重复请求导致数据混乱。 发生条件:接受到一个请求,该请求没有执行完成又接受到相同请求,导致数据错误(如果是前一个请求执行完成,马上又接受相同请求不会有问题) 问题分析:是由于数据库的脏读导致 问题解决思路 1.加一把大大的锁 (是最简单的实现方式,但是性能堪忧,而且会阻塞请求) 2.实现请求拦截 (可以共用,但是怎么去实现却是一个问题...
阅读全文
摘要:1. 设计原理 引入了,代理模式。 java 程序执行流: 如果从虚拟机的角度看,整个程序的过程就是方法的调用,我们按照方法的执行顺序,将方法调用成一串。 在方法之间有着Join Point 连接点,一个程序的过程,就是若干个连接点连接起来执行的过程。AOP就是针对连接点的入口作为编程,相当于在时间
阅读全文
摘要:1. IOC 是Spring的内核,字面意思是控制反转,并提出了DI依赖注入的概念。 2.Spirng 容器的设计中,一个是实现BeanFactory 接口的简单饿汉容器,另外一个是比较高级的ApplicationContext 应用上下文,在这基础上增加了许多面向 框架的特性。 BeanFacto
阅读全文
摘要:1. 单例模式(一个类只有一个实例) 2. 工厂模式(多个子类实现一个接口,根据不同子类复写父类方法,根据业务产生不同的实例) 创建两个实现类 创建一个工厂,根据类型不同创建不同的对象 测试(传入不同的类型,得到不同的对象内容) 3. 代理模式 (由一个主题来操作一个真实主题,代理服务器来完成一个真
阅读全文
摘要:1. 辅助线程池 newSingleThreadExecutor 创建一个单线程的线程池。这个线程池只有一个线程在工作,也就是相当于单线程串行执行所有任务。如果这个唯一的线程因为异常结束,那么会有一个新的线程来替代它。此线程池保证所有任务的执行顺序按照任务的提交顺序执行。 newFixedThrea
阅读全文
摘要:在JVM中,是通过线程轮流切换时间来获得CPU,因此在同一刻时间,一个CPU只能执行一条线程命令 1.java中内存的分布? JVM 执行的过程。①加载class文件 ②管理并分配内存 ③执行垃圾收集 内存结构图: 栈 java栈中,存放一个个栈帧,每一个栈帧对应一个被调用方法,在栈帧中包含局部变量
阅读全文
摘要:CountDownLatch 调用await()方法的线程会被挂起,它会等待直到count值为0才继续执行。也可以传入时间,表示时间到之后,count还没有为0的时候,就会继续执行。 CyclicBarrier 是多个线程中,等待其他线程执行完之后,线程中才继续执行。 Semaphore 可以控制同
阅读全文
摘要:首先对hash的了解:就是关键字,和数据建立关系的映射。 hash常用算法:假设我们中的字符有相应的内部编码,当然在实际过程中,我们不可能将所有的编码当做hash值。 平方取中法,将所得的内部编码平方,取7-9位作为hashcode. 折叠法:将编码分割,然后相加。 除留取余法 即便是按照上面的计算
阅读全文
摘要:1.HashSet分析 hashset 底层是hash表,就是hashMap,是无序的,唯一的.也就是说,它的底层其实就是一个HashMap key 值的组成值。所以具有唯一性。 2.LinkedHashSet 底层就是链表和hash表,由链表来保证顺序,用hash表保证唯一性。相当于使用的是 Li
阅读全文
摘要:1.创建 ArrayList 的底层是一个数组。 ①默认情况,如果没有传递数组的大小,默认使用一个空的数组。如果有,代表使用当前传入长度作为数组,或者数组长度作为数组。 ②新增情况下,先要判断数组长度是否够,如果长度不够,需要进行数组的扩增,扩增大小为0.5倍,奇数数舍去。下面为扩增的源码,如果扩增
阅读全文
摘要:参考:https://www.jianshu.com/p/331b872e9c8f 1.建立一张存放的表 CREATE TABLE `sys_serial_number` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `module_name` varchar
阅读全文

浙公网安备 33010602011771号