自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 问答 (1)
  • 收藏
  • 关注

原创 关于写博客的一些心得

文章目录一, 前言1.1 开源分享1.2 教学相长1.3 追求原创二, 写博客流程2.1 用有道云笔记写初稿2.2 写示例程序2.3 画图2.4 往有道云笔记的Markdown上挪2.5 复制到CSDN2.6 时常翻看,找“bug”2.7 整体流程三, 相关工具3.1 笔记工具3.2 画图工具3.3 LaTeX数学公式编辑器四, 总结一, 前言虽然我的博客也不是很多,但多多少少也总结了一些自己在写博客的心得,写博客很麻烦,那为什么还要写博客呢1.1 开源分享互联网软件行业的产物之一:开源。绝对是人类

2020-07-11 13:44:34 300

原创 关于异常不一样的解释

关于java异常的不一样的解释

2022-09-13 12:04:13 113

原创 TCP三次握手四次分手不一样的解释

tcp三次握手四次分手不一样的解释

2022-09-11 14:37:20 686

原创 jmeter的入门问题

为什么变量不起效1. 变量名写错2. 获取变量的request组件写在了Http Request之后3. 看报错信息一、为什么变量不起效1. 变量名写错这是网上很多都是千篇一律的说法,既然大家都愿意复制这样的博客,说明这应该确实是一个很多入门人员容易犯的错误。2. 获取变量的request组件写在了Http Request之后这个问题,其实我们很多人在刚接触jmeter时,脑子里应该就会浮现的问题:各个组件的顺序是否有影响。但很奇怪的是,我翻了很多博客,大家统统对这个问题

2022-03-15 20:04:50 349

原创 Sqlserver OVER(PARTITION BY)的简单理解

窗口函数 分析函数 row_number() over (partition by ... order by) ...

2022-01-19 16:17:15 1137

原创 ZeroC Ice权威指南-学习笔记5——修改日志框架

按照书本上的说明,你也许会碰上这样的问题:修改完之后启动报错原因在simplegrid.xml的配置:看上图两块内容,虽然看起来都是option,顺序似乎无所谓,但这里确实有问题。因为这两块内容必需换一下位置,回想书本之前说的一句话:icebox元素就是拼凑了一个java命令启动脚本,而在拼凑的时候,就是因为都是option,所以拼凑的程序也就是简单的从前往后排序拼接。并不关心里面的内容。而下面几个配置属于jvm参数,必需跟在java后面,而不能跟在主程序后面(如果忘了java启动命令,见前面的章

2021-03-09 22:44:21 115

原创 ZeroC Ice权威指南-学习笔记4——IceGrid Node

有了IceRegistry,就可以请出主角IceGrid Node出场了。本节工作目录还是沿用上次的node。添加IceGrid Note配置node1.cfg注意这里面有两个目录,需要提前创建好。启动通过观察配置,我们可以看到,IceGrid Node的日志只关联了Registry。而Registry是不会主动去关联IceBox服务的。所以IceBox服务不能停下来,config.properties配置还是需要由IceBox“主动推送”给Registry。和启动IceRegistry

2021-03-09 22:43:31 360

原创 ZeroC Ice权威指南-学习笔记3——IceRegistry

IceBox解决ice的启动“自动化”,让我们只专注于业务逻辑开发。ice作为一个致力于做出“全家桶”式的RPC框架,野心可不仅限如此,它要参与部署生产的各个环节,包括分布式环境下的统一服务治理。 IceGrid应运而生在分布式环境下,IceGrid由一个一个 IceGrid Node组成,每个IceGrid Node可以管理多一个IceBox。在此之前我们再丰富一下程序,增加一个接口写具体服务实现逻辑代码:这个实现逻辑中又调用了OnlineBook的服务,这样就把两个服务穿在一起

2021-03-09 22:42:54 364

原创 ZeroC Ice权威指南-学习笔记2——IceBox

另外写一个稍微复杂一点的调用过程按照书本上的slice【为了更清晰,这里把文件名字改为onlinebook.ice】保存之后,ice插件就为我们自动创建了对应的java代码给项目增加logback,这样可以看到更多日志,方便分析学习。给项目加上IceBox的jar包(ice虽然已经很精简,但ice.jar包可不是包罗万象)写服务端代码和上一个简单的demo不一样,这里我们使用IceBox,此时就不再需要ServerStarter这个对象了,那么他的任务(启动服务端代码)由谁

2021-03-09 22:42:00 235

原创 ZeroC Ice权威指南-学习笔记1——hello world

前言ZeroC Ice是一款很好的RPC框架,性能极好。但是参考文档不足是其一大问题,这也影响了它的传播。《ZeroC Ice权威指南》是唯一的中文教材,但写的不尽如人意,作为入门教材,啃着有点费劲。本系列博客就是学习这本教材的学习笔记,可以作为有需要的同学的辅助参考材料。其中主要是实操类的流程介绍,由于书中的ice版本比较老,和比较新的ice版本有不少使用上的差异,本系列博客使用的是ICE3.7.2,按照书中的步骤,会遇到不少的坑,所以整理了一些学习笔记。但是!学习了一段时间发现,我所在的公司在逐步弃

2021-03-09 22:40:20 399 3

原创 一种多数据源分布式事务的简单实现及源码

目录问题背景解决方案技术点设计方案上代码用法步骤结尾问题背景一个接口里需要需要处理多个数据源时,必须分多个事务,多个事务无法回滚。场景一:当系统为了性能而进行分库之后,我们的一个业务逻辑里就可能出现操作多个数据源的情况(当然,一般情况下在分库的就会考虑到把相关业务的放在一个机器上)。但也可能会出现奇怪的业务把完全不相干的业务揉到了一起。场景二:对于一些不大的项目,有时候为了省事,几个团队甚至会约定,可以相互直接访问数据库(理论上是不应该的,有安全风险),如果数据库不在一台机器上,就也会出现事务回滚问

2021-02-08 22:13:49 328

原创 git的基本使用及原理

这里写自定义目录标题前言git开发步骤一般场景流程命令行实现idea操作1. 检出代码2. 创建分支3. 修改代码后,在左边commit栏自动会出现你修改的文件5. 切换到其他紧急处理分支6. 切换回来,恢复工作进度7. 提交代码8. 推送远程分支9. 之后就重复上面的操作直到完成自己的开发任务10. 合并到mastergit原理git的存储结构思路一:提交一次就存储一套代码思路二:记录每个文件的增量提交记录其实git选择了更加聪明的存储方式git核心概念原理git存储的三种数据类型1. commit2.

2020-11-24 21:59:15 228

原创 复杂父子继承相互调用的深入理解

前言看过像Spring这样的开源框架源码,第一个感觉:逻辑很复杂,一层一层的跳来跳去,用一个实际例子感受一下(这是Springmvc的handleMapping在找对应的requestMapping的过程一部分,这里的展示的复杂的过程中居然只是“无意义”的中转代码,还没走到真正起作用的方法)在跟踪源码的时候,一会儿跳到父类,一会儿跳到子类。有时候会想:这怎么可能。为什么会产生这种疑惑。因为调用父类我们比较好理解:子类继承父类,就是为了调父类资源的。那父类调用子类呢?下面深入分析一下这种“子类和父类

2020-07-26 10:58:01 271

原创 spring-事件机制-监听器-观察者模式

文章目录前言示例代码路径重要概念简单应用Demo简单分析总结进阶使用注解@EventListener异步监听@Asyncspring监听器RequestHandleEvent观察者模式概念角色示例代码源码解析事件广播器Spring事件机制流程流程解释附录加载监听器的几个细节addApplicationListenerBeanaddApplicationListener如何读的源码把示例项目跑起来在合适的位置打断点总结参考链接前言事件机制(Event)是spring的重要功能之一。本文将从该功能的用法/和

2020-07-04 13:41:25 1640 2

原创 跳表出现的原因,实现原理及代码实现

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2020-06-29 15:14:46 501

原创 源码解析Servlet Filter原理

文章目录零、前言一、流程概述二、大致流程三、详细流程第一阶段第二阶段第一步:加载filter第二步:点燃filterChain“鞭炮链”四、其他关于filter执行顺序小插曲零、前言本文旨在从源码的角度解读过滤器的原理。使用的源码为springboot2.2内置的tomcat9。约定: 下面的所说的web服务器就是tomcat,war指的就是我们开发的web应用程序。一、流程概述为了明确filter所在位置,先说一个整体视角:以tomcat为例,所谓“web开发”,就是完善tomcat逻辑的过程

2020-05-08 23:47:36 855 1

原创 Mybatis-Plus的应用及思考

文章目录一. 背景和理念二. 作用三. 阅读本文希望达到的目的四. 使用方法4-1. pom.xml增加maven引用4-2. mapper接口继承BaseMapper接口4-3. Entity加上注解4-4. service层直接使用内置方法五. 常用方法5-1. 增5-2. 删5-3. 改5-4. 查六. 在项目中的注意事项一. 背景和理念国产最受欢迎的开源框架mybatis的增强框架,...

2020-03-27 21:49:52 195

原创 int转byte数组以及相关原理

零、前言本文由int转byte数组这样的题目代码引发的思考,其中涉及到多个让我混淆的地方。直接上代码 public byte[] toBytes(int number){ byte[] bytes = new byte[4]; bytes[3] = (byte)number; bytes[2] = (byte) ((number &gt...

2020-01-01 23:23:05 1143

原创 java线程中断、睡眠、等待

目录零、前言线程状态图睡眠(sleep)Demo说明等待(wait)Demo说明wait使用方式synchronized唤醒(notify)wait(), object对象,线程三者关系小结使用Lock实现类似的功能中断(interrupt)一般用法Demo说明中断sleepDemo说明中断waitDemo停止Demo小结总结零、前言在应用线程的时候,启动后,线程就像脱缰的二哈一样不受控制的...

2019-12-11 20:55:10 622

原创 jdk8中的接口写法

前言jdk8接口中新增了些东西,我们回过头重新审视一下jdk中的普通接口的样子。下面是Map接口的成员截图可以看出,Map接口有三部分:红色部分:也就是我们常用的API(Entry是Map存储数据的一个数据结构),这在jdk8之前就有,没什么可说的。紫色部分:也是jdk8之前也有的。这里可能会有疑问:a. 这里的equals和hashCode是不是Object类的b. 如...

2019-12-02 21:36:43 255

原创 Lamdba表达式应用及总结

零,目录文章目录零,目录一,前言二,常见的Lambda表达式三,函数式接口Function一,前言目前java已经更新到13,但应用比较多的还是8。其中java8中一个重要新特性就是Lambda表达式。代表java对“函数式编程”的增强。大部分人人应该在工作中,或者其他人的代码中多多少少都见过Lambda表达式,并且自己也简单的用过,也大致了解过“函数式”编程的意思。二,常见的Lambda表...

2019-12-01 22:48:50 228

原创 spring-data-jpa应用详细总结

零、前言前面jpa详解 中也说了spring-data-jpa 秉承spring的优良传统(简化java开发),在jpa的基础上进一步抽象简化,下面就说说spring是如果简化jpa的。简化思路:我们平时开发持久化层(dao)时,都需要写一个个接口,例如findByName(String name), findByAddress(String address),如果开发人员命名规范,我们即使...

2019-07-28 21:56:00 204

原创 jpa详解

零、前言本文是我在应用了jpa一段时间后,回过头来又学习了几十篇相关文章,结合自己试验验证总结出来的,由浅入深的入门级文章,篇幅有点长,旨在全景展现jpa的方方面面,目的是让人在使用jpa过程中,不至于“不知庐山真面目”,耐心读完,然后自己按照代码亲手动手操作一下,每个想深入了解并且应用jpa的同学应该都会有所收获。一、目录文章目录零、前言一、目录二、概念2.1 名词解释2.2 关系2.3 ...

2019-07-28 21:51:45 733

原创 一个bug的处理过程总结

前言工作中遇到的一个bug,花了不少时间去排查,为了让大家更直观的感觉这个bug,我把项目程序剥离掉 复杂的扰乱思路的业务逻辑,只留下bug相关的代码,作为一个deme方便大家重现,先把代码/日志放上,大家可以看看是否从这个demo里看出问题来。如果不想看中间过程,就直接看最后的总结即可。demo代码package com.yc.testThread;import java.io.Fil...

2019-06-01 19:42:08 584

原创 java-方法参数传对象的错误及反思

这是个很基础的问题,想明白过,但最近在写一个程序时居然又犯晕了问题代码简化示例package com.test;public class TestMethod { public void m(User u) { u = new User("张三", 22); } public static void main(String[]...

2018-07-21 15:26:52 1410

原创 从两个小例子开始学习flume

前言之前没接触过flume,也没有什么目标(不是为了解决某个问题而去学习),纯粹是因为我们头让我去学的,所以对flume完全没什么概念,也不知道要拿这东西去干什么。所以学习过程异常痛苦。 经过两三天的接触,我慢慢发现为什么这东西不好理解了:因为flume是一个之前我没接触过的软件概念(注意,是概念,比如 即使你你没接触过HBase,也很容易理解,因为它和数据库属于一个概念体系)。 如果要比喻一下

2017-08-08 20:22:40 786

原创 Hadoop-kms总结

一.前言该文档讲述hadoop的kms组件的概念以及使用二.概念1). 官方说明: Hadoop KMS是一个基于 Hadoop的 KeyProvider API的用密码写的 key 管理server。Client是一个KeyProvider的实现,使用KMS HTTP REST API与KMS交互。 KMS和它的客户端内置安全和它们支持HTTP SPNEGO Kerberos 身份验证和

2017-07-31 18:04:21 6008 3

原创 log4j入门以及logback

Log4j基础语法Log4J日志配置详解 怎么在maven项目中引用一般我把log4j和slf4j【Simple Logging Facade for java】一起使用。首先添加slf4j依赖,像使用其他jar包一样,在maven中央仓库中搜索slf4j,然后会出现slf4j相关的一堆选项,选择:slf4j-api、slf4j-log4j12两个依赖,注意首先是这两个包尽量使用相同版本的(这里

2017-07-31 15:16:50 229

原创 install4j的使用

用java写好了桌面应用,怎么搞成 那种常见的 双击之后 next、next、、、安装完成的按照包呢?用install4j。这东西有多好用呢?看看这款xml编辑软件,就是用install4j封装的安装包,安装时你就会看到install4j的标志 install4j标准定义: install4j是一个功能强大的,多平台Java安装文件生成工具,用于生成Java应用程序本地化的安装及应用程序发

2017-07-28 21:05:08 12667 7

原创 java通过schema校验xml

之前在做项目时时常需要通过一些“小xml”传输或存储一些信息,然后就在读取的时候需要先判断xml数据是否符合要求,包括这次也是这样,不同的是 这次我设计了一个比较复杂的xml,结果读取xml数据 里穿插着各种判断,洋洋洒洒写了一大坨代码。然后我就想不是有schema这种xml描述语言吗,那应该也可以在代码里用它进行校验xml… 在实现使用schema校验xml这个目标前,你首先得自己会根据自己的x

2017-07-28 17:57:31 5884

原创 swing入门Helloword

一、先上段标准的HelloWord:import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;public class HelloWorldSwing { /** * 创建并显示GUI。出于线程安全的考虑, * 这个方法在事件调用线程中调用。 */ pri

2017-07-27 16:14:47 338

原创 WebDriver使用中的一些问题

本小节内容:WebDriver使用中的一些问题WebDriver基本使用方式 获取元素方式 关于xpath浏览器兼容性驱动程序重复加载1: WebDriver基本使用这个网上很多,我也就不重复了,给大家提供几个比较好链接: 对于我们只想尽快helloWord的,可以先看这个【我就是靠着三个小例子开始做的】 chrome驱动(各种版本的) IE驱动(各种版本的) Firefox驱动

2017-07-26 11:50:27 366

原创 一个javaWeb程序员做一个桌面小应用的总结

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2017-07-26 10:29:12 3524

原创 jsp自动跳转的几种方法

页面自动跳转问题,总结一下

2017-07-14 19:09:50 3641

原创 创建一个maven web项目的种种问题

只是简单的创建一个maven web项目就会遇到各种问题

2017-07-13 19:05:13 518

原创 equals,hashcode,comparable,comparator

java面试相关知识

2017-07-10 20:44:44 225

空空如也

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

TA关注的人

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