自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (2)
  • 收藏
  • 关注

原创 自定义一个Jackson注解实现数据脱敏

自定义一个Jackson注解实现数据脱敏。

2022-07-22 08:44:40 640 1

原创 Centos6或7配置网络连接

在使用虚拟机的时候,通常都需要给自己的虚拟机配置一下网络。下面我们就来看一下,如何用简单的方法去给我们的虚拟器配好网络连接。VMware 或者VirtualBox这两个选一个就行,并在上面安装好镜像,记住连接网络的地方要选桥接我用的是VirtualBox,点击设置->网络->连接方式,选桥接网卡就好了。VMware 的也选桥接方式就好了编辑该文件先将ONBOOT改成yes,之后重启网卡,让虚拟机自动分配ip地址,之后再将生成好的ip地址配置到ifcfg-eth0 文件中就好了。下面看详细操作下图就是

2022-07-08 01:25:07 1219

原创 Stream在代码中的灵活运用

Java8的新特性主要是Lambda表达式和流,当流和Lambda表达式结合起来一起是应用时,因为流声明式处理数据集合的特点,可以让代码变得简洁易读。如果有一个需求,需要对数据库查询到的集合进行处理:用户:User.javaJava8之前的实现方式使用Stream流之后的实现方式不拖泥带水,一气呵成,原来需要写24代码实现的功能现在只需5行就可以完成了。写完这个需求本来能开心一下,休息一会儿,没想到又有新需求了,新需求如下:用Stream的方式来处理一行代码解决了需求,不禁感叹Sream AP

2022-07-08 00:56:15 152

原创 优化慢SQL

sql优化

2022-06-28 15:00:23 150

原创 Centos7关闭防火墙

Centos7永久关闭防火强

2022-06-25 22:34:40 78

原创 go 随机生成5个数,并将其反转打印

随机生成5个数,并将其反转打印

2022-03-16 12:34:38 350

原创 Go语言中的基本类型转换

基本数据类型和String的转换方式1fmt.Sprintf("%参数",表达式)函数介绍 func Sprintf func Sprintf(format string,a ..interface{})stringSprintf根据format参数生成格式化的字符串并返回该字符串.fmt.Sprintf()… 会返回转换后的字符串案例func main(){ var num1 in = 90 var str String // 空的str str = fmt.Sprin

2022-03-12 12:01:23 93

原创 go语言开发之helloworld

go语言开发之HelloWorld

2022-03-11 22:12:46 292

原创 Java方法重写(Overriding)和方法重载(Overloading)

Java方法重写(Overriding)和方法重载(Overloading)概述。

2022-03-02 14:21:29 929

原创 SpringBoot+Mybatis+Mysql写一个接口

SpringBoot+Mybatis+mysql创建一个接口

2022-02-23 17:39:59 783

原创 原始数组和稀疏数组之间的相互转换

代码// 稀疏数组 public static void main(String[] args) { // 创建一个原始的二维数组 11 * 11 // 0:表示没有棋子,1表示 黑子 2表示蓝子 int chessArr1[][] = new int[11][11]; chessArr1[1][2] = 1; chessArr1[2][3] = 2; chessArr1[4][6] = 2;

2022-01-27 09:47:54 732

原创 JDK1.8 中 LocalDateTime 时间格式化两种方案

JDK1.8 中LocalDateTime 时间格式化两种方案

2021-12-02 17:44:16 3382

原创 Linx中查看文件的格式并修改成unix

vim打开文件vim 文件名按 i 进入编辑模式执行下面命令,查看文件格式:set ff修改成unix:set ff=unix之后还可以再看一下有没有修改成功,要是不成功的话就再执行一遍

2021-11-22 17:29:31 597

原创 索引失效的七中情况

失效的情况1.有or必全有索引;2.复合索引未用左列字段;3.like以%开头;4.需要类型转换;5.where中索引列有运算;6.where中索引列使用了函数;7.如果mysql觉得全表扫描更快时(数据少);没有必要使用的情况1.唯一性差;2.频繁更新的字段不用(更新索引消耗);3.where中不用的字段;4.索引使用<>时,效果一般;...

2021-07-25 11:54:01 91

原创 java多线程的实现方式

在java中实现多线程有三种方式实现Runnable接口实现Callable接口继承Thread类实现Runable和Callable接口的类只能当做一个可以在线程中运行的任务,不是真正意义上的线程,因此最后还需要通过Thread来调用。可以理解为任务是通过线程驱动从而执行的。实现Runable接口public class RunnableTest implements Runnable { @Override public void run() { // .

2021-07-20 14:54:40 74

原创 TCP协议之三次握手四次挥手

TCP(Transmission Control Protocol 传输控制协议)是一种面向连接(连接导向)的、可靠的、 基于IP的传输层协议。来看下网络协议在计算机网络中进行通讯,就必须遵守一些事先约定好的规则,比如交换数据的格式、是否需要发送一个应答信息。这些规则被称为网络协议。协议的分层比较经典的有OSI网络七层协议,TCP/IP四层协议,五层协议。OSI的七层协议体系结构的概念清楚,理论也较完整,但它既复杂又不使用,TCP/IP体系结构则不同,在实际中得到了非常广泛的应用。TCP/IP是一

2021-06-30 17:15:29 236 2

原创 List去除重复数据

1.使用LinkedHashSet删除ArrayList中的重复数据LinkedHashSet 是在一个 ArrayList 删除重复数据的最佳方法。LinkedHashSet 在内部完成两件事:删除重复数据保持添加到其中的数据的顺序看下面代码package com.gsj.fugui.controller;import java.util.ArrayList;import java.util.Arrays;import java.util.LinkedHashSet;public

2021-06-24 09:11:41 102

原创 猜数算法java

在范围[low,high]之间猜数字的Java代码//当n确认在范围[low,high]时,计算需要猜测的次数// 当n确认在范围[low,high]时,计算需要猜测的次数 public static int turns(int n,int low,int high){ int turns = 0; // 如果还有潜在的数字需要猜测,则继续 while (high >= low){ turns++;

2021-06-20 17:08:53 73

原创 Synchronized锁和ReentrantLock锁

Java提供了两种锁机制来控制多个线程对共享资源的互斥访问,第一个是JVM实现的synchronized,而另一个是JDK实现的ReentrantLock。synchronized1.同步一个代码块public void func(){ synchronized(this){ //... }}它只作用于同一个对象,如果调用两个对象上的同步代码块,就不会进行同步。对于一下代码,使用ExecutorService执行了两个线程,由于调用的是同一个对象的同步代码块,因此这两个线程会进行同步,

2021-05-24 17:38:21 141

原创 SpringBoot启动原理

好的程序员都在技术沉淀,虽然工作中并不会用到,但是该沉淀的一个都不会少。今天我们就来说一下SpringBoot的启动原理,说到这个,就不得不把我们的代码拿出来看看。(站在巨人的肩膀上开发,然后研究一下巨人里面有什么)@SpringBootApplicationpublic class FishApplication { public static void main(String[] args) { SpringApplication.run(FishApplication.c

2021-05-08 17:47:16 502

原创 Spring Cloud Gateway(三)

关于Spring Cloud Gateway 我们先来看一下官方的介绍该项目提供了一个在Spring生态系统之上构建的API网关,包括:Spring 5,Spring Boot 2和Project Reactor。Spring Cloud Gateway旨在提供一种简单而有效的方法来路由到API,并为它们提供跨领域关注,例如:安全性,监视/指标和弹性。官方文档地址下面我们来看一下它在微服务中的位置,还是来看我们的官方架构图我们的外部设备,在访问微服务的时候,经网关,之后再去访问具体的微服务。Spr

2021-05-07 15:07:59 182

原创 SpringCloud-Feign+Ribbon(二)

基于上篇的内容,今天我们来说一下,Spring Cloud Feign 和 Spring Cloud Ribbon 。客户端负载均衡与服务端负载均衡在说Ribbon 我们先来说一下,客户端负载均衡与服务端负载均衡服务端负载均衡在服务端进行负载均衡算法分配。列如nginx,浏览器访问网站时,通过Nginx进行负载均衡。步骤1.浏览器发送请求,步骤2,nginx捕获到请求,通过其负载均衡算法,在已经注册的多个服务器之间选择一个进行相应;客户端负载均衡即在客户端进行负载均衡算法分配。例如sprng

2021-04-29 10:37:10 243

原创 详解SpringCloud-Eureka(一)

说到SpringCloud,我们来看一下权威的解释:SpringCloud是一系列框架的有序集合。它利用SpringBoot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用SpringBoot的开发风格做到一键启动和部署。SpringCloud并没有重复制造轮子,它只是将各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过SpringBoot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部

2021-04-20 10:58:54 181

原创 lag与lead函数

lag与lead函数 是跟偏移量相关的两个分析函数,通过这两个函数可以再一次查询中取出同一字段的前N行数据(lag)和后N行的数据(lead)做为独立的列,从而更方便的进行数据过滤。这种操作可以代替表的自联接,并且lag和lead有更高的效率。over()表示lag()与lead() 操作的数据都再over()的范围内,他里面可以使用partition by 语句(用于分组)order by 语句(用于排序)。partition by a order by b 表示以a字段进行分组,再以b字段进行排序

2021-04-19 16:48:59 5049

原创 获取文件夹下的文件,包含子文件夹并复制文件

工作的时候用到的一些方法,在这里记录一下。public class GetFileList {private static ArrayList<File> fileList = new ArrayList<File>();public static void main(String[] args) throws IOException { String dir = "D:\\testFile\\temp1"; String dir2 =

2021-04-15 16:09:09 117

原创 23种设计模式的分类和功能

设计模式有两种分类方法,即根据模式的目的来分和根据模式的作用的范围来分。根据目的来分根据模式是用来完成什么工作来划分,这种方式可分为创建型模式、结构型模式和行为型模式3种。创建型模式:用于描述“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”。GoF中提供了单例、原型、工厂方法、抽象工厂、建造者等5种创建型模式。结构型模式:用于描述如何将类或对象按某种布局组成更大的结构,GoF种提供了代理、适配器、桥接、装饰、外观、享元、组合等7种结构型模式。行为型模式:用于描述类或对象之间怎样相互.

2020-12-24 14:51:12 256

原创 JAVA设计模式的概念

#代码是对现实的模拟,而设计模式就像是巧妙解决问题的方法。下面我们就来聊一聊设计模式首先,我们来说一下设计模式的概念。软件设计模式,又称设计模式,是一套被反复使用,多数人知晓的、经过分类编目的、代码设计经验的总结。它描述了在软件设计过程中的一些不断重复发生的问题,以及该问题的解决方案。也就是说,它是解决问题的一系列套路,是前辈们的代码设计经验的总结,具有一定的普遍性,可以反复使用。其目的是为了提高代码的可重用行、代码的刻度性和代码的可靠性。#2.意义,赚好多的钱(_)设计模式的本质是面向对象设计原

2020-12-23 19:21:29 200

原创 Maven 引入 ojdbc:ojdbc14-10.2.0.4.0.jar

好久没有写Oracle的数据库了,在这里记录一下。防止以后遇到又要搜一会儿。首先先下载ojdbc到本地可以去官网,或者我的网盘里面,直接下载官网路径Ojdbc官网下载地址百度网盘提取路径链接:https://pan.baidu.com/s/17PxNv9aqWfUkFXHaRbf0fw提取码:dqcb把下好的jar的放到自己的maven仓库中之后打开cmd窗口执行mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc

2020-11-24 18:35:54 1353 1

原创 SpringBoot读取本地的文件并打成jar包

今天在做项目的时候遇到一个这样的需求,需要后端去处理json数据,然后根据前端传过来的值进行匹配。把最终的数据传给第三方。maven 依赖<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-io</artifactId> <version>1.3.2</version></dependency><depe

2020-11-17 20:36:11 336 2

原创 SpringBoot+SwaggerUi 教程

首先自己创建一个SpringBoot项目我的springBoot版本是2.3.4的,用的Swagger版本是2.9.2的。有些做法是选用一样的版本,这样会导致项目启动的时候提示这样的异常出现这样的异常之后把Swagger的版本给改成2.9.2的就好这是我导入的依赖 <dependency> <groupId>io.springfox</groupId> <artifactId>spring

2020-11-06 17:38:09 400

原创 SpringBoot打成jar包发布并追踪日志

1.首先将SpringBoot打成jar包通过xFTP或者使用命令scp /path/filename username@servername:/path 或者其他工具把jar包上传到服务器上,然后执行下面命令启动项目java -jar xxx.jar &使用该命令启动jar,一旦Xshell窗口关闭jar就停止运行了。如果想让项目在后台一直运行,通过如下命令启动JAR:nohup java -jar xxx.jar > consoleMsg.log 2>&1 &a

2020-11-06 13:44:09 1034

原创 HTTP详解

一基础概念URI包含 URL 和 URN请求报文和响应报文1.请求报文在这里面可以看到,请求报文中包含 Host,Accept,Accept-Encoding(报文的编码),User-Agent等信息在对接第三方的时候可以设置请求头中的参数。这里用的是HttpClient对接的第三方。文末附上大神的博客地址,在里面学到了好多。2.响应报文二、HTTP方法客户端发送的请求报文第一行 为请求行,包含方法字段。GET: 获取资源当前网络请求中,绝大部分使用的是GET方法。HEAD获

2020-11-06 13:26:04 248

原创 GIT将本地文件提交到github上

前提是你已经在在自己的github上创建出来自己的仓库,这里不做赘述创建完之后,会有一个提示你如何将文件commit到你仓库中的提示,本文,只尝试了第一种方式。// 初始化你的项目文件,让你提交的文件可以被git检测到git init /*** 添加阅读文件,即项目的介绍文件,如果没有就自己touch一个* 命令是 touch "README.md" 之后再执下面的文件*/git add README.md// 这次提交的介绍git commit -m "first commit"

2020-09-15 17:14:32 73

原创 vue+vuex+无人点餐,免费下载

链接:https://pan.baidu.com/s/1LNvel63oor69Ok2UXtuRWw提取码:9tyo

2020-08-10 13:43:50 243

原创 neo4j中的CQL语句

创建一个学生节点(只有节点,没有属性)create(s:Student)创建一个具有属性的节点create(s:Student{id:1000,name:"张三",age:18,sex:1})Neo4j 使用的是match...return...命令进行查询,就类似MySql中的select查询全部学生并返回match (s:Student) return s2.查询全部或者部分字段只需要把要展示的字段以节点名 + 点号 + 属性字段 拼接即可,如下:match (s:Student

2020-07-29 15:49:54 1242

原创 @RequestParam、@RequestBody和@PathVariable的比较

@RequestParam注解通常处理content-type为默认的application/x-www-form-urlcoded的请求。@RequestBody注解用来处理content-type为application/json或者是application/xml等。@PathVariable是spring3.0的一个新功能:接收请求路径中占位符的值...

2020-04-30 10:00:02 126

原创 SpringBoot项目配置logback日志

1 logback 配置方式:springBoot建议使用的日志配置方式是logback方式,因为它相对log4j2更为的简单并且是用。logback-wenjy.xml(注意:不要使用logback这个来命名,否则springboot将不能完全实例化)复制下面的配置文件到resource目录下面logback-wenjy.xml<?xml version="1.0" ...

2020-04-20 23:50:58 162

原创 HTTP的三次握手和四次挥手

@[TOC]HTTP的三次握手和四次挥手记录一下自己学习地记录方便自己查询,这里附上原文的链接link#什么是三次握手三次握手(Three-way Handshake)其实就是指建立一个TCP连接时,需要客户端和服务器总共发送三个包。进行三次握手的主要作用就是问了确认双方的接收能力和发送能力是否正常、指定自己的初始化序列号为后面的可靠性传送做准备。实质上就是连接服务器指定端口,建立TCP连接...

2019-10-11 17:51:57 104

Springboot_solor_Redis.7z

SpringBoot+Redis+Solr+Mysql+tomcat+jsp简单的应用,重要的是思想

2020-04-21

集合代码需要时下载,留作参考.7z

java集合类的简单应用,包括HashMap,Hashset,LinkList,ArrayList,Stack,Vector

2020-04-21

空空如也

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

TA关注的人

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