- 博客(186)
- 资源 (1)
- 收藏
- 关注
原创 idea插件 = IDEA开发自定义插件及部署插件
一、IDEA中新建plugin项目在创建项目时选择IntelliJ Platform Plugin Project SDK需要选择插件开发特有的SDK(注意不是JDK),没有相应的SDK需要New一个 可以根据自己需要开发的插件选择相应的库和框架这时就完成了插件项目的创建,目录如下所示二、plugin.xml在这里说明下plugin.xml 中出现的几个名词id:表示当前插件的唯一id号name:插件的名称version:插件的版本号vendor:填写开发人的邮...
2020-11-17 11:26:00
1233
原创 sandbox = 配置文件&javabean 映射关系
#${sandbox_home}/bin/.sandbox.shcom.alibaba.jvm.sandbox.core.CoreLauncher.main(jvm_pid,sandbox-agent.jar,【home=${SANDBOX_HOME_DIR};token=${token};server.ip=${TARGET_SERVER_IP};server.port=${TARGET_SERVER_PORT};namespace=${TARGET_NAMESPACE}】-》com.aliba
2020-11-17 11:21:50
435
原创 sandbox = 源码解析03-流量回放
文件路径 所属类.方法 逻辑 备注 ${repeater_home}/repeater-module.jar com.alibaba.jvm.sandbox.repeater.module.RepeaterModule.initialize // 装载消息订阅器List<SubscribeSupporter> subscribes = lifecycleManager.l...
2020-11-17 11:20:01
328
原创 sandbox = 源码解析02-流量录制
文件路径 所属类.方法 逻辑 备注 ${sandbox_home}/lib/sandbox-core.jar com.alibaba.jvm.sandbox.core.manager.impl.SandboxClassFileTransformer._transform final byte[] toByteCodeArray = new EventE...
2020-11-17 11:19:04
600
原创 sandbox = 源码解析01-启动加载过程
文件路径 所属类.方法 逻辑 备注 ${sandbox_home}/bin/sandbox.sh attach_jvm java -jar "${SANDBOX_LIB_DIR}/sandbox-core.jar" ${SANDBOX_JVM_OPS} "${TARGET_JVM_PID}" "${SANDBOX_LIB_DIR}/sandbox-agent.jar" \ "home=...
2020-11-17 11:17:55
1391
原创 Java SPI
SPI全称为Service Provider Interface,是JDK内置的一种服务提供发现机制。简单来说,它就是一种动态替换发现机制。例如:有个接口想在运行时才发现具体的实现类,那么你只需要在程序运行前添加一个实现即可,并把新加的实现描述给JDK即可。此外,在程序的运行过程中,也可以随时对该描述进行修改,完成具体实现的替换。Java提供了很多服务提供者接口(Service Provider Interface,SPI),允许第三方为这些接口提供实现。常见的SPI有JDBC、JCE、JNDI
2020-11-17 11:16:39
268
原创 java的双亲委派机制
类加载器java中通过类加载器ClassLoader把xxx.class文件加载到JVM中。启动类加载器bootstrap classloader :加载jre/lib/rt.jar扩展类加载器extension classloader :加载jre/lib/ext/*.jar应用程序类加载器applicationclassloader:加载classpath上指定的类库双亲委派机制 双亲委派机制是指当一个类加载器收到一个类加载请求时,该类加载器首先会把请求委派给...
2020-11-17 11:15:57
287
原创 Instrumentation
#Introduce* This class provides services needed to instrument Java* programming language code.*Instrumentationis the addition of byte-codes to methodsfor the* purpose of gathering data to be utilized by tools.* Since the changes are purely additi...
2020-11-17 11:13:35
209
原创 ClassFileTransformer
java.lang.instrument.ClassFileTransformer/**An agent provides an implementation of this interface in orderto transform class files.The transformation occurs before the class is defined by the JVM./**The implementation of this method may transform
2020-11-17 11:12:17
732
原创 route-view 在父组件中调用子组件的函数
应用场景举例:在通过路由控制的父组件中,有一个公共的菜单栏,展开某一个sub-menu时,需要把展开的key传递给子组件,子组件通过这个key,请求后端拿到页面数据。上述场景中用到了route-view组件。父组件BasicLayout.vue文件中相关代码如下:<a-layout-content> <multi-tab v-if="multiT...
2020-03-01 15:11:43
2788
2
原创 《量子物理史话》主线 - 光是什么?(未完)
神话故事篇一道亮光劈开混沌和黑暗,然后世界开始了运转。古埃及-阿蒙Ra中国-祝融北欧-巴尔德Balder希腊-阿波罗Appolo凯尔特人-鲁Lugh光的微粒说代表人物-牛顿 - 如果光和声音一样都是波,光不能绕过障碍爱因斯坦-光量子 1/2*mc^2 = hv - P密立根-想用实验证明光量子图像是错误的,结果证明了爱因斯坦方程的正确性康普顿-X射线被自由电子散...
2019-07-14 20:19:54
349
原创 Yonex 各系列球拍指数
NANOFLARE 疾光 - 速度型700 1680 2019年春季 19-27镑ARCSABER 弓箭 - 控球型11 1760 2017年夏季 19-24镑ASTROX 天斧 - 进攻型99 1780 2018年夏季88 1720 2018年春季 21-29镑77 1680 2017年秋季66(女士) 1480 2018年春季55 1380 2018年夏季...
2019-07-10 11:49:05
1731
原创 无间道2印象瞬间
1. 胡军跟黄秋生抽牌来决定听谁的-牌的来源:第一次合作抓抽老千时缴获的牌背景:胡军一直都知道黑心A是哪张合作过程:看破而不说破,一直用对方的方式来做决定。2. 快要结尾时,曾志伟门外喧嚣,门内拭泪-在门内时,看着刘嘉玲的照片,黯然动情,悄悄拭泪打开大门,跟各路人觥筹交错,谈笑风生3. 陈冠希扮演的刘警官,在警局碰到马丽(mary)-bgm- 蔡琴的《被遗忘的时光》...
2018-07-30 14:56:18
460
原创 递归比较两个JSONObject对象
import java.lang.reflect.Field;import java.math.BigDecimal;import java.sql.Timestamp;import java.util.Date;import org.testng.annotations.Test;import com.alibaba.fastjson.JSONArray;import com....
2018-07-17 18:02:41
6023
2
原创 javax.mail发送表格邮件+附件
pom.xml <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.5.0-b01</version> </dependency&g
2018-06-21 12:54:31
3787
原创 spring boot 06 - 集成mybatis多数据源动态切换
核心思路:通过MapperScan注解直接指定每套数据库各自扫描的mapper所在包路径最终的代码目录结构如下:参考前一篇博客-Spring Boot 05-集成mybatis需要做如下修改:pom.xml把spring boot的版本从2.0.2,换成1.5.9<parent> <groupId>org.springframework.boot</group...
2018-06-07 11:15:31
330
原创 算法题积累
1. 输入一个字符串,校验:字符串中的括号是否都是成对闭合状态。2. 输入整数n,求:n+n*10+n+...[n*10^(n-1)+...n](n取值2-9)3. 两个长度分别为m,n从小到大排序过的整型数组,设计一个时间复杂度为O(n)的算法,把两个数组合并成从小到大排序,长度为m+n的数组算法分析:分别从头至尾遍历两个数组a,b,假设两个数组当前下标分别为a_cur_inde...
2018-05-31 18:39:46
292
原创 Spring Boot 05-集成mybatis
0. 最终的代码层级结构:1. pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="ht
2018-05-31 15:30:27
267
原创 Http代理服务器littleproxy demo
功能:过滤(静态返回)/转发(动态响应)http请求.package qa.demo.proxy;import java.io.UnsupportedEncodingException;import org.littleshoot.proxy.HttpFilters;import org.littleshoot.proxy.HttpFiltersAdapter;import org.li...
2018-05-28 11:17:42
2686
1
原创 扑克牌重排问题
问题描述:手上有13张牌,从上往下依次做如下操作:第1张牌放桌上,第2张挪到手牌的最下面,第3张叠在桌上,第4张挪到手牌的最下面...一直重复上述过程,直至手上所有的牌都叠在桌上。叠在桌上的牌,从下往上的次序依次是1、2、3...13要求-还原操作之前,手牌的次序。算法分析:手上的牌,从上到下的次序,依次编号A1、A2、A3...A13,挪到桌上之后的次序:A8、A12、A4...
2018-05-09 12:09:46
868
原创 向右、向下排序过的矩阵,找元素问题
一个m行*n列的矩阵,每行从左至右递增顺序排列,每列从上至下递增顺序排列...设计一个时间复杂度最低的算法,在矩阵中查找某个值是否存在,如果存在,输出该元素在矩阵中的位置示例图:算法分析:根据此矩阵元素的排列特性可知-》从矩阵的右上角开始遍历,取当前遍历到的元素的横坐标为i,纵坐标为j,当前值array[],需要查找的值为targetif array[i][j]=target -...
2018-04-17 13:18:08
410
原创 Spring Boot 源码02- 核心调度方法SpringApplication.run
public ConfigurableApplicationContext run(String... args) { StopWatch stopWatch = new StopWatch(); stopWatch.start(); ConfigurableApplicationContext context = null; Collection<SpringBootEx...
2018-03-27 10:07:26
281
原创 Spring Boot源码01-AnnotationConfigServletWebServerApplicationContext的子子孙孙
层级结构class AnnotationConfigServletWebServerApplicationContext extends ServletWebServerApplicationContext implements AnnotationConfigRegistry class ServletWebServerApplicationContext extends Generic
2018-03-20 10:51:17
7141
原创 Dubbo泛化调用
– 参考博客url:http://blog.youkuaiyun.com/linuu/article/details/54313560package org.bazinga.service.test; import com.alibaba.dubbo.config.ApplicationConfig; import com.alibaba.dubbo.config.ReferenceConfig; i
2018-01-21 13:41:41
913
原创 打鸡血有道每日一句
2017.11.1 Whatever happens tomorrow,we had today 无论明天发生什么,至少我们还有今天~
2017-11-01 14:52:59
746
原创 Spring Boot系列04-AOP配置
阅读这篇博文时,假定读者已经掌握了Spring Boot+maven开发应用的入门技巧, 初次接触Spring Boot,那也没关系,移步Spring Boot + maven 开发的入门教程,10分钟完成你的第一个Spring Boot应用1. 使用的核心技术动态代理没有接触过设计模式的同学,请移步设计模式02-动态代理模式, 先了解动态代理设计模式,有助于理解Spring AOP的原理2.
2017-10-28 21:46:05
3574
原创 设计模式02-动态代理模式
上一篇博客,我们以小明买雪碧为例介绍了代理模式(静态代理)的使用场景和代码实现 静态代理模式介绍现在再来考虑以下假设的生活场景小明从楼下书店下单买书,书店再向印刷厂下单,积100分;从楼下五金店下单买锤子,五金店再想机械厂下单,同样积100分;...此处省略n种类似场景如果按照静态代理的方式,我们需要n个代理类, 会增加系统的复杂性和代码量,显然不够优雅。这时轮到动态代理登场了,代码实现
2017-10-28 13:45:58
2981
原创 设计模式01-代理模式(静态代理)
代理的理解-以日常生活为例主体需要客体提供的服务时,代替客体实际提供服务的第三方。 举个例子场景:小明在家楼下的便利店买一瓶可口可乐公司生产的雪碧。主体:小明客体:可口可乐公司服务:卖雪碧代理:便利店在我们举例的这个场景中,主体之所以需要向作为客体的便利店来买雪碧,而不是直接从可口可乐公司买,提炼原因:*** 更好的服务: 1. 从家楼下的便利店买,能节省享受服务带来的时间成本2. 便利
2017-10-28 13:24:32
2934
原创 设计模式六大原则
01 单一职责原则一个类只负责单一功能02 里氏替换原则子类对象在任何场景下都能替换父类对象;不要覆盖父类已经实现的方法03 依赖倒转高层模块不应该依赖低层模块的实现,二者都应该依赖抽象;抽象不应该依赖细节,细节依赖抽象04 接口隔离原则接口应该最小粒度,不要让实现类实现无用的方法05 迪米特法则一个对象对其他对象应该保持最少的了解;对象之间只与直接朋友通信: # 直接朋友
2017-10-27 10:38:01
3001
原创 Spring Boot系列03 - 配置文件使用
主配置文件使用Spring Boot的主配置文件默认为application.properties,必须放在源代码文件夹根目录下,一般放在src/main/resources下application.propertiesspring.mvc.view.prefix=/WEB-INF/views/spring.mvc.view.suffix=.jspserver.port=9080使用主配置文件中
2017-10-26 14:26:19
3029
原创 Spring Boot系列02-Spring Boot + JSP 整合进行网页开发
IDE创建maven web项目ArtifactId选maven-archetype-webapp最简单pom依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.
2017-10-26 13:21:58
7102
2
原创 Spring Boot系列01-Spring Boot + maven 实现Hello World
IDE中创建maven项目最简pom依赖<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.8.RELEASE</version></parent><dependencies> <d
2017-10-26 11:59:43
3109
原创 Java 四种访问控制符 public protected defualt private
Java类中,总共有4中访问控制符:公共的、受保护的、默认的、私有的对应的关键字: public、protected、空、privatepublic class Demo{ public String AA; //公共的,最大访问权限 String BB; //默认的,只有相同包中的对象能访问 protected String CC; //受保护的,相同包+子类
2017-10-25 22:15:01
657
原创 Eclipse启动tomcat-》Caused by: java.lang.NoClassDefFoundError解决方案
Caused by: java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContextException在Eclipse中运行java web服务,启动tomcat时,经常会报错 java.lang.NoClassDefFoundError:xxx一种解决方案是:1. Ec
2017-09-12 19:34:16
1125
原创 selenium3.x系列篇之四-chromedriver
第一步:把chrome浏览器安装在系统默认路径下,下载chromedriver,下载地址https://sites.google.com/a/chromium.org/chromedriver/downloads比如在本地的存储路径为:E:\apps\selenium\chromedriver\chromedriver.exe第二步:测试代码2.0 Java maven项目,需...
2017-09-11 17:37:35
3518
转载 CSRF安全攻击原理,以及防御措施
转自:http://blog.youkuaiyun.com/zitian886/article/details/46630085CSRF英文全称:cross-site request forgeryCSRF攻击原理CSRF攻击原理比较简单,如图1所示。其中Web A为存在CSRF漏洞的网站,Web B为攻击者构建的恶意网站,User C为Web A网站的合法用户。
2017-08-23 16:13:22
696
转载 Git工作流
转自: https://segmentfault.com/q/1010000000181403http://blog.youkuaiyun.com/waterforest_pang/article/details/9762863git支持很多种工作流程,我们采用的一般是这样,远程创建一个主分支,本地每人创建功能分支,日常工作流程如下:去自己的工作分支$ git
2017-06-15 18:28:40
374
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人