自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(192)
  • 资源 (7)
  • 收藏
  • 关注

原创 Mono.fromCompletionStage重试不工作

Mono.FromCompletionStage Retry不重试。

2023-03-02 11:19:53 240 1

原创 multipart/form-data 在低版本spring和webFlux中的解析

最近在做一个技术项目的迁移,将老的springMVC项目迁移到SpringWebFlux项目中,在流量迁移过程中发现有一个业务方传过来的参数新项目拿不到,究其原因是老版本的spring解析器和新版本的解析器对。注意看,老版本的解析是判断文件名是否为空来决定它是不是一个formField。如果value值不是string,则是multipart。在解析每一个part的时候,会根据header。类型的contentType解析方式不一致。判断是否是formFiled的条件。

2023-01-29 17:38:47 1100 1

原创 js 解析json中key,value包含空格的字段。

检测代码function iterableJsonArray(jsonObj, needTips) { if (jsonObj.length > 0 && typeof (jsonObj) == "object" || typeof (jsonObj) == "object") { for (const key in jsonObj) { iterableJsonArray(jsonObj[key], needTips)

2021-10-11 13:17:07 1130

原创 Java8-Optional容器使用

前言作为Java程序员,NullPointException是我们在开发调试中最常见的一个异常,原因也很简单,我们使用了一个没有被任何对应引用的值,它的值为null,所以在获取其对象时,系统会抛出NullPointException,就像这样:public class TestNullPointException{ @Test public void test_null_point_exception(){ String nullRefStr = null; boolean isEQ =

2021-03-09 10:36:21 291 1

原创 使用Getxxx代替SetxxxToXxx设置值

背景最近在重构业务中的相关代码,在看之前的代码的时候有很多的感想。记录下来之前的不好之处。业务需求组装订单VO给客户端,每个字段可能都有一些业务逻辑组装。实体类 @Datapublic class Order { private Integer id; private Integer cTime; private Integer uTime; private String phone; private String address;

2020-10-12 22:55:54 287

原创 CompletableFuture 合并操作

背景最近在使用CompletableFuture做异步代码的重构,其中遇到了一些问题,记录下来。需求批量请求下游RPC的List,然后合并为一个List代码1.模拟调用下游请求 private CompletableFuture<List<Integer>> getIntegerList(int startIndex, int size) { return CompletableFuture.supplyAsync(() -> {

2020-10-11 00:27:39 5029

原创 写够100w行代码

千里之行,始于足下。不骄不躁。

2020-08-19 13:41:27 278 1

原创 Java泛型浅究(一)

泛型是什么?引用维基百科上的一段介绍泛型的话泛型程序设计(generic programming)是程序设计语言的一种风格或范式。泛型允许程序员在强类型程序设计语言中编写代码时使用一些以后才指定的类型,在实例化时作为参数指明这些类型。泛型是存在于强类型语言中(先编译后运行)的一种机制,它其实提供了一种容器,它本质上是一个“代码模板”,可让开发者定义类型安全数据结构,无需处理实际数据类型,或者也可以说提供了一种抽象的数据结构,提高了编码的容错性,同时,也提高了代码的可读性。很多编程语言提供了泛型支持

2020-06-21 00:35:36 365

原创 GraphQL(八)自定义Scalar

背景Graph-java 在包中提供了除规范要求的几种类型,还新增了几种java特有的类型,比如BigDecimal,Byte。当然我们也可以自己定义Scalar,接下来,以LocalDateTime为例,我们来实现自定义的Scalar。参考其他built-定义的类型,自定义的Type需要实现三个方法,分别来序列化输入和输出。GraphQLDatepackage com.tangbao...

2020-04-05 18:03:16 1464 3

原创 GraphQL(七) JAP&MySQL整合实现CURD

前面我们学习了GraphQL 的相关基础知识,比如使用SDL或者Java类型实现简单的查询相关的代码创建数据库DDLcreate table author( id bigint auto_increment comment '主键' primary key, created_time timestamp default CURRENT_TIMESTAMP not null comm...

2020-04-05 16:11:38 659

原创 GraphQL(六) 联合类型

UnionType联合类型和接口十分相似,但是它并不指定类型之间的任何共同字段。Java 方式package com.tangbaobao.graphql.service;import com.tangbaobao.graphql.domain.Dog4Interface;import com.tangbaobao.graphql.domain.Fish4Interface;impo...

2020-04-04 01:07:14 1035

原创 GraphQL(五)接口类型

Interface跟许多类型系统一样,GraphQL 支持接口。一个接口是一个抽象类型,它包含某些字段,而对象类型必须包含这些字段,才能算实现了这个接口。SDL方式定义SDLschema { query: Query}type Query{ # 查询所有动物 animals:[IAnimal]}interface IAnimal{ #动物名字 ...

2020-04-03 18:00:21 1061

原创 GraphQL(四) 使用SLD&ObjectTypeDefine解析

背景在和语言弱关联的这种框架或者结构下,一般都会有两种形式去实现某个功能,比如FaceBook 开源的thrift RPC框架,接口使用IDL来编写,可以用IDL生成特定语言的代码,也可以使用语言本身去编写相关的代码,其实GraphQL也是这样,你可以使用某种语言去解析SDL,帮你生成相关的Schema,你也可以手动去写代码生成相关的Schema。SDL方式schema.graphqlst...

2020-04-02 12:06:50 610

原创 GraphQL-Java(三) 基本类详解

在GraphQL-JAVA 中有一些核心的类库,负责SDL解析,映射,取数等逻辑,我们来看一下。GraphQL-Java 官网:GraphQL官网地址GraphQLGraphQLSchemaRuntimeWiringTypeDefinitionRegistryExecutionResult...

2020-04-02 00:00:06 316 1

原创 React和AntDesign整合

'use strict';const fs = require('fs');const path = require('path');const webpack = require('webpack');const resolve = require('resolve');const PnpWebpackPlugin = require('pnp-webpack-plugin');c...

2020-03-29 21:38:00 563 1

原创 在React脚手架中启用Less

参考:https://juejin.im/post/5c3d67066fb9a049f06a8323运行项目,此时在浏览器中即可查看到 logo 图片在缓慢转动。启用 Less 语法编写 CSS由于 create-react-app 脚手架中并没有配置关于 less 文件的解析,所以我们需要自己进行配置。需要安装的插件 less, less-loader。添加 Less 相关配置在命令行...

2020-03-22 16:33:09 204

原创 事实看清,总想为这个世界做点什么

我当前生活的地球真好,好好珍惜身边的人,做自己喜欢的事情

2020-03-07 00:43:32 155 1

原创 一组时间段内求相交时间的并集

public static void main(String[] args) { List<HolidayDuration> durationList = List.of(new HolidayDuration(1, 9), new HolidayDuration(3, 10), new HolidayDuration(6, 7)); System.o...

2019-12-09 21:27:48 963

原创 HTML生成器 For Java

背景在工作中,我们或许会遇到需要给客户端传递一些html的需求,比如,需要客户端的某些文案和样式从服务端下发,我们想到的可能是拼HTML代码,虽然能解决问题,但是对拼装的效率和可维护性都很差。解决方案使用Html生成器官方网址: j2htmlGitHub地址:https://github.com/tipsy/j2htmlhtml( head( title("Ti...

2019-11-11 19:33:09 732

原创 SpringBoot使用切面

待定

2019-11-05 10:05:10 316 1

原创 @JsonUnwrapped将对象扁平

背景有以下的实体类:@Getter@Setter@ToStringpublic class Money { private double remain;}@Getter@Setter@ToStringpublic class PersonInfo { private String name; private int id;}@Getter@Se...

2019-09-27 10:03:24 6409

原创 你只管追求卓越,成功自然会尾随而到

人的一生很短暂,如果把有限的精力都投入到自己喜欢的事情上,多好。什么是你自己喜欢的事情呢?很多人可能说“我没有喜欢的事情,虽然不喜欢现在自己所做的事情,但是为了生活,为了养家糊口,还是在坚持坐着”,从某些方面来说,的确有些矛盾,什么是你喜欢的事情呢?如果你对做一件事情乐此不疲,而且,提起来都会兴奋,虽然它很小,被认为是不“正业”,但是存在即合理,如果坚持做好,一定也可得到你想要的。你只管追求卓越...

2019-09-22 23:45:41 386 1

原创 InnoDB存储原理简介

这篇博文写的通俗易懂,稍后自己再总结一下https://www.cnblogs.com/rjzheng/p/9915754.html#commentform

2019-09-18 10:20:06 246

原创 webpack(一)

什么是WebPackwebpack是JS的一个管理打包工具,它可以通过配置相关的Loader来对资源进行打包编译成浏览器可以认识的文件packge.json是管理和查看依赖的文件{ "name": "02", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test"...

2019-09-14 23:44:47 91

原创 React子组件向父组件传递值

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Tittle</title> <script src="../node_modules/react/umd/react.development.js">...

2019-09-08 16:58:33 267

原创 SpringBoot 加载外部文件 报错jdk.internal.org.xml.sax.SAXParseException:

问题package com.tangbaobao.springboot.sbtest;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.context...

2019-09-07 00:35:22 4201 1

原创 SpringBoot之配置文件加载

背景在spring中我们可能需要加载一些配置,比如配置文件:jdbc,redis等等,需要将配置文件的值注入到属性类中。我们用获取数据库配置信息的例子来引入jdbc.url="jdbc:mysql://localhost:3306/test"jdbc.username=rootjdbc.password=tangbaobaojdbc.driver=com.mysql.jdbc.cj.D...

2019-09-05 14:02:56 221

原创 java effective

服务提供者框架:服务接口提供注册API服务访问API(提供给客户端)服务提供者接口,如果没有可以通过反射获取

2019-08-28 00:27:07 96

原创 离散数学中基本定律

基本定律1. 交换律:   A ∪ B = B∪A, A ∩ B = B ∩ A2. 结合律:  (A ∪ B) ∪ C = A ∪ (B∪C) = A ∪ B∪C (A ∩ B) ∩ C = A ∩ (B ∩ C) = A ∩ B ∩ C3. 分配律: (A ∩ B) ∪C = (A∪C) ∩ (B∪C) ...

2019-08-22 22:48:26 15298

原创 Git修改提交的Message信息

问题我们在提交git的时候,在每次提交之后都会追加当前提交的一些信息 比如:git commit -m"这是我第一次提交git"在提交了本次修改之后,因为提交格式不对,你又想修改你上一次提交的git message信息,怎么办呢?解决修改最近一次提交的message修改上一次提交的message信息,我们可以使用以下命令:git commit --amend然后会用vim或者vi...

2019-08-18 18:58:18 5153 1

原创 ECMAScript-字符串

1.ES6遍历字符串接口1.ES6为字符串新添加了遍历接口for (let s of 'hello') { console.log(s)}2.字符串模板我们在之前要在js字符串中拼接一个变量,可能会用字符串的拼接,类似下边这种写法:$('#result').append( 'There are <b>' + basket.count + '</b>...

2019-08-17 19:11:55 255

原创 IDEA或者GoLand控制台显示太多

问题在某些场景下,我们可能会遇到控制台显示完整的环境变量,应该被折叠起来的。解决办法快捷键输入: Ctrl-Shift-A(win) Cmd-Shift-A (mac) 然后输入 ”Registry“打开一个窗口,找到run.process.with.pty这个属性,然后取消勾选,就可以啦。...

2019-07-31 21:03:18 7433 16

原创 java8 分享

分享主题:引导方式:为什么要做这个分享?1. 想把我学到的知识分享给大家,自身可以得到提升。2. 我们实际的编码或者业务中真的会用到听众能从分享中获得什么?1. 了解java8之后新的语言特性2. 怎么去学习这些新特性3. 新特性对我们业务或者编码的好处目录java发展历史java作为一门相对成熟的语言,我们可能没有了解它的每个成长阶段,但是现在我们在使用很多看似它本就应该有...

2019-07-12 20:21:03 1421

原创 2019/07/04

今天是2019/07/04,是个特殊的日子,今天是在人生中正式上班的第一天,非常紧张,北漂的日子正式开始啦,加油。。。。

2019-07-04 09:37:48 162

原创 java8合并两个Map

合并两个Map需求:如果两个Map有冲突则Value取第二个Map中的Value例子准备实体类import lombok.*;@Getter@Setter@ToString@AllArgsConstructor@NoArgsConstructorpublic class Employee { private Long id; private String nam...

2019-06-10 20:54:59 20523 3

原创 省市地图查询

后端API1.获取地区类别请求地址:api/category/district请求参数:无响应参数:{ "code":0, "msg“:"success", "data":{ "districtCode":1, "districtName":"Country" }}2.获取全部省份请求地址:api/provinces请求参数:无响应参数:{ "code":...

2019-05-31 14:56:47 171

原创 MyBatis不用@Param传递多个参数

背景假设我们要保存一个小狗的信息到数据库中通常的做法我们在使用mybatis 接口和xml对应的时候,常常是这样写的:接口public interface DogDao { void save(@Param("dogName") String dogName, @Param("age")int age);}xml <insert id="save">...

2019-05-17 21:07:45 7710 2

原创 正则表达式全集

正则表达式手册表达式全集 字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。例如,“n”匹配字符“n”。“\n”匹配一个换行符。串行“\\”匹配“\”而“\(”则匹配“(”。 ^ 匹配输入字符串的开始位置...

2019-05-12 10:38:15 129

原创 BeanUtils拷贝忽略空值

动机:BeanUtils是将一个对象拷贝到另外一个对象上去,但是如果source对象中如果有null值,会将原对象中有值的属性覆盖,这不是我们所希望的,我们只想拷贝非null的属性,所以写了以下工具类,注意:以下工具类没有实现深拷贝,只是浅拷贝能去除nullpackage com.tangyaya8.mmall.utils;import com.google.common.collect....

2019-05-10 19:30:33 5111

原创 jackson序列化出错:com.fasterxml.jackson.databind.exc.InvalidDefinitionException

使用springboot框架,然后给前端返回json数据的时候出现了上述错误,,查阅资料发现了问题:在要被序列化的实体类上加上注解:@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler"})//会导致jackson序列化出错...

2019-05-09 16:49:18 3149

MyBatis3DTD约束

在官网上提取的dtd,需要的同学可以下载,为什么要够50个字节

2018-01-14

Druid与Dbutils整合包

截至上传日期,Druid与Dbutils的最新的jar包,还有JDBC-mysql数据库驱动

2017-12-06

全国最全省市地区地图信息加经纬度

已经封装成sql语句了,可以直接执行导入到数据库,有经纬度,各个省以及县市的详细信息,一共几万条..

2017-12-04

apache_hbase_reference_guide.pdf

Hbase官方文档,最新的,英文的.挺好用的,欢迎大家使用.

2017-11-12

json转换工具Gnos包

Gson 是google解析Json的一个开源框架,用于Java中字符串和json串的转换工具

2017-10-16

jQuery3.2.1.min.js

最新的JavaScrip库,jQuery,实用,方便,欢迎大家下载....

2017-10-16

c3p0 jar包,数据库连接工具

C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目有Hibernate,Spring等。

2017-10-16

空空如也

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

TA关注的人

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