自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(83)
  • 资源 (4)
  • 收藏
  • 关注

原创 如何通过IDEA查看注解逻辑实现

日常写代码的过程中会使用到很多Spring框架提供的注解,也会读到别人写的自定义注解,很多时候会好奇注解背后的实现逻辑。本文就简单地记录一下,如何通过代码中的注解,使用IDEA定位到注解的逻辑实现位置。以下方法适用于官方注解/自定义注解,以及通过切面实现的自定义注解。

2022-10-28 17:01:49 7457 2

原创 浅谈java单元测试框架junit4/5

junit是一个开源的Java语言的单元测试框架。目前junit主要有版本junit3,junit4和junit5。因在junit3中,是通过对测试类和测试方法的命名来确定是否是测试,且所有的测试类必须继承junit的测试基类TestCase,所以本文不再讨论junit3,只讨论使用比较多的junit4和junit5。

2022-09-19 18:08:27 3071

原创 认识Docker

Docker有三个非常重要的概念,镜像,容器和仓库。学习Docker一定绕不开这三个概念的理解。镜像镜像是一个特殊的文件系统,镜像利用Union Fs技术,由多层文件系统组层。镜像是一堆只读层(read-only layer)的统一视角。镜像构建时,会一层层构建,前一层是后一层的基础。每一层构建完就不会再发生改变,后一层上的任何改变只发生在自己这一层,如下图所示。镜像的一层如下图所示,包含id,元数据(Metadata 简称MD),指向前一层(父)的指针。元数据就是关于这个层的额外信息,它不

2021-09-06 20:40:55 225

原创 docker安装Jenkins

目录0.前言1. 查询jenkins镜像2. 安装配置jenkins2.1 拉取jenkins镜像2.2 创建挂载目录2.3 启动jenkins2.4 修改配置文件2.5 重启容器3 打开http://localhost:8081/3.1 获取初始密码并登陆3.2 用新密码重新登陆0.前言安装dockermac下安装docker1. 查询jenkins镜像docker search jenkins2. 安装配置jenkins.

2021-01-15 13:10:27 1010

原创 用例结果统计遇到的并发问题

1、问题背景脚本任务下关联了一批用例,脚本任务执行会把用例发送到执行器执行。执行器执行任务,并将其中的每个用例执行结果通过http请求回传到研测平台。数据平台对测试结果进行统计,计算已经执行了多少用例,成功多少,失败多少,并在任务执行完成后,发送运行结果通知给对应的执行人。由于用例是单个结果回传,就会出现如下图显示的并发问题:两个运行结果相同的用例几乎同时到达研测中心,各自从数据库读取任务执行日志,然后passCount(记录成功用例数),failCount(记录失败用例数)自增,然后入库测试任务日志的

2021-01-12 19:51:46 268

原创 树结构递归构建总结

1、常规表结构设计tree_meta_data 字段名 描述 备注 id 主键Id name 名称 parent_id 父Id path 路径等 id_path...

2020-12-14 17:22:36 281

原创 Springboot自动配置

1. Springboot源码常用注解注解分类:元注解:可以注解到别的注解上的注解。 组合注解:被注解的注解我们就称之为组合注解。当多个注解被标注在同一个类上时,可以将这多个注解合并成一个注解。这个被合并的注解就是组合注解,如@SpringBootApplication@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documented@Inherited@SpringBootConfiguration@E

2020-10-08 15:48:02 357

原创 Springboot整合quartz

1. Quartz介绍Quartz是一个功能丰富的开源作业调度框架,可以集成到几乎任何Java应用程序中,从最小的独立应用程序到最大的电子商务系统。Quartz可以创建简单或复杂的调度,用于执行数十、数百甚至数万个作业;其Job被定义为标准的Java组件,可以执行任何指定的任务。Quartz调度程序包含许多企业级特性,例如对JTA事务和集群的支持。Quartz有三个重要的核心元素,任务调度器(Scheduler),触发器(Trigger),任务(Job)。2. Springboo..

2020-06-24 16:30:25 1609 1

原创 Quartz定时任务偶现没有按时触发问题排查

问题描述:线上有多个定时任务,每3分钟会执行一次。偶现 在该触发时间未触发情况,且出现重复执行的情况。问题排查过程:(1)过程一:猜测Job实现类 TimerTaskRunService方法execute()内调用的runTask耗时太长,导致定时任务没有及时执行,将execute方法内调用的方法改为异步调用;上线后,问题依然存在。(2)过程二:1、查看kibana日志...

2020-04-13 15:02:14 4519

原创 问题排查 Active Scheduler of name 'MyClusterScheduler' already registered in Quartz SchedulerRepository.

一、Error日志&原因最近在搞Springboot整合Quartz2.3.0的时候遇到了一个诡异的问题,工程启动不起来。错误log:Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'schedulerFactoryBean' d...

2020-01-17 16:51:42 3178 10

原创 接口测试总结

1、什么是接口测试?接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。2、为什么要做接口测试?(1)业务需要:当前互联网产品迭代频繁,很难在每个迭代周期对所有功能做完整的回归测试。即使有完整的UI自动化,其维护成本也很高,且产出比很低。相较之下,接口自动化测试则实现简单,维护...

2019-08-13 21:00:51 1176

原创 Xshell通过sftp上传下载文件

1、建立会话2、XShell配置路径位置3、双击打开会话,然后cd到要上传的服务器路径位置4、打开新建传输文件,然后通过put 命令上传文件put D:\GitLab_AutoTest\test.txt链接:sftp命令的简单用法...

2019-07-03 17:23:42 3374

原创 Pyhton AES CbC 128加解密算法实现&加解密图片文件

本文实现的是AES CBC 128。高级加密标准(AES,Advanced Encryption Standard)为最常见的对称加密算法。Crypto算法库详解1、首先安装加密库pip installcryptopip installpycryptodome注:如果import AES报错from Crypto.Cipher import AES # 这句报错...

2019-06-15 15:05:21 2089 1

原创 Win10家庭版安装Docker

前言:win10专业版+启用了Heper-v可以直接用官网的docker安装,但是win10家庭版不行,需要借助docker-toolbox安装。本机安装前环境:win10家庭版、虚拟化已启用、没有安装Hyper-v、已安装git一、下载DockerDocker 分为 CE 和 EE 两大版本。CE 即社区版,EE 即企业版,强调安全,付费使用。Docker CE 分为...

2019-06-11 19:30:18 2969 5

原创 Win10下安装Virtualenv+Pycharm配置

目录:1、什么是Virtualenv?为什么使用Virtualenv?2、Virtualenv的安装和激活3.Virtualenvwrapper的安装和配置(管理虚拟环境,依赖Virtualenv)内容:1、什么是Virtualenv?为什么使用Virtualenv?因为不同项目依赖的python版本或者库版本不一样,所以在同一台机器上,不同项目之间的环境需要隔离起来。V...

2019-06-05 10:36:50 913

原创 Python中的【if __name__=='__main__':】

1、Java和C#的程序入口Java的程序入口Main函数public static void Main(string[] args){//方法体}C#的程序入口Main函数public static void Main(string[] args){//方法体}2、Python的程序入口(1)Python不需要Main函数也能执行Python不同于以上...

2019-05-14 14:50:59 24175 2

原创 PyCharm使用技巧

整理了一下PyCharm在日常使用中的技巧,会慢慢积累。。。。一.自定义文件模板在每次新建.py文件时,在文件头部自动生成模板,模板内容主要是项目名称、文件所属作者、设置方法:1. File->Settings2.打开设置Settings界面,按下图设置,将模板复制进去#!/usr/bin/env python# -*- coding: UTF-8 -*-#...

2019-03-07 20:50:39 1861

原创 测试开发面试题

1.删除文件夹及文件夹中的所有内容,即删除文件和子文件夹给定一下三个方法,编写方法remove删除文件夹中的所有内容public boolean isFile(String path)//判断给定路径是否是文件public boolean deleteFile(String path)//删除文件及空文件夹public String[] getChild(String pat...

2019-01-18 12:57:24 1947

原创 自动化测试——QQ邮箱登陆

Selenium+TestNG+Maven+IDEA前言:Selenium是Web UI自动化测试套件之一,它支持不同浏览器(CHrome,Mozilla Firefox,Internet Explorer,Edge,Opera,Safari等),平台(Android,iOS,Windows,Linux,Mac,Solaris。)和编程语言(Java/Python/C#等)的自动化,是一款...

2019-01-16 13:25:38 10331

原创 Java的三种代理模式

代理模式的定义:代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。通俗的来讲代理模式就是我们生活中常见的中介。Java的三种代理模式:1.静态代理静态代理在使用时,需要定义接口或者父类,目标对象与代理对象一起实现相同的接口或者是继承相同的父类。缺点:因为代理对象与目标对象需要实现相同的接口,使得每个目标对象,都有一个代理类,从而产生非常多的代理类。...

2018-12-24 17:31:03 258

原创 Spring学习笔记三—抽象事务模型

1.事务Transaction⑴ 原子性(Atomicity)  原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。⑵ 一致性(Consistency)  一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。⑶ ...

2018-12-21 14:42:34 438

原创 TestNG+Maven+IDEA环境搭建及用例执行

一、环境搭建的前提:1.安装JDK2.安装IntelliJ IDEA3.IntelliJ IDEA 配置MavenIntelliJ IDEA 配置Maven可参考如下博客:使用IntelliJ IDEA 配置Maven(入门)如何使用IntelliJ IDEA 配置Maven二、创建Maven项目(1)File-->new Project 选择Maven--&...

2018-12-20 16:56:04 2693 2

原创 vue项目从零开始搭建到在IDEA中运行

完全前端小白,之前看网上资料搭建了一个vue项目,今天拿出来看突然想不起来具体的细节了,在此记录一下,免得又忘了。里面各个部分有网上大牛的博客链接。1.安装node.js地址:https://nodejs.org/en/安装教程:Node.js安装及环境配置之Windows篇安装完成后查看node.js的版本我的安装目录:新版的Node.js自带npm,安装Node...

2018-12-14 11:21:05 7806 2

原创 Java实现CSV读写

在开发过程中经常需要处理csv文件,我一般是实现一个CSVHelper,封装一些对csv文件的基本操作,代码中直接使用封装好的CSVHelper来读写csv文件就可以了。今天就来记录一下如何通过Java实现封装的csv文件的读写。对于C#实现csv的读写,数据结构可以使用DataTable,但是Java没有这种对象,我用的嵌套List存储数据。在看具体的代码之前,先来了解一下csv文件是什么,...

2018-12-13 14:07:54 5452 5

原创 Java反射基本示例

1.java文件编译执行过程下图是自己在学习理解java源文件的编译执行过程后画的图,为了方便自己理解各个阶段的任务和顺序,不正确的还请指正。2. java反射Java反射机制:在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。以下...

2018-12-12 17:01:40 389

原创 SSM错误记录一

1.错误一Mybatis拦截器错误代码部分:@Intercepts({@Signature(type = StatementHandler.class,method = "prepare",args = {Connection.class,Integer.class})})public class PageInterceptor implements Interceptor {}...

2018-12-10 21:14:47 267

原创 性能测试

一. 定义性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。执行时间点:一般而言,只有在系统基础功能...

2018-12-09 15:52:15 685

原创 Http概述

1.网络七层协议2.Tcp连接建立TCP需要三次握手才能建立,而断开连接则需要四次握手,也就是常说的四次挥手。SYN:表示建立连接,FIN:表示关闭连接,ACK:表示响应,PSH:表示有 DATA数据传输,RST:表示连接重置。3.HttpHTTP通信方式属于请求响应类型,HTTP使用TCP作为传输协议,Server与Client交互过程中会建立TCP连接,但并不会...

2018-12-05 14:04:17 263

转载 数据库事务的四大特性以及事务的隔离级别

原博客地址:数据库事务的四大特性以及事务的隔离级别数据库事务的四大特性以及事务的隔离级别  本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。  如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性:⑴ 原子性(Atomicity)  原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概...

2018-12-04 13:34:07 176

原创 MacOS 10.14.1安装Mysql5.7.24

今天记录一下在Mac上安装mysql遇到的各种坑和解决办法。1.Mysql下载传送门:Mysql下载地址,下载如下图红框标示的dmg2.安装下载完成后,打开Finder-》下载-》选择下载的Mysql安装文件,点击安装。一路确定。安装完成后,会有一个临时密码,如下图所示。很多安装教程说是要记住这个临时密码用来登陆mysql。Mac下安装mysql5.7 完整步骤(图文详...

2018-12-01 13:24:17 881

原创 Object类延伸一

主要是对Object中方法涉及到知识点,总结归类。Object类中的equals()方法1.equals()方法判断两个对象是否相等,子类中一般要重写该方法。public boolean equals(Object obj) { return (this == obj); }equals()与==的区别:(1)==a.基本类型比较,比较的是...

2018-11-30 16:45:41 239

原创 Java 的Object类

Object类是所有引用类型的祖先类,位于java.lang包中。java.lang包含有Java最基础和核心的类,在编译时会自动导入。Object含有的方法如下:Java规定:在类定义过程中,对于未定义构造函数的类,默认会有一个无参数的构造函数,Object也是如此。1.registerNatives()//主要作用是将C/C++中的方法映射到Java中的native方法,...

2018-11-30 16:37:25 210

原创 Spring学习笔记二——SpringJDBC

JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成,抽象了不同数据库之间的差异。1.使用普通的JDBC public static void main(String[] args) { String url="jdbc:m...

2018-11-26 16:04:49 271

原创 BackgroundWorker的使用

本文简单介绍下BackgroundWorker及使用方法举例。1.介绍BackGroundWorker是微软提供的封装好了的,常用于在后台开启一个线程执行耗时操作,避免UI线程不响应。BackgroundWorker使用起来很方便,直接从工具箱中拖拽一个控件到Winfrom窗体即可。控件拖到窗体上后,点击该控件,打开属性窗口的事件,可以看到该控件只有三个事件方法。 Backgro...

2018-11-26 13:58:25 583

原创 SpringMVC学习笔记一

1.SpringMVC介绍Spring框架提供了完成企业级Web开发所需的功能,而SpringMVC是包含这些实现过程的一个子项目,它完全符合如今web应用程序开发框架中所广泛使用的MVC(Model View Controller,模型-视图-控制器)模式。SpringMVC是一个分层的Java Web开发框架,MVC提供了一个分层体系结构。Model(模型):是应用程序使用的特定域...

2018-11-23 11:32:02 298

原创 Git命令——删除提交的缓存文件&撤销提交

一、删除已经提交到github上的缓存文件1.先从github上拉取git pull 2.删除本地缓存git rm -r --cached target3.push到githubgit push origin master4.修改.gitignore文件,添加要过滤的文件夹或文件类型如,增加/target/5.添加修改git add .gitignore6.提交修改...

2018-11-22 19:29:45 10545

原创 Spring学习笔记一配置元数据及Spring容器的创建和使用

本文主要是总结一下Spring中的配置元数据,以及Spring容器的创建和使用。控制反转IoC(Inversion of Control),是一种设计思想,DI(依赖注入)是实现IoC的一种方法。IoC容器是Spring Application Framework的核心。IoC容器主要职责是对应用程序的对象进行实例化、初始化、装配,以及在对象的整个生命周期中提供其他的Spring功能。那些构成...

2018-11-22 13:53:58 843

转载 Java多线程

转自:Java中的多线程你只要看这一篇就够了引如果对什么是线程、什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内。用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。说这个话其实只有一半对,因为反应“多角色”的程序代码,最起码每个角色要给他一个线程吧,否则连实际场景都无法模拟,当然也没法说能用单线程来实现:比如最常见的...

2018-11-14 15:14:27 194

原创 自动化——任务自动派发

OverseaPMS任务派发系统主要包括创建测试任务、系统自动派发、个人任务以及自动生成测试报告等几个部分。一、背景:一个机型项目从立项到结项经历很多阶段,如BringUp、SDV、SIT、lVT等。每个阶段都需要对该项目进行各种类型的测试,如需求测试、SIT测试、媒体机测试、验收测试等。有时,一个测试还需要经过多轮。所有这些测试在开始之前都要由项目负责人发布一个测试任务安排。项目负责人编...

2018-11-07 14:07:58 3939

原创 MyBatis框架结构与配置文件

一、框架与基本原理 String resource = "mybatis-config.xml"; //MyBatis的Resource类Reader reader = Resources.getResourceAsReader(resource); //每个数据库对应一个 SqlSessionFactory 实例 SqlSessionFactory sqlSessionFacto...

2018-11-06 18:01:36 679

Winform开发常用引用包

一些常用的dll包,包括ReportViewer,mysql.data.dll,System.Data.SQLite.dll等

2018-03-28

简单的聊天界面设计和实现

通过RecyclerView实现简单的聊天界面设计和功能实现,具体设计步骤可以参考http://blog.csdn.net/nancy50/article/details/78626016

2017-11-24

关联规则挖掘和序列模式挖掘的Apriori算法

关联规则挖掘和序列模式挖掘的Apriori算法,介绍了关联规则和序列模式的基本概念,Apriori算法的思想和伪代码,挖掘频繁项集的例子。

2015-05-19

Servlet中获取运行环境信息

本资源通过几个Servlet实例,实现在Servlet中获取Servlet自身信息、服务器端信息和客户端信息

2014-10-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除