- 博客(323)
- 收藏
- 关注
原创 sql大全_长期更新
1、Mybatis和Hibernate1.1、获取结果为list<map<String,Object>>1.1.1、mybatis解释1、返回类型必须是java.util.HashMap2、map中的value 必须是Objecrt1.1.1.1、mapper接口**public interface HealerJeanMapper { L...
2019-11-19 21:09:37 1559
原创 Dubbo的SPI原理
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.comSPI 全称为 Service Provider Interface,是一种服务发现机制。SPI 的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。正因此特性,我们可以很容易的通过 SPI 机制为我们的程序提供拓展功能。SPI 机制在第三方框架中也有所应用,比如 Dubbo 就是通过 SPI
2020-07-16 19:05:41 838
原创 XXL_JOB分布式任务调度平台
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com官方地址:分布式任务调度平台XXL-JOB1、下载部署1.1、下载https://github.com/xuxueli/xxl-job1.2、部署1.2.1、目录结构:xxl-job-admin:调度中心xxl-job-core:公共依赖xxl-job-executor-samples:执行器Sample示例(选择合适的版本执行器,可直接使用,也可以参
2020-06-02 16:33:10 1525
原创 MybatisPlus数据库加解密
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com为了保护用户隐私,我们需要对数据库用户关键数据,入库加密,取出来解密。为了我们系统自身的安全数据库连接用户名和密码都要加解密1、数据库连接加解密1.1、数据库连接配置####################################### DB...
2020-04-10 17:14:27 11765 9
原创 分库分表之_分库分表 + 复杂查询
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com代码配置暂时和和分库分表之_分库分表相同。但是为了测试下面的join查询将user表的数量调整到了和company表的数量一致,以及给company添加了一个新的字段ref_user_id1、开始Demo1.1、hlj-08-sharding_db_t...
2020-04-01 19:28:16 3917
原创 分库分表之_分库分表+读写分离
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com1、开始Demo1.1、hlj-07-sharding_db_table-read_write.sqldrop database if exists ds_0;create database ds_0 character set 'utf8' coll...
2020-04-01 19:22:45 472
原创 分库分表之_分库分表
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com1、开始Demo1.1、hlj-06-sharding_db_table.sqldrop database if exists ds_0;create database ds_0 character set 'utf8' collate 'utf8_g...
2020-04-01 19:22:11 383
原创 分库分表之_只分表不分库 + 读写分离
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com1、开始Demo1.1、hlj-05-sharding_table-read_write.sqldrop database if exists ds_0;create database ds_0 character set 'utf8' collate...
2020-04-01 19:21:46 997
原创 分库分表之_只分表不分库
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com1、开始Demo1.1、hlj-04-sharding-table.sqldrop database if exists ds_0;create database ds_0 character set 'utf8' collate 'utf8_gene...
2020-04-01 19:20:53 1781
原创 分库分表之_垂直拆分(不同的表在不同的库中)+ 读写分离
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com1、开始Demo1.1、hlj-03-read_write-vertical_shard.sqldrop database if exists ds_0;create database ds_0 character set 'utf8' collate...
2020-04-01 19:20:23 309
原创 分库分表之_垂直拆分(不同的表在不同的库中)
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com1、开始Demo1.1、hlj-02-vertical_shard.sqldrop database if exists ds_0;create database ds_0 character set 'utf8' collate 'utf8_gene...
2020-04-01 19:19:39 1634
原创 分库分表之_读写分离
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com1、开始Demo1.1、hlj-01-read-write.sqldrop database if exists d...
2020-04-01 19:19:04 309
原创 分库分表解释以及问题出现
前言博主github博主个人博客http://blog.healerjean.com1、解释我们知道互联网是由非常庞大的用户组成,所以肯定有非常绝大的请求,这些请求又会产生非常巨大的信息存储在数据库中,由于数据量非常巨大,单个数据库的表示很难容纳所有数据,所以就有了分库分表的需求。 对于数据的拆分主要有两个方面 :垂直拆分和水平拆分1.1、垂直拆分垂直拆分: 根据业务的维度,将...
2020-04-01 19:18:18 2449
原创 ShardingSphere和MybatisPlus版本问题
Github:https://github.com/HealerJean博客:http://blog.healerjean.com错误来源我使用的ShardingSphere和MybatisPlus做的分库分表,当版本分表为如下的时候没有任何问题<!--mybatis-plus--><dependency> <groupId>com.baomi...
2020-04-01 15:45:27 5737 4
原创 Long类型值过长导致丢失精度变00
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com类似于LocalDateTime的序列化和反序列化方式1、修改序列化的方式1.1、JsonLongSerializerpublic class JsonLongSerializer extends JsonSerializer<Long> {...
2020-03-31 10:48:30 962
原创 Switch中不能定义相同变量名的解决
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com只需要在case :后面加上{ }中括号,使变量成为局部变量就好了报错的显示FileBusinessOrigin fileBusinessOrigin = FileBusinessOrigin.AUTH;switch (fileBusinessOrigi...
2020-03-31 10:47:26 4532 4
原创 Phabricator进行CodeReview
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com1、软件安装1.1、安装Git1.2、安装php1.2.1、window安装查看我的另一篇文章windows 安装php文章1.3、安装Arcanist1.3.1、下载git clone https://github.com/phacilit...
2020-03-25 10:17:00 763
原创 Java压缩文件zip
前言Github:https://github.com/HealerJean博客:http://blog.healerjean.com1、依赖<!--zip压缩--><dependency> <groupId>org.apache.ant</groupId> <artifactId>ant-apache-xal...
2020-03-11 13:49:06 219
原创 SpringBoot整合Mybatis-Plus
前言博主github博主个人博客http://blog.healerjean.com1、SpringBoot整合Mybatis-Plus1.1、依赖1.1.1、mybatis-plus依赖<!--mybatis-plus--><mybatis-plus-boot-starter.version>3.3.1.tmp</mybatis-plus-boot-s...
2020-03-10 10:30:49 505
原创 Linux常用命令-时刻更新
前言博主github博主个人博客http://blog.healerjean.com1、帮助指令1.1、–-help:显示shell内部的命令帮助信息--help命令用于显示shell内部的帮助信息。help命令只能显示shell内部的命令帮助信息。而对于外部命令的帮助信息只能使用man或者info命令查看。grep --helproot@healerjean:~# grep ...
2020-01-17 10:55:24 16447
原创 SpringBoot使用java_jar启动Mybatis无法识别实体类别名的解决
前言博主github博主个人博客http://blog.healerjean.com恶心到吐血,找一天错误了,恶心啊。一直在找代码问题,快下班了,看到了一位大神的博客,解决了问题 ,真的快抑郁了大神博客 https://blog.csdn.net/rainbow702/article/details/632557361、报错信息 ...] org.hibernate.jp...
2020-01-14 17:49:09 1386
原创 定时器表达式
前言1、解释字段允许值允许的特殊字符秒(Seconds)0~59的整数, - * / 四个字符分(Minutes)0~59的整数, - * / 四个字符小时(Hours)0~23的整数, - * / 四个字符日期(DayofMonth)1~31的整数(但是你需要考虑你月的天数),- * ? / L W C月份(Mo...
2019-12-23 15:47:14 2635
原创 过滤器和拦截器
前言博主github博主个人博客http://blog.healerjean.com1、过滤器和拦截器1.1、区别①拦截器是基于Java的反射机制的,而过滤器是基于函数回调。②拦截器不依赖与servlet容器,过滤器依赖与servlet容器。③拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用。④拦截器可以访问action上下文、值栈里的对象,而过滤器不能访...
2019-11-21 22:22:52 331
原创 设计及模式之单例模式
前言单例对象(Singleton)是一种常用的设计模式。在Java应用中, 单例对象能保证在一个JVM中,该对象只有一个实例存在。这样的模式有几个好处:1、某些类创建比较频繁,对于一些大型的对象,这是一笔很大的系统开销。2、有些类如交易所的核心交易引擎,控制着交易流程,如果该类可以创建多个的话,系统完全乱了。(比如一个军队出现了多个司令员同时指挥,肯定会乱成一团),所以只有使用单例模式...
2019-11-13 19:35:41 182
原创 项目开发经验规范总结-时刻更新
1、常用规范类1.1、异常相关1.1.1、业务异常类package com.healerjean.proj.exception;import com.healerjean.proj.enums.ResponseEnum;/** * 系统业务异常 */public class BusinessException extends RuntimeException { p...
2019-11-13 19:18:12 723
原创 文件File详解
前言博主github博主个人博客http://blog.healerjean.com习惯了使用OSS傻瓜式上传,是不是都快忘记写原生的上传了,今天小米的项目中需要用一下,所以之类简单总结下 吧1、File1.1、创建文件1、路径不存在,fileNameTxt.createNewFile() 会抛出异常2、只有路径,不会创建出文件,也不会报错,无法创建,但是不会报错3、路径存在,文...
2019-11-10 13:32:28 906
原创 Git具备代码团队合作
前言博主github博主个人博客http://blog.healerjean.com1、开发常备1.0、本地直接创建仓库git init / git init --bare <仓库名>git add README.mdgit commit -m "first commit"git remote add origin https://github.com/HealerJe...
2019-11-04 12:16:09 215
原创 Jackson多态处理
前言博主github博主个人博客http://blog.healerjean.comJackson允许配置多态类型处理,当进行反序列话时,Json数据匹配的对象可能有多个子类型,为了正确的读取对象的类型,我们需要添加一些类型信息。1、解释1.1、@JsonTypeInfo@JsonTypeInfo这个注解可以直接放在类上,也可以放在某个属性上:下面是内部的属性值1.1.1、use: ...
2019-10-30 20:35:24 2280
原创 Xml解析和工具类的使用
前言博主github博主个人博客http://blog.healerjean.com1 、解释1.1、@JacksonXmlRootElement指定生成xml根标签的名字;1.2、@JacksonXmlProperty指定包装标签名,或者指定标签内部属性名;1.3、@JacksonXmlElementWrapper用于指定List等集合类,外围标签名;用在非集合类上无效...
2019-10-29 22:50:32 969
原创 4大Json工具详细使用说明
前言Json在项目开发中使用的太多了,各种关于Json的依赖也是不断地额退出,JackJson net.sf.json 以及阿里巴巴的Json,下面的将我实际项目中对于他们的使用做个介绍 。1、解释和依赖我这里按照我接触的先后顺序进行1.1、net.sf.json最开始接触的就是它,非常神奇,不用找任何博客就能熟练使用,但是后来借出了JsonNode之后,比较之后二者差的不是一点在使用过...
2019-10-29 21:50:14 738
原创 金额大小写转化_金额工具类
1、金额逗号分隔public class DecimalUtils { public static final DecimalFormat FORMAT = new DecimalFormat("#,##0.00"); /** * @param decimal 71015000009826 * @return 71,015,000,009,826.00...
2019-09-30 09:49:20 346
原创 Swagger生成pdf文档
前言博主github博主个人博客http://blog.healerjean.comswagger.jsonhttp://localhost:8888/develop/swagger1、项目1(生成pdf)1.1、生成1.2、结果目录1.3、文件内容1…3.1、html1.3.2、pdf2、项目2(生成html和pdf)2.1、生成mvn test2.2...
2019-09-29 19:39:48 1724
原创 SpringBoot请求参数过滤空格
前言博主github博主个人博客http://blog.healerjean.com1、参数修改SpaceHttpServletRequestWrapperpublic class SpaceHttpServletRequestWrapper extends HttpServletRequestWrapper { public SpaceHttpServletRequestWr...
2019-09-29 14:43:48 2477
原创 List的一些操作
1、remove object/index/** * 1、测试remove方法 remove(object 或者是 index(int)) */@Testpublic void RemoveMethod() { List<String> stringList = new ArrayList<String>(); stringList.add("String...
2019-09-29 14:29:22 279
原创 分库分表解释以及问题出现
前言博主github博主个人博客http://blog.healerjean.com1、解释我们知道互联网是由非常庞大的用户组成,所以肯定有非常绝大的请求,这些请求又会产生非常巨大的信息存储在数据库中,由于数据量非常巨大,单个数据库的表示很难容纳所有数据,所以就有了分库分表的需求。 对于数据的拆分主要有两个方面 :垂直拆分和水平拆分1.1、垂直拆分垂直拆分: 根据业务的维度,将原...
2019-09-29 14:23:05 289
原创 GitHub突破解决上传100M限制
前言博主github博主个人博客http://blog.healerjean.com官方方案 https://git-lfs.github.com/HealerJean@MI-201902210704 MINGW64 /d/study/HealerJean.github.io/_posts/DDKJ (master)$ git push originEnumerating object...
2019-08-29 11:48:04 534
原创 设计模式之管理状态_Status状态模式_用类保存状态
前言博主github博主个人博客http://blog.healerjean.com1、解释1、对象的行为取决于它的状态,并且它必须在运行时刻根据状态改变它的行为。2、代码中包含大量与对象状态有关的条件语句:一个操作中含有庞大的多条件(if else 或switch case)语句,且这些条件依赖于该对象的状态。这个状态通常用一个或多个枚举常量表示。 //运行动作 @Overr...
2019-08-26 15:28:31 595
原创 设计模式之管理状态_Memento备忘录模式_保存对象状态
前言博主github博主个人博客http://blog.healerjean.com1、解释在使用面向对象编程的时候,我们需要先保存实力的相关状态信息,然后再撤销时候,可以根据所保留的信息恢复到原来的状态备忘录模式大家肯定都见过,比如在玩游戏的时候有一个保存当前闯关的状态的功能,会对当前用户所处的状态进行保存,当用户闯关失败或者需要从快照的地方开始的时候,就能读取当时保存的状态完整地恢复...
2019-08-26 15:27:54 281
原创 设计模式之管理状态_Observer观察者模式_发送状态变化通知
前言博主github博主个人博客http://blog.healerjean.com1、解释Observer 是进行观察的人,也就是观察者的意思,当观察对象状态发生变化的时候回通知给观察者,观察者模式适用于根据对象状态进行相应处理的场景这个模式具体看 SpringBoot_ApplicationEvent实现异步调用1、实例代码有点像踢皮球1.1、观察者抽象类父类public a...
2019-08-26 15:27:19 254
原创 设计模式之简单化_Mediator中介者模式_只有一个仲裁者
前言博主github博主个人博客http://blog.healerjean.com1、解释想象一个乱糟糟的开发小组的工作状态,组员之间虽然在一起协同工作,但是意见难以统一,总是相互指挥,导致工作进度滞后。这时候,就需要一个仲裁者。所有的组员将自己的情况汇报给仲裁者,仲裁者会从团队的整体考虑,然后下达指令。仲裁者负责统一大家的意见。这样,团队的交流过程就变成了组员向仲裁者报告,仲裁者向组员...
2019-08-26 15:26:50 191
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人