自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Java泛型浅究(一)

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

2020-06-21 00:35:36 99

原创 GraphQL(八)自定义Scalar

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

2020-04-05 18:03:16 243 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 105

原创 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 114

原创 GraphQL(五)接口类型

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

2020-04-03 18:00:21 250

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

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

2020-04-02 12:06:50 116

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

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

2020-04-02 00:00:06 51

原创 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 141 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 50

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

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

2020-03-07 00:43:32 30

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

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 210

原创 HTML生成器 For Java

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

2019-11-11 19:33:09 92

原创 SpringBoot使用切面

待定

2019-11-05 10:05:10 60

原创 @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 1419

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

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

2019-09-22 23:45:41 78

原创 InnoDB存储原理简介

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

2019-09-18 10:20:06 64

原创 webpack(一)

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

2019-09-14 23:44:47 36

原创 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 119

原创 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 904

原创 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 91

原创 java effective

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

2019-08-28 00:27:07 43

原创 离散数学中基本定律

基本定律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 791

原创 Git修改提交的Message信息

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

2019-08-18 18:58:18 2539 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 77

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

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

2019-07-31 21:03:18 2533 5

原创 java8 分享

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

2019-07-12 20:21:03 1137

原创 2019/07/04

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

2019-07-04 09:37:48 95

原创 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 5034

原创 省市地图查询

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

2019-05-31 14:56:47 53

原创 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 2455 2

原创 正则表达式全集

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

2019-05-12 10:38:15 32

原创 BeanUtils拷贝忽略空值

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

2019-05-10 19:30:33 2673

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

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

2019-05-09 16:49:18 708

转载 byte[] 转换成String,再getBytes()之后byte[]内容与原数组不同

在做cookie序列化时候,发现原数组和转成string之后再转成byte数组:在网上搜了一个博客解决问题,记录下:https://blog.csdn.net/qq_27760433/article/details/78327328...

2019-05-09 16:42:25 875

原创 golang信号处理相关说明

golang信号处理对应的说明:信号类型信号值动作说明SIGHUP1Term终端控制进程结束(终端连接断开)SIGINT2Term用户发送INTR字符(Ctrl+C)触发SIGQUIT3Core用户发送QUIT字符(Ctrl+/)触发SIGILL4Core非法指令(程序错误、试图执行数据段、栈溢出等)SIGABRT6...

2019-04-26 21:20:09 63

原创 设计模式之适配器模式

场景:先来介绍一张图,关于欧洲和和亚洲的电源接口:假定:有个中国人去欧洲旅行,他带的是两个插头的标准手机充电插头,但是欧洲没有这样的插座,他又两种选择第一种选择:买一个适配欧洲插座的插头欧洲插头接口标准:package com.tangbaobao.design.pattern.struct.adapter.example2;/** * @author tangxuejun...

2019-04-25 13:47:13 71

原创 LeetCode题目go语言版(持续更新中)

说明:都是以题目代号为标题,点击题目编号即可进入LeetCode对应题目·125package mainimport ( "fmt" "regexp" "strings")func main() { s := "race a car" isPalindrome(s) fmt.Println(isPalindrome(s))}//输入: "A man, a plan, ...

2019-04-25 09:18:47 507

原创 设计模式之装饰者模式

场景:有家买煎饼的小店,煎饼可以附加几种其他的佐料,比如香肠,鸡蛋,等等,我们假定这家小店现在只有两种附加的佐料煎饼有两个属性:价格描述(煎饼套餐名称,价格)用普通的继承来实现各种煎饼基础的煎饼package com.tangbaobao.design.pattern.struct.decorate.v1;/** * @author tangxuejun * @v...

2019-04-24 11:07:26 53

原创 设计模式之门面模式

外观模式(门面模式):定义:提供了一个统一的接口,用来访问子系统中的一群接口:外观模式定义了一个高层接口,让子系统更容易使用类型:结构性使用场景:子系统越来越复杂,增加外观模式提供简单调用接口构建多层系统结构,利用外观对象作为每层的入口,简化层之间的调用优点:简化调用过程,无须深入了解子系统,防止带来风险减少系统依赖,松散耦合更好的划分此层符合迪米特法则,即最少知道系...

2019-04-22 09:00:43 156

原创 golang all goroutines are asleep - deadlock

问题:今天在写golang程序的时候,出现了一个错误:all goroutines are asleep - deadlock!代码如下:package mainimport ( "fmt" "time")func main() { in := make(chan string) in <- "hello" result := <-in fmt.Printl...

2019-04-19 21:56:34 99

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