- 博客(38)
- 资源 (2)
- 问答 (4)
- 收藏
- 关注
原创 Redission 使用填坑之初次使用
在现有项目中初次使用了 Redission 工具类,做分布式锁。但是在启动的时候遇到了一个问题pom.xml<dependency> <groupId>org.redisson</groupId> <artifactId>redisson-spring-boot-starter</artifactId> <version&...
2020-03-30 18:00:10 4533 1
原创 SpringBoot 之更改 Tomcat 的 URL 校验规则
原文地址:https://maiyikai.github.io/2020/02/27/1582786564/Spring Boot 项目中都会嵌入 Tomcat, 在不同版本的 Spring Boot 下,也会嵌入不同版本的 Tomcat 。Tomcat 作用和用途这里就不用再赘述了…在项目的迁移过程中,由原先的 Servlet 项目 改造成了 Sprong Boot 项目,导致了一系列的问题...
2020-02-28 09:46:56 2912 1
原创 SpringBoot 之 @Scheduled 定时器规则
原文:https://maiyikai.github.io/2019/12/27/1577427502项目中,或多或少都会使用到定时器,定时执行某些特殊得功能。而在 SpringBoot 项目中,使用得定时器功能就是使用 @Scheduled 注解。当然,定时器功能打开了,但是没有定时,这是不可行的。所以,在定时器使用中,使用 Cron 表达式作为定时器规则,在 @Scheduled 注解源码...
2019-12-31 14:01:49 3762 2
原创 LoadRunner之脚本运行
上一篇文章我们已经讲了如何编写一个简单的 LoadRunner 脚本,也讲了如何调试和查看日志;当然这只是准备阶段哦,脚本在编写的时候能跑,但是在真实的性能测试阶段就不一定能跑了,总之问题是有的,要慢慢解决。不要问我为啥知道,因为我在使用的时候就遇到了很多的问题,就不一一的讲了,试试就知道了。原文链接:LoadRunner之脚本运行:https://maiyikai.github.io/2019...
2019-10-23 16:51:25 1263
原创 LoadRunner之脚本写作
LoadRunner,是一种预测系统行为和性能的负载测试工具。通过模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner能够对整个企业架构进行测试。企业使用LoadRunner能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。LoadRunner可适用于各种体系架构的自动负载测试,能预测系统行为并评估系统性能。LoadRunner 更多的了解可以查看百度...
2019-10-23 16:48:33 211
原创 Spring Boot分表之Shardbatis插件
随着业务的发展,数据库占用的资源会越来越大;业务对数据库的增删改查操作对数据库来说都是一笔大的开销;另外,由于无法进行分布式式部署,而一台服务器的资源(CPU、磁盘、内存、IO等)是有限的,最终数据库所能承载的数据量、数据处理能力都将遭遇瓶颈。分库分表有两种方式:垂直切分和水平切分垂直切分:即将表按照功能模块、关系密切程度划分出来,部署到不同的库上水平切分:当一个表中的数据量过大时,我们可...
2019-04-04 17:14:03 4635 2
原创 Spring Boot启动原理
原文地址:https://maiyikai.github.io/2019/03/22/1553480412如何启动一个SpringBoot应用? public class Test{ public static void main(String[] args){ SpringApplication springApplication = new SpringApplication(T...
2019-03-27 16:43:24 158
原创 重构 改善既有代码设计---第十一章 处理概括关系
11.1 某个子类只使用超类接口中的一部分,或是根本不需要继承而来的数据;在子类中新建一个字段用以保存超类;调整子类函数,令它改而委托超类;然后去掉两者之间的继承体系。11.2 多个类之间使用委托关系,并经常为整个接口编写许多极简单的委托函数。让委托类继承受托类。字段的上移和下移,函数的上移和下移,构造函数-超类创建,子类调用(super)...
2019-01-07 09:28:55 223
原创 重构 改善既有代码设计---第十章 简化函数调用
10.1 修改函数名:使其表达的含义与其实现的类的功能相近10.2 移除无用和不想关的参数10.3 将查询函数和修改函数分离:一个函数负责一件事10.4 若干个函数做了类似的工作,但在函数本体中却包含了不同的值,建立单一函数以参数表达那些不同的值。10.5 参数过长时,使用参数对象替换参数10.6 隐藏函数:当某个函数没有被其他函数使用时,将其设置为私有函数10.7 当创建对象的时候不...
2019-01-07 09:27:50 271
原创 重构 改善既有代码设计---第九章 简化条件表达式
9.1 移除控制标记:以break语句或return语句取代控制标记9.2 以卫语句取代嵌套条件表达式:9.3 以多态取代条件表达式:将这个调价表达式的每个分支放进一个子类内的复写函数中,然后将原始函数声明为抽象函数。9.4 引入断言:某段代码需要对程序状态做出某种假设,以断言明确表现这种假设。...
2019-01-07 09:26:49 379
原创 重构 改善既有代码设计---第八章 重新组织数据
8.1 自封装字段:在一个类中,访问其字段可以直接访问,但与字段之间的耦合关系会变得更加的笨拙。为这个字段简历取值/设值函数,并通过这些函数类访问字段,方便后续对值有其他的范围要求时,方便更改而不需要动函数主体。8.2 以对象取代数组:数组中元素表示不同的意义,则可以使用对象替换,对象中定义不同的字段,用于接收数组的数据。还有其他的整理方式,鉴于在平时的开发过程中都会运用到,所以不记录...
2019-01-07 09:25:24 284
原创 重构 改善既有代码设计---第七章 在对象之间搬移特性
7.1 移动函数:在该函数最常引用的类中建立一个有着类似行为的新函数。将旧函数变成一个单纯的委托函数,或是将旧函数完全移除。7.2 搬移字段:当类中的某个字段被目标类频繁的使用,建议在目标类新建一个字段,修改原字段的所有用户,令它们改用新字段。7.3 提炼类:某个类做了多类事时,应该讲它拆分为不同的类,实现一个类做一类事。注:类的命名一定要贴合类所做的事。7.4 将类内联化:如果一个类不...
2019-01-07 09:23:47 213
原创 重构 改善既有代码设计---第六章 重新组织函数
6.1 提炼函数什么时候用?到一个方法过长或某段代码需要注释写明才能更好理解时,使用提炼1.创造一个新函数(好的命名:函数名可以更接近的表达函数功能)2.将需要提炼的代码移动到新建的函数中3.检查提炼出来的代码,是否引用了“作用域限于源函数”的变量(包括局部变量和原函数参数)4.检查是否有“仅用于被提炼代码段”的临时变量。如果有,在目标函数中重新定义5.检查被提炼的代码,看看是否有任...
2019-01-07 09:21:48 243
原创 重构 改善既有代码设计---第五章 重构列表
5.1 重构的记录格式1.重构的名称2.概要1)一句话介绍此次重构解决了什么问题2)一句简短的陈述,介绍你该做的事3)一副速写图,显示重构前后的示例(UML图或代码)3.动机4.做法:简明描述如何实现5.范例:例子其他的和前边的相差不多...
2019-01-07 09:20:24 217
原创 重构 改善既有代码设计---第四章 构筑测试体系
4.1 自测:书写代码,时间花费最多的步骤在于调式,而自动测试大大减少了花费的时间。在确定功能开发之前,对接口或者方法的入参和出参设计好,然后编写相应的单元测试,对代码的入参和期望值进行校验,当功能书写结束之后,只需要执行单元测试,并且测试没问题,说明功能实现完成。每完成一个功能点就要执行一边所有的单元测试,确保代码不会对老代码造成影响。4.2 修复bug:在拿到bug时,先编写一个单元测试,使...
2019-01-07 09:18:51 220
原创 重构 改善既有代码设计---第三章 代码坏味道
3.1 重复代码代码重复会让整个类变得更大,影响代码阅读。1.同个类:不同方法中多次出现重复的代码或者表达式时,可以使用“提炼方法”的方式将重复代码或表达式提炼到方法A中,所有使用到这段代码或者表达式的方法通过对A方法的调用实现功能2.两个互为兄弟的类中含有相同的代码或者表达式:将重复代码提炼到指定方法A中,再将A方法推入到超类,后两个子类通过调用超类的方法A完成功能3.不同的类中出现重复...
2019-01-07 09:13:44 261
原创 使用列表删除的方式处理百万级数组的数据
看到csdn问答中有人问了一个问题,,百万级的Integer数组,进行分批删除,每次删除一定数量的数据,就顺手写了个小程序,,熟读还是ms级的,但是一般情况下应该不会给你一大串数据让你获取处理的,,毕竟数据量大处理的时间也会相应的延长……package com.myk.utils.test;import java.time.Clock;import java.util.ArrayList...
2018-03-12 19:24:10 822 1
转载 深入理解Zuul之源码解析(转载)
转载请标明出处: http://blog.csdn.net/forezp/article/details/76211680本文出自方志朋的博客 Zuul 架构图在zuul中, 整个请求的过程是这样的,首先将请求给zuulservlet处理,zuulservlet中有一个zuulRunner对象,该对象中初始化了RequestContext:作为存储整个请求的一些数据,...
2018-02-28 10:00:23 1779
原创 Springboot单元测试(MockBean||SpyBean)
本来要写springboot集成netty实现的,但是想起来单元测试没总结,那就趁此机会总结一下,不用文字了,直接用代码去实现: 创建一个放方法的类MethodTest.java:(命名不严谨,能看懂就行了)package com.mtk.netty.test;import org.springframework.stereotype.Component;@Componentp...
2017-11-08 21:17:45 10542 6
原创 springboot 之单元测试:MockBean
代码写到一半,之前的代码只需要完成功能且对其进行优化就完事了,就在这时,突然要我加上单元测试,崩溃啊…… 我也只能把它啃了。 原谅我只做过简单Java程序的单元测试,是使用Junit去Test的。 现在要使用SpringBoot和Junit去弄,好吧,我也不太懂什么是单元测试,所以就看看吧:
2017-10-09 19:44:06 24689 2
原创 使用List<Map>或者List<entityObject>计算指定属性的总和
使用List<T>进行对集合的总和的计算。上班时间偷个闲,回想自己在写项目的时候用到的大神之作,后进行改编,哈哈,好高大上的感觉。
2017-09-18 20:04:01 4548
原创 spring boot集成activemq
回顾博客: 安装和部署activemq:http://blog.csdn.net/maiyikai/article/details/77197776 java操作activemq:http://blog.csdn.net/maiyikai/article/details/77198822 向高层学习,就要先了解最基本的,不然看不懂。
2017-08-15 20:04:45 802
原创 windows 简易安装 activeMQ
通过网络查找,mq有很多中,这里只有activeMq 使用activemq,需要去下载相关服务,下载地址:http://activemq.apache.org/activemq-5150-release.html 下载好之后,首先要安装mq服务,然后再启动:......
2017-08-15 17:34:45 4632 2
原创 mybatis多数据注入对象--耗时较多
mysql通过多表连接获取记录 记录总数:550条 数据库连接工具耗时:22ms java通过mybatis的resultMap进行映射 程序段代码耗时:450ms 原因分析: mybatis对对象进行映射处理时,会对对象进行序列化处理,没一条记录会序列化一次,序列化过程极大的影响到了程序的运行性能。访问接口之后,对数据进行反序列化的操作,所以拖慢了程序的
2017-08-07 18:31:55 2567 2
原创 参悟spring中的StringUtils部分强大的功能
参悟spring中的StringUtils部分强大的功能:System.out.println(org.springframework.util.StringUtils.containsWhitespace("sfas"));//是否有空白System.out.println(org.springframework.util.StringUtils.trimWhitespace(" - dfasd
2017-07-24 15:12:08 2522
原创 spring boot整合mybatis使用c3p0数据源连接mysql
刚刚接触springboot,对很多东西都不熟悉,例如,它的注解方式,他的配置方式等;听说它很牛逼,所以就尝试着去学习。在基本熟悉springboot的第一个程序之后。想到当时spring整合mybatis时使用了数据源连接数据库,所以自己也想尝试使用c3p0连接数据库。所以就有了以下的内容: 首先第一步,创建maven项目导入包: pom.xmlparent> gro
2017-04-26 11:20:17 12889 3
原创 java解析excel--并反射到实体类
今天分享一下使用java解析Excel03版和07版 参考了原文链接 使用maven需要添加两个依赖: <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> ...
2017-04-21 16:36:20 5081 7
原创 spring quartzy的spring注入问题(dao层和service层)
许久没有写博文了,今天来写写,毕业设计中遇到的某个小问题,及解决方法。毕业设计中涉及到spring的定时器quartzy的使用,遇到的问题是:quartzy中不能使用spring注入的方式注入dao层和service层,原因是spring在加载的时候先加载quarzy,后加载bean。查看了一下源代码:org.springframework.scheduling.quartz.JobDetail
2017-04-16 23:41:11 5132
原创 js省市级联--避免id冲突
之前在做项目,使用到省市级联,但是那只是使用了网上下载的方法,之之后就遇上了,多个地方使用,出现了id冲突的不可避免的情况,项目期间由于没有时间去查看那么多的代码,所以都使用了最笨的方法解决了。但是这几天我重新写了一遍,用自己最“人性化”的一面去编写
2016-09-19 13:22:42 740
原创 from实现struts上传,允许回调
很多时候,form表单提交,是通过浏览器去执行方法,一般情况下,我们不会去考虑需要回调。但是,我们使用from实现文件struts上传,然后,我们还需要它返回一个结果。这样,就可以看的得到我上传是否成功,且还可以根据上传是否成功去实现不同的功能:以下是我模仿某个网站做的一些实现实现这个功能还需要一个插件,就是jquery.form.js,源码地址https://malsup.github.
2016-05-05 17:48:41 483
原创 js,级联替换(图片)
魔兽世界 *{ margin:0px auto; padding:0px; } body{ margin:0px auto; padding:0px;
2015-09-03 09:53:41 429
原创 js注册实现
注册 *{ margin:0px auto; padding:0px; } body{ margin:0px auto; padding:0px;
2015-09-02 20:16:05 423
原创 java实现兼容Oracle、mysql、SQL server数据库的链接
/*Oracle*drivername=oracle.jdbc.driver.OracleDriver*url=jdbc:oracle:thin:@127.0.0.1:1521:orcl*name=scott*password=a*//*mysql*drivername=com.mysql.jdbc.Driver*url=jdbc:mysql://127.0
2015-08-31 21:44:13 2146
TA创建的收藏夹 TA关注的收藏夹
TA关注的人