LitongZero的博客

哪怕命运即为必然,也要拼命相抗
私信 关注
LitongZero
码龄3年

哪怕命运即为必然,也要拼命相抗

  • 336,751
    被访问量
  • 118
    原创文章
  • 18,871
    作者排名
  • 147
    粉丝数量
  • 于 2018-07-13 加入CSDN
获得成就
  • 获得300次点赞
  • 内容获得239次评论
  • 获得460次收藏
荣誉勋章
兴趣领域
  • #前端
    #前端框架#Vue.js#Node.js
  • #后端
    #Linux#Redis#架构#Spring Boot#分布式#MySQL#Java#Spring
TA的专栏
  • 工具
    36篇
  • 后端
    3篇
  • SpringBoot
    18篇
  • J2EE
    27篇
  • Go
    9篇
  • 初学Node
    20篇
  • SQL
    8篇
  • 前端
  • 小程序
    1篇
  • Vue.js
    15篇
  • React
    1篇
  • JavaScript
    17篇
  • Vue-admin-template
    5篇
  • HTML
    1篇
  • 大数据
    2篇
  • HBase
    1篇
  • 程序人生
    3篇
  • 目录
    1篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

C4 model技术架构图--context图

C4 model技术架构图–context图在设计系统架构图时,包括常见的技术架构图和业务架构图。技术架构图架构图不止在前期设计系统时重要,在后期开发或者维护的时作为指导也同样重要。一.关于C4 model官方网址属于技术架构图的一种格式,C4 分别表示上下文(Context)、容器(Container)、组件(Component)和代码(Code)。四个层次,分别对应不同的角度。C4 model 架构图的系统拆分,其实与微服务拆分和DDD领域拆分的思想非常像。拆分的合理,才能保证系统的开发
原创
31阅读
1评论
0点赞
发布博客于 16 天前

HBase入门

HBase安装单机环境Centos7Hbase安装JDKyum install java-1.8.0-openjdk* -y下载HBASEhttp://mirror.bit.edu.cn/apache/hbase/2.2.6/解压到Linuxtar -xf hbase-1.2.8-bin.tar.gzcd hbase-2.2.6修改JAVA_HOME配置文件vim conf/hbase-env.sh// 注意这个是在CentOS上的java位置export JAVA_H
原创
123阅读
1评论
2点赞
发布博客于 1 月前

blob临时路径 转File对象

blob临时路径 转File对象最近在使用Taro-UI时,发现一个问题。问题表象在上传图片时,Taro-UI只提供了一个图片选择器,可以返回这个图片的临时路径,类似如下:{ "url":"blob:http://10.1.10.122:10086/4ebc5d64-bd9a-4994-8212-addf476ba2c2", "file": { "path":"blob:http://10.1.10.122:10086/4ebc5d64-bd9a-4994-8212-a
原创
246阅读
0评论
3点赞
发布博客于 2 月前

Go 并发执行

Go 并发执行需要并发执行的场景有很多:爬虫、拉取数据、更新数据…Go作为天生高并发的语言,在使用并发时是比较方便的。Demo案例package mainimport ( "fmt")func main() { ConcurrentWork(5, func() { // ...业务逻辑 fmt.Println("123123123123") })}/** * @Description: 开启多线程执行 * @param total 启动线程数 * @param
原创
242阅读
6评论
3点赞
发布博客于 2 月前

Go 错误码初始化

Go 错误码初始化错误码是程序中,经常需要用到的,一般在Map中定义…key为code,value为msg1.Map初始化由于这个Map只需要初始化一次,所以,可以使用Go基础包中的sync.Once。来保证,Init只运行一次,极大的减少了程序的运行开销。2.代码此处以单元测试的形式体现。Go语言的单元测试,可以看我的另一篇博文。import ( "fmt" "sync" "testing")var once sync.Oncevar mapErrMsg map[int
原创
145阅读
0评论
2点赞
发布博客于 2 月前

Go 单元测试

Go 单元测试单元测试是开发中非常重要的环节之一。在开发完成后、迭代改动后、代码改动后、添加功能后…快速的帮助开发人员完成代码的测试。一.目标不区分语言,一个函数、一个方法、一句SQL、一段业务代码,都可以成为单元测试的目标。单元测试是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。我们知道,在开发时越早发现BUG,就能节省更多的时间,降低更多的风险。二.目的单元测试一般由输入数据和预期输出组成。输入数据:Request,输入的请求参数。预期输出:Resp
原创
49阅读
1评论
1点赞
发布博客于 3 月前

Go-micro异常捕获

Go-micro异常捕获在go-micro服务层,添加异常捕获机制,并发送报警。本文提供的只是一种捕获异常的思路:通过添加Handler实现。1.注入拦截器初始化时,添加异常捕获Handler。部分代码...//初始化服务config.Service = grpc.NewService( micro.Name("MyService"), micro.Address(...), // 添加异常拦截 micro.WrapHandler(utils.WxErrorHandler()),
原创
78阅读
0评论
1点赞
发布博客于 3 月前

Gorm 只更新某一字段

Gorm 只更新某一字段背景在开发中,可能会遇到,需要更新这一条数据的某一字段,但是并不想修改其的UpdatedAt字段。如:数据浏览量。正常更新...err = d.db.Model(&repository.UserInfo{}).Where("id = ?", id).Update(repository.UserInfo{ ViewsCount: viewsCount+1, }).Error...只更新某一字段(UpdatedAt字段不会更新)...err =
原创
215阅读
0评论
1点赞
发布博客于 3 月前

gRPC+ProtoBuf

gRPC+ProtoBuf-微服务传输协议微服务中,常见的传输协议有HTTP+Json、gRPC+ProtoBuf。同HTTP+Json一样,gRPC+ProtoBuf同样适用于跨语言传输。前提是,使用相同的协议原文件(.proto)生成各自的协议文件(.pb.go\.pb.cc\.java)协议格式user.proto// proto 协议版本syntax = "proto3";package user;// 包路径option go_package = "common/proto
原创
76阅读
1评论
1点赞
发布博客于 3 月前

Gin增删改查demo

Gin增删改查demo一个Gin框架的联手demo、包括增删改查等等。1.使用技术GinGormMysql…2.项目结构目录│ postman_collection.json // postman配置文件│ db.sql // 数据库表结构│ config.yaml // 配置文件│ go.mod // 包依赖配置│ main.go // 程序入口├─api│ └─v1 // api 方法│ sys_user.
原创
894阅读
4评论
2点赞
发布博客于 4 月前

assignment mismatch: 2 variables but uuid.NewV4 returns 1 values

assignment mismatch: 2 variables but uuid.NewV4 returns 1 values在使用github.com/satori/go.uuid包生成uuid时,突然发现一个很奇怪的问题。如下图示。编译器和启动时,报错冲突。启动时,报错。报错提示uuid.NewV4()函数,只有一个返回值。点进函数内部去发现确实是两个参数。只接受一个参数发现只接受一个参数,可以启动,但是编译器又报错。最终解决。在该项目的github->issues
原创
422阅读
0评论
1点赞
发布博客于 4 月前

SpringBoot undertow accesslog格式

关于SpringBoot undertow中accesslog的格式1.背景1.收集accesslog日志。2.项目使用SpringBoot的undertow。3.日志格式有特殊要求。2.问题原因关于寻找日志格式的路上,花费了不少时间,其中,在各种博客上、SpringBoot官网上和Apache Access Logging标准。都没有找到undertow配置的相关答案。大部分博客都是把官网的说明直接翻译了一下。而容器undertow和tomcat的配置是有一定的差别的。照搬Tomcat的日
原创
290阅读
0评论
1点赞
发布博客于 5 月前

Go Http 使用案例

net/http包使用案例。GET、POST请求示例。get请求import ( "bytes" "encoding/json" "fmt" "io/ioutil" "net/http")func get(id string) { client := &http.Client{} // 创建请求 req, _ := http.NewRequest( "GET", "https://csdn.com?id="+id, nil) // 添加请求头 req..
原创
107阅读
0评论
1点赞
发布博客于 6 月前

Redis 实现单位时间内限制频率功能

Redis 实现单位时间内限制频率功能1.使用场景1.重要日志每小时触发次数。2.限制登录次数。3.分布式部署情况下的上述情况…2.代码示例中为限制1小时内15次。/** * 每个人每小时限制触发次数 */private final int LOCK_TIMES = 15;// 自定义KeyString key = "Ltz:" + sid;// 获取已触发次数String sendUser = redisTemplate.opsForValue().get(key);
原创
157阅读
0评论
1点赞
发布博客于 6 月前

SpringBoot MDC

SpringBoot MDC在程序中,日志一直是一个至关重要的部分,排查问题、统计数据…解决问题SpringBoot添加全局自定义日志链路信息。1.过滤器,拦截指定请求,可取出参数、请求头等信息,可根据业务自定义添加进日志进程(MDC)。2.时间拦截器,根据注解进行拦截,向进程日志(MDC)中,注入方法执行时间。3.具体业务,可自行向进程日志(MDC)中注入所需信息。1.MDCFilter请求过滤器,用于向MDC中添加请求头等信息。/** * 拦截请求信息,添加到日志 * *
原创
272阅读
0评论
1点赞
发布博客于 7 月前

Feign透传请求头等

Feign透传请求头等在用Feign进行接口转发时,可能需要直接透传请求头。添加Feign配置@Configurationpublic class FeignServerAuthConfig { @Bean public RequestInterceptor requestInterceptor(){ return new FeignMyRequestInterceptor(); } @Autowired private ObjectFac
原创
345阅读
0评论
0点赞
发布博客于 7 月前

前后端WebSocket使用注意事项

前后端WebSocket使用注意事项1.域名配置微信小程序硬性要求2.Https证书微信小程序硬性要求3.Nginx配置Nginx配置,跟普通接口不太一样。WebSocket需要一些特殊配置。如果是集群,记得配置会话保持或haspip4.后端后端我使用的是Netty-Socket-IO框架配合SpringBoot。后端代码可以看我的这批文章5.小程序端官网文档测试代码wx.connectSocket({// 小程序端,必须使用wss协议,也就是说服务器必须要配置https
原创
318阅读
0评论
1点赞
发布博客于 8 月前

Java代码,给图片添加水印

依赖Hutool工具库,POM引入即可。官网<dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.3.4</version></dependency>加水印代码ImgUtil.pressText(// FileUtil.fi
原创
369阅读
0评论
1点赞
发布博客于 8 月前

ClickHouse修改表字段

ClickHouse修改表字段。Code: 62, e.displayText() = DB::Exception: Syntax error: failed at position 34: '$user_id' String AFTER chart_position. Expected one of: IF NOT EXISTS, compound identifier, identifier, column declaration, list of elements (version 20.4.2.9
原创
5097阅读
0评论
2点赞
发布博客于 9 月前

跨域测试代码

跨域测试跨域是前后端经常会碰到的问题,那么如何快速的定位这个问题呢?可以使用如下代码,进行测试,分别对目标地址,进行普通访问和跨域访问(前端处理跨域)。还可以显示出,响应时间。测试页面代码<html xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name=
原创
386阅读
0评论
1点赞
发布博客于 9 月前

Git 开发规范

Git开发规范日常开发中,我们经常会跟Git打交道,可能服务器不一样,但是命令和规范基本都是一样的。一.常驻分支常驻分支为一个正常开发上线流程应该会有的分支。1.master/prod/production主分支,又称为生产环境分支,有时可能会使用(prod/production)来代替,生产环境的部署分支,生产环境相关操作,如:打包等应从改分支进行。2.dev全称(Develop),开发分支,我们正常的需求开发等,应该使用该分支。开发环境的部署和打包,使用该分支。3.pre全称(Pr
原创
455阅读
1评论
4点赞
发布博客于 9 月前

加密解密篇

前后端加密解密。前端AES加密,前端RSA加密。后端AES加密,后端RSA加密。非对称加密,对称加密,摘要加密。
原创
231阅读
2评论
3点赞
发布博客于 9 月前

使用Lambda统计List嵌套数据

使用Lambda统计List嵌套数据场景之前碰到过这样一种场景,有如下数据(JSON或List对象){ "dataList": [{ "userInfoList": [{ "id": 1, "idNumber": "1" }, { "id": 2, "idNumber": "2" }] }, { "userInfoList": [{ "i...
原创
895阅读
0评论
0点赞
发布博客于 9 月前

SpringBoot限流拦截器(结合业务)

SpringBoot限流拦截器(结合业务)背景从网络安全和系统稳定性来看,限流是非常有必要的。一些网关,可以帮我们完成限流熔断。但是,在某些场景,当与实际业务相结合时,网关的限流也就不那么方便了。1.目的1.解决业务和限流合并的情况。如,同一个接口,每个用户,在一段时间(10秒)内只能请求几次(4次)。2.并且可以快速的调整这个限制的频率(动态修改)SpringBootRe...
原创
189阅读
0评论
1点赞
发布博客于 10 月前

Could not initialize class sun.awt.Win32FontManager

一.问题表现RuoYi框架,验证码加载不出来二.问题分析1.控制台报错2.查看问题由Could not initialize class sun.awt.Win32FontManager,可以看出,应该是JDK缺少字体导致。三.解决问题打开JDK,font目录C:\work\java\jdk1.8.0_131\jre\lib\fonts,添加字体。 重启项目,解决问题。四.字...
原创
595阅读
0评论
1点赞
发布博客于 1 年前

BigDecimal类型转化为万或亿为结尾

BigDecimal类型 自动转化单位(万\亿)工具类import java.math.BigDecimal;/** * @author litong */public class NumberUtil { private static final String UNIT_STRING_WAN = "万"; private static final String UNIT...
原创
761阅读
2评论
1点赞
发布博客于 1 年前

Java8 Lambda 使用总结

一、演示示例1.遍历List<Integer> integerList = new ArrayList<>();integerList.add(1);integerList.add(2);integerList.add(3);integerList.stream().forEach(integer -> { System.out.println(inte...
原创
459阅读
0评论
2点赞
发布博客于 1 年前

SpringBoot 1.5 JPA MongoDB 设置多数据源

SpringBoot 1.5 JPA MongoDB 设置多数据源
原创
442阅读
0评论
1点赞
发布博客于 1 年前

Ant Design Table Pagination案例

Ant Design Table完整案例包括表格,分页,请求数据,页面变动请求数据等…组件包括 table,pagination1. 代码import React from 'react';import {Table} from 'antd';import {getRecordList} from '../../api/recordApi';export default cla...
原创
2241阅读
0评论
2点赞
发布博客于 1 年前

Swagger-UI 自定义显示返回状态码

Swagger-UI 自定义显示返回状态码注: Swagger-bootstrap-ui 方法同样Swagger,作为一个在线文档,是非常好用的,正确的使用这个,可以使我们少些很多接口文档。1.问题背景:做为接口文档,那必然是要有,全局错误状态码说明的功能。而Swagger在参数,相应,都用相应的注解,同样,在状态码也是有相应的注解的。默认的状态码,只有200,如下:2.单接口...
原创
5127阅读
7评论
2点赞
发布博客于 1 年前

自己实现注解式权限校验(SpringBoot)

权限校验(SpringBoot注解式)权限校验是很多情况都会用到的,结合Java注解和拦截器,直接在Controller层的方法上添加一个注解,可以无侵入式的进行权限校验。一.Java注解1.RequestMapping我们打开一个最常用的Spring注解可以看到,RequestMapping注解上,还有几个注解,分别代表①Target:注解目标(如:可以在方法、类、参数中使用)...
原创
825阅读
0评论
2点赞
发布博客于 2 年前

Netty-SocketIO 集群解决方案

Netty-SocketIO 集群解决方案Netty-SocketIO作为一个Socket框架,使用非常方便,并且使用Netty开发性能也有保证。但是,我在使用Netty-SocketIO框架时,却发现,国内的资料比较少,虽然有些Demo级别的技术分享,但是关于集群解决方案,并没有什么较好的解决方法。所以,博主结合GitHub上的Issues,实现了一种集群的解决方案。一. 解决方案原...
原创
3368阅读
4评论
5点赞
发布博客于 2 年前
B站收藏 6.1w+!GitHub 标星 3.9k+!这门神课拯救了我薄弱的计算机基础
发布Blink于 2 年前
比特币原理详解
发布Blink于 2 年前

Vue+Element-UI 上传图片,打开相机,相册

Vue+Element-UI 上传图片,打开相机,相册Element-UI中提供的Upload组件,是用来上传文件用的,并没有单独的纯用来上传图片的组件,所以,在部分浏览器(手机)中,打开后会发现是文件列表,而不是相机\相册按钮。解决方法例如在如下一个普通的upload组件中,<el-upload class="avatar-uploader" accept="image...
原创
2087阅读
0评论
2点赞
发布博客于 2 年前

Vue+Element-UI 上传图片并压缩

Vue+Element-UI 上传图片并压缩1.版本Vue:2.5.2Element-UI:2.12.0可实现图片上传前,自动压缩。Element-UI组件,详情见 官网。2.template部分<el-form-item label="照片"> <el-upload accept="image/*" class="avatar-uploade...
原创
1944阅读
0评论
1点赞
发布博客于 2 年前

SpringMVC简易项目

Spring+SpringMVC+Mybatis+MySQL 开发环境:Eclipse+Tomcat8.5 SSM简易项目(增删改查),内容为食堂管理系统,不过自己可以随便更换。 简单的SSM整合项目。内含SQL建表语句。
rar
发布资源于 2 年前

RestTemplate 传送多文件、文件数组

RestTemplate 传送多文件背景:使用RestTemplate传送文件,并且有其他字段信息,还有文件数组。解决方法// RestTemplate 初始化 @Autowired private RestTemplate baseRestTemplate; public void test(){ MultiValueMap<String, Object> ...
原创
1431阅读
0评论
3点赞
发布博客于 2 年前

Java 异常 自定义打印内容

Java 异常 自定义打印内容背景:在开发中,我们可能会使用到自定义异常,但是,这个自定义异常在打印日志时,往往打印的内容比较多。1.自定义异常打印内容可以看到,虽然我们使用的是自定义异常,但是当抛出时,还是会打印出堆栈的全部信息。2.查看源码通过查看源码,我们可以得知,当抛出异常时,程序会调用此异常的fillInStackTrace方法,但是,大部分异常都没有对该方法做处理。基本...
原创
953阅读
0评论
1点赞
发布博客于 2 年前

SpringBoot 部署在Tomcat上,上传文件问题

SpringBoot 部署在Tomcat上,上传文件问题解决方法@Beanpublic CommonsMultipartResolver commonsMultipartResolver(){ CommonsMultipartResolver commonsMultipartResolver = new CommonsMultipartResolver(); commonsMul...
原创
434阅读
0评论
2点赞
发布博客于 2 年前

Java后端生成二维码,Base64后,前端直接使用

后端生成二维码,Base64后,前端直接使用开放中,可能会遇到生成二维码的时候,这个时候,可以前端生成,也可以后端生成。这时候,就可以看,把压力放在哪比较好。当二维码信息比较小,或者前端迭代比较困难的时候(APP发布),就可以选择后端生成二维码。二维码这种图片,一般比较小,可直接生成,要是再放到文件服务器,未免有些多余,不如直接返回给前端。但是,如果返回文件流的话,前后端都不太好操作...
原创
1458阅读
3评论
1点赞
发布博客于 2 年前

SpringBoot 接受文件和对象

SpringBoot 接受文件和对象使用场景:某个接口,需要同时接受文件和实体,也就是参数一、这个时候,前端就不能json格式传送数据了,要用到multipart/form-data;这种格式传送数据。二、那么,这个时候,后端应该怎样接受这个参数和文件呢?1.接受HttpServletRequest,自己处理request(不推荐)@PostMapping(value = "/upl...
原创
2098阅读
1评论
3点赞
发布博客于 2 年前

IDEA-restClient,自带的Http测试工具

IDEA-restClient,自带的Http测试工具作为一个程序员,不管是前端、后端、还是测试,都要经常面对接口。后端开发接口,前端对接接口,测试测试接口。目前,我们最常用的接口测试工具,基本是Postman。然而,我这篇文章,不是说Postman的,而是restClient 。最为一个JetBrains公司爱好者,在使用IDEA时,尽量想减少对其他软件的依赖。比如IDEA很多自带...
原创
9598阅读
6评论
3点赞
发布博客于 2 年前

Java 中 JSON 去除指定字段(对象中,数组中,List中)

Java 中 JSON 去除指定字段(对象中,数组中,List中)
原创
4511阅读
0评论
2点赞
发布博客于 2 年前

Java 中 Switch 结合 枚举使用

Java 中 Switch 结合 枚举使用Switch和if是Java中常用的判断工具,而当出现大量的if-else时,我们不妨使用Switch和枚举来进行“优化”举个例子后端开发时,经常会碰到状态码判断的问题。如果我们用if来判断的话。可能会变成如下:if(code == 1){}else if(code == 2){}else if(code == 3){}但是如果使用S...
原创
895阅读
0评论
1点赞
发布博客于 2 年前

RestTemplate 使用案例

RestTemplate 使用案例当我们使用SpringBoot
原创
175阅读
0评论
1点赞
发布博客于 2 年前

jdk-linux-x64.zip

64位Linux下的JDK,先解压一次。 由于骨文公司的官网,现在下载比较麻烦,所以上传jdk-8u181-linux-x64.tar.gz
zip
发布资源于 2 年前

模仿某丰的 快递单号输入

模仿某丰的 快递单号输入主要实现功能:1、输入后,按回车进行分割。2、点击x后,删除当前选中。
原创
638阅读
0评论
2点赞
发布博客于 2 年前

自己实现md5 加密算法

md5 加密算法1、背景在很多比较重要的环境,我们的前端在传输密码时,不能以明文的形式传递,所以需要用一些加密算法进行加密,进而传输,且前后端的加密方式相同。2、前端方法function md5(string) { function md5_RotateLeft(lValue, iShiftBits) { return (lValue << iShi...
原创
290阅读
0评论
1点赞
发布博客于 2 年前

一个FastDFS整合Java的坑

一个FastDFS整合Java的坑背景本篇博客的主要目的,就是记录一个有关FastDFS整合Spring(Java)时的坑事发环境1、FastDFS 5.08安装成功,服务器端测试没问题测试命令 fdfs_test /etc/fdfs/client.conf upload /usr/local/tools/a.jpg 结果2、FastDFS整合Nginx完毕Ngin...
原创
677阅读
0评论
1点赞
发布博客于 2 年前

el-date-picker 设置、读取值

el-date-picker 设置默认值记一个DateTimePicker 日期时间选择器的坑今天遇到一个问题。用日期时间选择器选择后,在编辑页面回显的问题。一、我们在取数据时在一般的输入框,我们都可以使用v-model中的值,直接赋值。可是这个时间选择器却不太一样,因为,他对应两个值,一个开始时间,一个结束时间,以数字的形式存在v-model中。取数据时,常常要这样二、在...
原创
21412阅读
11评论
19点赞
发布博客于 2 年前

SpringBoot2.0 整合 Redis

SpringBoot2.0 整合 Redis文章目录SpringBoot2.0 整合 Redis1.背景本文就不说Redis的好处了。2.环境①`SpringBoot`:2.1.0.RELEASE3.引入依赖版本就不用加了,直接继承使用SpringBoot父工程的版本号4.新建`配置类``RedisConfig.java`5.新建RedisService`RedisService.java`6....
原创
785阅读
3评论
2点赞
发布博客于 2 年前

SpringBoot2.0 跨域处理

SpringBoot2.0 跨域处理1.原因在前后端项目分离时,最先遇到的问题也许就是跨域。其他原因,不再赘述。2.环境①.spring-boot:2.1.0.RELEASE3.解决跨域的两种方式(本质一样)一、Application.java直接配置Bean@SpringBootApplicationpublic class Application { public st...
原创
1547阅读
1评论
1点赞
发布博客于 2 年前

使用Gitee Pages服务 搭建Vue项目

使用Gitee Pages服务 搭建Vue项目1.背景1.Gitee(GitHub) Pages 服务作为一个页面容器,可以说是非常方便了。我们可以在上面免费部署前端项目。2.并且同时获得一个附带.gitee.io(github.io)的网址。3.其他优点就不再赘述,可自行百度。2.Gitee Pages的介绍具体可以看这个网址Gitee Pages官方介绍3.上传自己的项目到G...
原创
4542阅读
8评论
6点赞
发布博客于 2 年前

Java 获取 副本文件名称

Java 获取 副本文件名称使用场景1.创建一个文件的副本,取文件名的问题。2.创建一个对象副本,但是名称不能重复,要加上某种特定字符(如:-副本1)编写工具类/*** 获取 副本文件名称* @param name 原文件名称* @return 新文件名称*/public static String getCopyNewName(String name) {// 自定义名...
原创
364阅读
0评论
1点赞
发布博客于 2 年前

SpringBoot2.0 添加Token、Redis

SpringBoot2.0 添加Token、Redis背景1.由于前后端分离式开发,以及安全性等等问题,使用Token来进行回话的认证,已经成为了一个非常常用的操作其他的优点啥的,我就不再赘述,本文主要考虑实现。1.开发环境①. SpringBoot 2.1.0②. jdk 1.8③. IDEA④. …2.引入jjwt依赖pom.xml&amp;amp;amp;lt;dependency&amp;amp;amp;gt;...
原创
2357阅读
7评论
4点赞
发布博客于 2 年前

Vue-admin-template 添加、跳转子页面

Vue-admin-template 添加、跳转子页面文章目录Vue-admin-template 添加、跳转子页面1.使用场景一级页面为列表,列表中,每个item中,有按钮,点击按钮,跳转到新页面中,并且显示刚刚选中的item的所有信息(增、改)。2.开发环境3.配置路由重点为`/:id(\\d+)`,标识地址后面跟一个id。4.设置跳转两种方法:1.编程式跳转调用声明2.声明式跳转直接调用5...
原创
6880阅读
7评论
3点赞
发布博客于 2 年前

Vue-admin-template 添加国际化

Vue-admin-template 添加国际化1.背景在全球发展的趋势下,国际化,成为各种软件不可或缺的一部分…使用Vue-admin-template作为基本框架(基于Element-UI),添加国际化插件i18n2.开发环境Vue-admin-template(其他应该也可以使用)element-ui: “2.4.6”vue: “2.5.17”vue-i18n: “^8...
原创
3811阅读
1评论
5点赞
发布博客于 2 年前

ESLint Attribute 'pageNumber' must be hyphenated.

ESLint Attribute ‘pageNumber’ must be hyphenated. (vue/attribute-hyphenation)问题产生条件传参时,使用驼峰命名法,导致ESLint检测出语法问题,截图如下WebStore下运行时解决方法将pageNumber 改为page-number...
原创
8929阅读
0评论
2点赞
发布博客于 2 年前

Vue-admin-template 报Uncaught (in promise) error

Vue-admin-template 报Uncaught (in promise) error问题描述在使用Vue-admin-template时,配置好后端,在请求时,突然报错而且后端接到请求了,并且返回数据了。解决问题找了半天,发现问题在request.js中。可以发现,是因为状态码不匹配,所以,直接被抛出异常了!将状态码2000改成自己的成功状态码就OK了。注:由于Vu...
原创
15252阅读
7评论
16点赞
发布博客于 2 年前

Vue Mock

Vue Mock 的一个坑背景我在使用Vue-admin-template时遇到一个问题,类似于浏览器,或者跨域问题,先上个截图。解决过程1、发现问题后,当然是先百度(Google)了。2、发现大部分都是说浏览器的配置问题,我试了很多,发现还是不行。3、就在绝望之际,发现,他们的问题截图跟我的不太一样。我发现,我的问题,是由mock.js抛出来的。4、然后,大致了解了一下Moc...
原创
459阅读
1评论
1点赞
发布博客于 2 年前

jQuery Validate 检验重置

jQuery Validate 检验重置使用场景打开表单悬浮窗,进行错误输入(触发remote验证),关闭表单,再次打开表单悬浮窗,直接提交,此时remote方法不会执行,导致验证失败。解决方法在关闭表单悬浮窗时,重置Validate验证实例//注意变量声明写在外面var = myEditValidate;myEditValidate = $("#myForm form")....
原创
3090阅读
0评论
1点赞
发布博客于 2 年前

jQuery Validate remote多参数

jQuery Validate remote多参数 校验使用场景jQuery Validate remote验证时,需要传入多个字段。解决方法实例$("#myForm form").validate({ onkeyup: false, focusCleanup: false, rules: { username:...
原创
992阅读
0评论
2点赞
发布博客于 2 年前

Controller校验文件类型(格式)

Controller校验文件类型(格式)应用场景1、后端接口需要检验文件类型。2、增加接口健壮性。解决方法在Controller层添加校验/** * 上传文件 * @param file * @return */@ApiOperation( value = "上传文件", notes = "file")@RequestMapping(value ="/upload/fi...
原创
678阅读
0评论
1点赞
发布博客于 2 年前

ECharts 折线图 数据倒序

ECharts 折线图 数据倒序1、应用场景1.后端返回数据,且对数据不好倒序时(比如时间反序)。2.根据页面的按钮,变换X或Y的坐标轴数据。2、解决方法在option中添加 inverse:trueoption = { xAxis: { type: 'category', data: ['Mon', 'Tue', 'Wed', 'Thu',...
原创
5476阅读
0评论
4点赞
发布博客于 2 年前

后端参数校验工具类

后端参数校验工具类1、应用场景1、Controller层判断传入参数是否符合规则,不符合规则直接返回错误状态码。2、其他需要校验参数的地方。2、工具类public class CheckUtil { /** * 中文,字母,数字 _ - . 30位 */ static String regexFNDT = "^[a-zA-Z0-9\\u4e00-\\u9...
原创
1029阅读
0评论
0点赞
发布博客于 2 年前

Mybatis 返回List嵌套

Mybatis 返回List嵌套应用场景:例如:1.返回班级列表,每个班级中又包含学生列表。2.查询多层嵌套下拉框1、实体类public class Student { private int studentId; private String name; private String sex; private String number;}p...
原创
4215阅读
1评论
3点赞
发布博客于 2 年前

Win10 C盘 系统和保留 占用空间 非常大

Win10 C盘 系统和保留 占用空间 非常大今天在写代码的时候,突然发现Redis起不来了,一看原因,是因为C盘空间不足。然后,我看了下C盘,发现。。。一个叫系统和保留的东西,居然占了110G的空间。难怪Redis起不来。然后,在网上找了各种方法,但是,网上大部分都是说,这个系统和保留是以前的老系统啊,或者系统升级文件残留,可是,我找了半天也没看到。用360扫描硬盘,也不能发现大文件究...
原创
36178阅读
11评论
7点赞
发布博客于 2 年前

IDEA 安装插件后打不开

IDEA 安装插件后打不开今天在安装一个IDEA插件(一个美化界面的)的时候,由于IDEA版本低,最新版无法安装,只能找一个低版本的。结果,安装成功后,重启IDEA。发现,IDEA打不开了,而且一直爆闪。从网上找了很多方法,卸载插件都是在IDEA中选择File-&amp;gt;Settings…,然后现在我都打不开IDEA。最后发现,在用户目录中例如 C:\Users\Administrato...
原创
5178阅读
0评论
2点赞
发布博客于 3 年前

JavaScript 16进制与字符串之间的转化

JavaScript 16进制与字符串之间的转化今天在项目中遇到一个需求,比如:现在前端界面有两个字段,当输入第一个字段(16进制)后,第二个字段为第一个字段值+8。例如:a = 7d2那么:b = 7da本来是一个很简单的需求,但是网上却写的很。。难以使用。后来终于找到一种比较简单的方法。项目使用的是Vue框架,不过,这也没什么关系,毕竟就是一个监听事件的问题。在input框添加...
原创
1852阅读
0评论
1点赞
发布博客于 3 年前

Redis 设置密码并开启自启 Windows

Redis 设置密码并开启自启 Windows1、打开Redis的安装目录,或者解压目录。找到图中两个文件,打开。2、搜索# requirepass foobared快速定位。(两个文件同样改法)如图,将密码改成自己想改的密码。记得中间要有空格3、将Redis加入Windows服务在redis的目录下执行如下命令(执行后就作为windows服务了)redis-server --se...
原创
212阅读
0评论
2点赞
发布博客于 3 年前

JS、JQuery选择器 选择内容前后带空格

JS、JQuery选择器 选择内容前后带空格文章目录JS、JQuery选择器 选择内容前后带空格问题产生背景今天碰到了一个`不合理`的需求(不服来辩。。)要求保存的编码(一个字段,类似于班级)前后可以有空格。。。需求嘛,来了就只能做咯。产生问题在修改的时候,突然碰到一个问题。在这个字段作为下拉框时,设置默认值的时候,因为`option`中的`value`前后带有`空格`字符,所以在用选择器,选择...
原创
515阅读
0评论
1点赞
发布博客于 3 年前

SpringBoot 使用Swagger2

SpringBoot 使用Swagger2Swagger2是一个非常好用的接口测试插件。类似于POSTMAN,但是Swagger2是集成在项目中的,在开发接口时,很方便对接口进行测试。1、引入Maven依赖&amp;amp;lt;dependency&amp;amp;gt; &amp;amp;lt;groupId&amp;amp;gt;io.springfox&amp;amp;lt;/groupId&amp;amp;gt;
原创
288阅读
0评论
1点赞
发布博客于 3 年前

SpringBoot 添加单元测试

SpringBoot 添加单元测试1、添加Maven依赖&amp;amp;lt;dependency&amp;amp;gt; &amp;amp;lt;groupId&amp;amp;gt;org.springframework&amp;amp;lt;/groupId&amp;amp;gt; &amp;amp;lt;artifactId&amp;amp;gt;spring-test&amp;
原创
1439阅读
0评论
1点赞
发布博客于 3 年前

Mybatis实现 动态排序

Mybatis实现 动态排序在数据展示时,很有可能碰到,需要动态排序的需求。当数据比较少的时候,还可以前端排序,但是,当数据非常大,尤其是涉及到分页的时候,就必须要用后端解决了。以下,提供一种后端动态排序解决方案。比如,现在我要查询用户信息(User)表。可以在查询时,接口中,多添加两个字段。orderField(排序列)orderType(排序规则,升降序)之后,在mapper...
原创
11024阅读
0评论
2点赞
发布博客于 3 年前

Mybatis 动态排序 #{} ${}问题

Mybatis 动态排序 #{} ${}问题在写Mybatis动态排序是遇到一个问题,开始,我是这样写的&lt;if test="orderField !=null and orderField != '' "&gt; order by t.#{orderField} #{orderType}&lt;/if&gt;发现报错,后来经过查阅资料发现,用#{}会多个' '导致SQL语...
原创
2765阅读
0评论
1点赞
发布博客于 3 年前

MySQL字典表

MySQL 字典表(查询结果替换)在开发中,我们可能会遇到一个问题,就是,在数据库中存1、0但是查询出来必须是男、女(或特定字符)。我们可以在数据库中专门创建一个table(可以命名为 sys_dic),结构如下iddic_codedic_namecode_indexindex_name_cnindex_name_encreate_time1sex性别0...
原创
8488阅读
0评论
8点赞
发布博客于 3 年前

MySQL 查询结果替换

MySQL 查询结果替换在开发中,我们可能会遇到一个问题,就是,在数据库中存1、0但是查询出来必须是男、女(或特定字符)。通常,有两种方法(后台)。1. 比较常用的字典表方法在数据库中专门创建一个table,结构如下iddic_codedic_namecode_indexindex_name_cn1sex性别0女2sex性别1男然后再...
原创
7136阅读
0评论
2点赞
发布博客于 3 年前

Mybatis list 添加 一个list元素中的条件

今天在写项目的时候,遇到一个问题,关于mybatis的问题。在select的时候,如果传入的参数是一个list,这时,我们需要用到WHEREt.id in (&lt;foreach collection="list" index="index" item="item" separator="," &gt; #{item.id}&lt;/foreach&gt;class St
原创
1374阅读
0评论
1点赞
发布博客于 3 年前

mysql is not null 和 != null的区别

今天在项目中遇到一个问题,后来发现是因为SQL语句的问题,导致查询结果有很大问题。is not null!= null其中null不能用 !=,=,&lt;&gt; 来判断 虽然不会报错,但数据不正确。因为SQL默认情况下对!= Null的判断会永远返回false。应该用,is not null 或 is null 。...
原创
1733阅读
1评论
1点赞
发布博客于 3 年前

IDEA 使用补丁 patch

在开发中,我们可能会遇到一个问题,比如:我们在写一个项目的时候,会根据不同的需求,进行不同方向的开发。但是,当客户变为两家甚至更多的时候,我们往往要根据客户的需求,做一些定制化功能,这个时候就需要拉一个分支出来。久而久之,我们就会拉很多分支(我现在写的项目,6个分支),这时,在一个老的Bug,或者新的改进来的时候,我们不得不,在“改Bug--&gt;切分支--&gt;改Bug。。。循环”。这就...
原创
2698阅读
0评论
3点赞
发布博客于 3 年前

使用navicat 连接 mysql 8.0.11 报 "2059 - authentication plugin 'caching_sha2_password'

使用 Navicat12连接 MySQL8.0,报错;使用navicat 连接 mysql 8.0.11 报  "2059 - authentication plugin 'caching_sha2_password'  解决方法:alter user 'root'@'localhost' identified with mysql_native_password by '131...
原创
385阅读
0评论
1点赞
发布博客于 3 年前

Alibaba 代码规约插件使用 IDEA

1、安装离线安装插件下载地址http://plugins.jetbrains.com/plugin/10046-alibaba-java-coding-guidelines 安装方法:可以参考(离线安装、在线安装)https://blog.csdn.net/LitongZero/article/details/81566750 2、使用找到需要扫描的包,或文件(可扫...
原创
497阅读
0评论
2点赞
发布博客于 3 年前

省去Set、Get方法

在IDEA中,可以通过安装   lombok-plugin-0.19-2018.1  插件,来省去经常要写的Set、Get方法。离线安装插件下载地址http://plugins.jetbrains.com/plugin/6317-lombok-plugin 安装方法:可以参考(离线安装、在线安装)https://blog.csdn.net/LitongZero/article/...
原创
291阅读
0评论
1点赞
发布博客于 3 年前

Vue.js 筛选搜索小案例

使用Vue.js编写一个很小的筛选搜索案例。根据姓名搜索,性别筛选。代码&lt;!DOCTYPE html&gt;&lt;html lang="en"&gt;&lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;筛选小案例&lt;/title&gt;&lt;/head&
原创
1259阅读
0评论
5点赞
发布博客于 3 年前

Vue TodoList完整案例

案例根据 http://todomvc.com/examples/vue/ 编写 完成功能:完成了所有的功能,如:添加、双击修改、ESC键取消编辑、清除所有已完成任务、一键全选任务、自动聚焦,本地保存等等。
zip
发布资源于 3 年前

IP地址正则表达式,带*验证

IP地址正则表达式,在网上找了很多,但是没有看到带 ‘ * ’ 的正则表达式,通常我们在设置IP时,会设置IP段(0-255)或者用 ‘ * ’ 代替。 1、下为不带 ‘ * ’ 的正则表达式var checkName = /^(?:(?:1[0-9][0-9]\.)|(?:2[0-4][0-9]\.)|(?:25[0-5]\.)|(?:[1-9][0-9]\.)|(?:[0-9]\.)...
原创
653阅读
1评论
1点赞
发布博客于 3 年前

Vue.js TodoList案例

案例根据 http://todomvc.com/examples/vue/ 编写完成功能:完成了所有的功能,如:添加、双击修改、ESC键取消编辑、清除所有已完成任务、一键全选任务、自动聚焦,本地保存等等。目录1、index.html2、app.js3、index.css4、效果5、源码下载1、index.html&lt;!doctype html&gt;&l...
原创
1070阅读
0评论
2点赞
发布博客于 3 年前

Vue TodoList案例

案例根据 http://todomvc.com/examples/vue/ 编写 完成功能:添加、双击修改、ESC键取消编辑、清除所有已完成任务、一键全选任务等等。
zip
发布资源于 3 年前

前端开发,部署页面到服务器,并实现页面“热部署”

前端开发,部署页面到服务器,并实现页面“热部署” 浏览器同步测试工具 browser-sync
原创
3351阅读
0评论
2点赞
发布博客于 3 年前

Vue.js TodoList小案例

使用Vue.js写的TodoList小案例。完成功能:增加任务,修改任务状态,删除任务和清除已完成任务。代码:(修改Vue引入,即可使用)&lt;!DOCTYPE html&gt;&lt;html lang="en"&gt;&lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;TodoList案例&a
原创
240阅读
0评论
0点赞
发布博客于 3 年前

Vue简单计算器案例

利用Vue.js写的一个简单的计算器。非常简单的案例。通过这个案例,练习一下Vue的语法。通过案例可以看出,Vue.js解放了DOM操作。&lt;!DOCTYPE html&gt;&lt;html lang="en"&gt;&lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;Vue计算器&l
原创
1139阅读
0评论
3点赞
发布博客于 3 年前

前后端分离小案例

前端:就两个页面,用了art-template 和 JQuery。后端:使用Node.js,使用模块:body-parser 和 express。目录前端:1.初始化项目2.安装所需资源3.目录结构4.页面代码index. htmladd.html后端:1.初始化项目2.安装所需资源3.目录结构4.代码app.js 运行:1.启动...
原创
3616阅读
0评论
2点赞
发布博客于 3 年前

Node.js 错误统一处理

我们在写Node时,经常会碰到一些需要处理的服务器错误。比如,读取文件,查询数据库等等。最简单的处理方式就是,下面这种方法var express = require('express')var fs = require('fs')var app = express()app.get('/', function (req, res, next) { fs.readFil...
原创
1588阅读
0评论
1点赞
发布博客于 3 年前

Node.js多人博客系统

Node.js多人博客系统一些说明:这个项目,我前后大概用了两星期的时间才写完(其实没写完,还有很多功能可以添加)。作为一个实习上班党,还是挺艰辛的。经常,写着写着,看不懂前面的逻辑了或者忘了写到哪了,可能是比较累(懒)吧,有些地方的逻辑其实有一点乱。不过,大部分功能还是实现了的,作为一个后端开发,界面美化,用户体验什么的,还是emmmmm,有待商榷的。目录Node.js多人博客系统...
原创
1958阅读
2评论
3点赞
发布博客于 3 年前

Node多人博客系统

实现功能:登录、注册、发表博客、发表评论、更改密码、退出登录、删除账号、更改头像、搜索、浏览次数、回复量等等.... 主要技术: Express、art-template、multer、Markdown等等,数据库使用MongoDB。
zip
发布资源于 3 年前

Node.js文件上传

实现功能使用Node进行文件上传本案例是一个非常简单的案例,只包含了上传文件的部分。目录1、使用模块:multer、express、art-template。2、安装模块3、app.js4、index.html5、目录结构6、效果图 1、使用模块:multer、express、art-template。2、安装模块npm i expressnp...
原创
1104阅读
0评论
1点赞
发布博客于 3 年前

art-template模板引擎渲染html标签(替换html)

 Node中的art-template模板引擎,渲染html标签(替换html)我们在使用art-template模板引擎时,如果想用html标签,来渲染内容的话,会遇到一个问题例如,现在有 app.js使用模板引擎 渲染 index.htmlapp.js var template = require('art-template');var fs = require('fs')...
原创
5427阅读
10评论
3点赞
发布博客于 3 年前

关于Node.js中的路径问题

本文摘要:node中读取文件时的路径问题我们在写读取文件的代码时,经常要用到 ' fs ' 模块的 readFile方法,该方法的第一个参数就是path。例如:现在我们有一个文件a.txt,我们要读取这个文件(这个文件跟执行程序处于同一目录下)。我们可能会用到下面这种方法:var fs = require('fs')fs.readFile('./a.txt','utf8',f...
原创
383阅读
0评论
1点赞
发布博客于 3 年前

回调地狱与promise

在开发JavaScript过程中,我们经常会用到异步操作和回调函数,但是,我们都知道,异步操作不能保证执行顺序是我们想象的那样,所以,就出现了“回调地狱”。举个栗子:比如我现在要读取三个文件a.txt,b.txt,c.txt,并且让他的执行顺序必须为“先a,后b,最后c”,显然,我们不能用下面这种方法var fs = require('fs')fs.readFile('./data/...
原创
596阅读
0评论
2点赞
发布博客于 3 年前