- 博客(54)
- 资源 (1)
- 收藏
- 关注
原创 如何使用域名访问到特定IP地址的服务器
一切不以解决问题为目的的小技巧都是耍流氓。待解决的问题背景介绍:某个服务被部署在K8s集群的三个Pod上,对微服务不了解的同学可以简单理解为每个pod就是一台部署了tomcat的服务器,对外提供服务。生产环境下,用户端APP通过域名对服务器进行访问,经过一系列处理(具体细节会在后面的文章中给大家介绍,敬请期待)后会请求到pod2或者pod3,pod1只允许通过指定的IP进行访问,用来做上线前的灰度环境,主要是公司内的测试人员进行访问。待解决的问题:用户端APP访问都是直接请求的域名,但是生产环境.
2022-08-30 17:13:12 4005 3
原创 IDEA及Android Studio中报错“unable to find valid certification path to requested target”的解决方式,亲测有效!!!!
目录引言IDEA中Maven死活下载不了依赖环境解决方案Android Studio中死活下载不了依赖环境解决方案引言这一切问题的根源都来自于Aliyun镜像访问由Http协议改为了Https协议导致的“头秃”事件。浏览阿里云镜像官方网站可以看到所有镜像都改为了Https协议IDEA中Maven死活下载不了依赖环境IDEA:2019.3.3MAVEN:3.6.3解决方案打开ID...
2020-04-11 00:15:13 1773 2
原创 环境搭建 | Windows安装Android SDK
目录引言Android Studio下载/安装Android Studio下载Android SDK下载SDK Platforms下载SDK ToolsAndroid SDK配置系统变量引言该系列主要用于各项环境搭建,因此对于相关的定义和使用说明不做详细介绍。关于搭建Android SDK的文章非常多,比如直接下载压缩包,可通过官网下载(请科学上网),也可以通过国内的网站(该网站收集了各种A...
2020-04-08 21:11:21 21805 4
原创 Jenkins | 整合newman进行接口测试
目录引言Nodejs环境搭建下载Nodejs安装包,解压设置软链接newman环境搭建配置淘宝镜像下载newman设置软链接采用newman运行postman中的接口导出postman接口文件执行newman命令集成Jenkins创建一个自由风格的项目配置项目构建->执行shell构建后操作->JUnit的测试报告构建项目填坑一、newman: command not found二、/...
2020-03-29 23:38:57 909
原创 JMeter | 测试Dubbo接口
目录搭建Dubbo测试服务安装JMeter编写dubbo测试脚本创建一个Maven项目配置pom.xml文件编写项目配置文件编写脚本文件编写测试文件集成JMeter将项目打成Jar包将jar包拷贝到JMeter下启动JMeter发送请求查看结果搭建Dubbo测试服务要进行Dubbo接口,首先需要搭建一个Dubbo服务,这里可自行搭建。文章主要是搭建了一个向ActiveMQ发送消息的dubbo服...
2020-03-23 12:40:36 1209
原创 python 基础知识 | 变量的作用域
目录命名空间和作用域命名空间作用域变量嵌套函数内引用外部函数变量函数内引用全局变量命名空间和作用域命名空间命名空间提供了在项目中避免名字冲突的一种方法。各个命名空间是独立的,没有任何关系的,所以一个命名空间中不能有重名,但不同的命名空间是可以重名而没有任何影响。# 内置命名空间 # Python 语言内置的名称,比如函数名 abs、char 和异常名称 BaseException、E...
2020-01-16 10:28:23 167
原创 python 基础知识 | 类属性和实例属性
目录类属性和实例属性类属性实例属性自定义类属性和实例属性通过类方法创建类属性属性的访问限制@property类属性和实例属性python中类和实例都维护一个__dict__字典,用来存放方法和属性,可以通过dir()函数查看,下面直接通过代码去说明类属性和实例属性的区别。class Student(): # 类属性 num = '类属性' def __init__(sel...
2020-01-15 17:55:40 305
原创 python基础语法 | 装饰器
目录装饰器模式实例 把一个形状装饰上不同的颜色,同时又不改变形状类。函数实例 使用蓝色的画笔画一个矩形装饰器函数带参数的装饰器函数装饰器类装饰器模式装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。实例 把一个形状装饰上不同的颜色,同时又不改变...
2020-01-15 13:24:00 726
原创 SQL 语句题 | 重新格式化部门表
目录题目解析题目部门表 Department:+---------------+---------+| Column Name | Type |+---------------+---------+| id | int || revenue | int || month | varchar |+-----...
2020-01-08 10:44:03 878
原创 SQL语句题 | 交换工资
目录题目题目给定一个 salary 表,如下所示,有 m = 男性 和 f = 女性 的值。交换所有的 f 和 m 值(例如,将所有 f 值更改为 m,反之亦然)。要求只使用一个更新(Update)语句,并且没有中间的临时表。注意,您必只能写一个 Update 语句,请不要编写任何 Select 语句。例如:idnamesexsalary1Am2500...
2020-01-07 12:28:04 369
原创 编程题 | 多数元素
目录问题 长度为 n 的数组,其中只有一个数字出现了大于等于 n/2 次,快速找到这个数字解法一 HashMap解法二 排序解法三 摩尔投票法问题 长度为 n 的数组,其中只有一个数字出现了大于等于 n/2 次,快速找到这个数字解法一 HashMapHashMap的key为数字,value为该数字出现的次数,不详细叙述解法二 排序排序后,因为该数字出现的次数大于等于n/2次,因此该数组下...
2019-12-18 21:10:40 358
原创 自动化测试 | Appnium | 一、 appium 环境搭建
目录概述环境搭建安装Node.js安装appium-doctor安装appium-server 桌面版概述Appium架构分为两部分,一部分是Appium Client,主要是提供各种各种语言的API,另一部分是Appium Server,用来接收App Client发送的命令然后发送给被测试的移动端,从而进行UI的自动化测试,大致框架结构如下:因项目中未涉及到IOS系统的软件,目前只进行A...
2019-12-18 13:38:12 1413
原创 编程题 | 只出现一次的数字
目录问题分析解法一 暴力破解解法二 排序解法三 HashMap解法四 异或运算举一反三 长度为 n 的数组,其中只有一个数字出现了奇数次,其他均出现偶数次,快速找到这个数字问题给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?分析首先,暂不考虑时间和空间复杂度,这...
2019-12-17 15:14:13 620
原创 自动化测试
自动化测试软件自动化测试,分为接口自动化和UI自动化,Selenium主要是进行Web端的UI自动化,Appium主要是进行移动端的UI自动化。本系列暂不涉及方法论和最终实践,只描述环境配置和软件安装步骤。接口自动化UI自动化AppiumSelenium...
2019-12-16 17:47:53 115
原创 JUnit3.8.1源码阅读
文章目录引言环境功能介绍Select a test classRunrunSuitegetTestTestSuite构造函数doRunTestTestCaserunBarerunrunTestTestResultrunstartTestrunProtectedendTestTestSuiterun引言一直想要完整的阅读一份框架的源码,JUnit3.8.1除了UI界面代码之后只有2000多行代码...
2019-04-23 19:14:28 470 1
原创 JDK源码阅读(七):异常机制
文章目录异常的分类异常的分类Java标准库内建了一些通用的异常,这些类以Throwable为顶层父类。Throwable又派生出Error类和Exception类。错误:Error类以及他的子类的实例,代表了JVM本身的错误。错误不能被程序员通过代码处理,Error很少出现。因此,程序员应该关注Exception为父类的分支下的各种异常类。异常:Exception以及他的子类,代表程序运...
2019-04-22 13:46:19 210
原创 JDK源码阅读(十三):注解
文章目录元注解自定义注解组合注解@SpringBootConfiguration@EnableAutoConfiguration@ComponentScan元注解注解的注解叫做元注解java.lang.annotation包中提供了基础的元注解Documented默认情况下,javadoc是不包括注解的. 但如果声明注解时指定了 @Documented,则它会被 javadoc 之类的工...
2019-04-22 13:44:28 363
原创 JDK源码阅读(十二):IO、NIO、AIO
文章目录IO的发展过程第一阶段 同步阻塞通信 BIO第二阶段 伪异步IO通信第三阶段 同步非阻塞通信 NIO第四阶段 异步通信 AIOIOJava IO类库的框架Java IO:管道媒介Java IO:网络媒介NIONIO基础bufferchannelSelectorAIOIO的发展过程网络编程的基础模型是Client/Server模型,也就是两个进程之间相互通信,其中服务端提供位置信息(绑定...
2019-04-18 15:26:17 304 2
原创 JDK源码阅读(十一):java定时任务,Timer和ScheduleThreadPoolExecutor
文章目录Timer设计核心构造函数schedule优点与缺点ScheduledThreadPoolExecutorDelayWorkQueueScheduleExecutorServiceschedulescheduleAtFixedRatescheduleWithFixedDelay复杂任务调度任务调度是指基于给定时间点,给定时间间隔或者给定执行次数自动执行任务。四种任务调度的 Java 实...
2019-04-18 11:12:27 611
原创 JDK源码阅读(十):Executors和线程池
文章目录线程池框架结构Executor和ExecutorServiceAbstractExecutorServicesubmitnewTaskForThreadPoolExecutorExecutors中的默认实现newSingleThreadExecutornewFixedThreadPoolnewCachedThreadPoolexecuteaddWorkeraddWorkerFailedtr...
2019-04-17 15:21:44 334
原创 JDK源码阅读(九):JUC之AOS并发框架
文章目录Locks 锁Lock 和SynchronizedLockSupport 和java内置锁AbstractQueuedSynchronizerReentrantLocklockunlockConditionawaitsignal、signalAll总结Semaphore和ExchangerSemaphoreExchangerCountDownLatch和CyclicBarrierCount...
2019-04-17 15:08:20 615
原创 JDK源码阅读(九):JUC之原子类
文章目录Atomic原子数据标量类数组类更新器类复合变量类Atomic原子数据java.util.concurrent 包中atomic包中提供了一组原子变量类。其基本的特性就是在多线程环境下,当有多个线程同时执行这些类的实例包含的方法时,具有排他性,即当某个线程进入方法,执行其中的指令时,不会被其他线程打断,而别的线程就像自旋锁一样,一直等到该方法执行完成,才由JVM从等待队列中选择一个另一...
2019-04-16 19:39:50 143
原创 JDK源码阅读(九):JUC之并发集合
文章目录非阻塞队列ConcurrentHashMap实现原理ConcurrentSkipListMapConcurrentSkipListSetConcurrentLinkedQueueConcurrentLinkedDequeCopyOnWriteArrayListCopyOnWriteArraySet阻塞队列ArrayBlockingQueueLinkedBlockingQueueoffer(...
2019-04-16 19:21:48 294
原创 JDK源码阅读(八):集合框架
文章目录集合框架Arrays类HashMapHashMap的数据结构HashMap的实现原理HashMap的存取实现存储resize读取Fail-Fast机制HashSetHashtable集合框架在Java2之前没有完整的集合框架,只有一些简单的可以自扩展的容器类,比如Vector、Stack、HashTable等,都是同步化的,此外还提供Enumeration接口去访问任意容器内中各个元素...
2019-04-16 18:35:46 231
原创 JDK源码阅读(六):Class和ClassLoader
文章目录类的加载机制ClassClassLoaderJava中每个类都会对应生成一个Class对象,用来保存类信息,ClassLoader是用来将类加载到JVM的类的加载机制类加载机制:虚拟机将.class文件从磁盘或其他地方加载到内存,并同时对文件中的数据进行校验、转换、解析和初始化,最终形成可以被虚拟机直接识别的类型。类的生命周期:解析可能会在初始化之后,为了实现动态绑定。加载...
2019-04-16 15:38:13 569
原创 JDK源码阅读(五):Enum类
文章目录枚举类型定义一个枚举类型编译反编译总结枚举类型定义一个枚举类型public enum Calculator { ADD,SUBSTRACT,MUTIPLE,DIVIDE; }enum很像特殊的class,实际上enum声明定义的类型就是一个类。 而这些类都是类库中Enum类的子类(java.lang.Enum)。它们继承了这个Enum中的许多有用的方法。编译...
2019-04-16 14:09:24 330
原创 JDK源码阅读(四):Future模式和Callable接口
文章目录Future模式核心思想Future模式的基本原理案例一:Java实现Future模式案例二:JDK的内置Future实现Callable、Future原理解析Java多线程编程中,常用的多线程设计模式包括:Future模式、Master-Worker模式、Guarded Suspeionsion模式、不变模式和生产者-消费者模式。Future模式核心思想Future模式的核心在于:...
2019-04-16 11:01:47 168
原创 JDK源码阅读(三):Thread类
文章目录线程和进程的区别Thread创建线程ThreadGroupThreadLocalset(T)T get()remove()ThreadLocalMapInheritableThreadLocal线程的生命周期startyieldsleepjoininterrupt如何中断线程RunnableCallable线程和进程的区别进程就是计算机中正在执行的程序,每个进程都有自己独立的一块内存空...
2019-04-16 10:39:14 303
原创 JDK源码阅读(二):包装类和String、StringBuilder、StringBuffer
文章目录基础类型包装类拆箱和装箱Integer例一例二String、StringBuilder、StringBuffer基础类型Java中有8中基础数据类型基础数据类型bitbyte8short16int32long64float32double64char16boolean包装类Java中的每个基础类型都...
2019-04-15 17:30:23 163
原创 JDK源码阅读(一):Object类
文章目录引言类图toString()源码clone()源码重点getClass()源码重点finalize()源码hashCode()和equals()源码重点notify()、notifyAll()和wait()源码重点Java中的monitor机制monitor机制的三个部分ObjectMonitor模式引言这是JDK源码阅读的第一节,我们来看看java.lang包下的Object类。Ja...
2019-04-03 22:41:47 272 2
原创 记一次Nginx使用过程中遇到的问题和解决方案
https代理到http场景解决方案转发特殊的请求头场景解决方案特殊的文件上传请求场景解决方案最近项目中使用到了Nginx作为反向代理的一些简单功能,但是还是遇到了很多的问题,特在此记录下来,方便后期复看。https代理到http场景服务器只对外暴露https端口,客户端通过https访问到nginx服务器,nginx服务器将对应路径...
2018-09-03 15:46:02 1585 1
原创 Nginx 学习笔记
安装步骤第一步 安装依赖软件第二步 编译安装第三步 启动和关闭基本配置用于调试进程和定位问题的配置项正常运行的配置项优化性能的配置项事件类配置项用HTTPh核心模块配置一个静态Web服务器虚拟主机与请求的转发文件路径的定义网络连接的设置用HTTP proxy module配置一个反向代理服务器负载均衡的基本配置反向代理的基础配置安装步...
2018-06-29 17:24:20 874 2
原创 RabbitMQ 学习笔记(一):RabbitMQ的安装
写在前面RabbitMQ安装第一步 安装erlang语言环境第二步 安装RabbitMQ第三步 配置RabbitMQ启动和关闭节点写在前面对于这种组件、工具的使用,后期尝试采用如下结构来记录 1. 安装和配置 2. 通过Java程序直接调用提供的API 3. 整合Spring 4. 整合Spring BootRabbitMQ安装第一步 安装...
2018-06-12 16:51:54 313
原创 Maven 学习笔记(三) :使用Maven的Archetype插件生成自定义的项目结构
Archetype任务步骤第一步 根据需要生成的项目框架搭建一个完整的项目第二步 生成Archetype项目方法一第一步 新建一个Archetype项目,具体结构如下第二步 拷贝项目结构第三步 编写archetype-metadata.xml文件第四步 将需要自定义的变量参数化方法二第一步 采用archetype插件,根据项目逆向生成对应的archetype项目...
2018-06-07 10:05:46 3739 2
原创 Maven 学习笔记(二) :Maven的聚合和继承
Maven的聚合和继承Maven的聚合Maven的继承依赖的继承插件的继承反应堆Maven的聚合和继承Maven的聚合Maven的聚合也叫多模块,需要新建一个Maven项目用来聚合多个模块聚合模块的POM<groupId>com.huyp.account</groupId><artifactId>acco...
2018-06-05 09:51:36 373
原创 Maven 学习笔记(一) :Maven的生命周期和插件
Maven 生命周期clean 生命周期default 生命周期site 生命周期Maven 插件插件绑定内置插件自定义绑定插件配置命令行插件配置POM中插件全局配置POM中插件任务配置Maven 生命周期Maven拥有三套相互独立的生命周期,分别为clean、default和site。每个生命周期包含一些阶段(phase),这些阶段是有顺序...
2018-06-04 11:21:01 353
原创 Spring AOP(Aspect Oriented Programming)模块
问题术语解释不使用代理使用代理静态代理(代理模式)JDK动态代理Cglib动态代理Spring AOP的几种使用方式实现接口基于AspectJ注解的AOPAOP在Java里是利用反射机制实现(你也可以认为是动态代理,不过动态代理也是反射机制实现的。问题有两个流程,取款流程和查询余额流程两者有一个共同的验证流程:有没有想过可以把这个验证用...
2018-05-03 14:38:46 292
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人