自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 mysql优化delete子查询

mysql delete语句优化子查询

2023-06-13 19:15:34 674

原创 mysql数据库 解析树形参数

一、前言 因为项目数据的地址是树形,格式:440000;440300;440312;659971; 查询出的数据又需要转为中文:XXX省XXX市XXX区欢乐港湾东岸L2-016 所以需要借助sql存储过程实现二、思路 把要读取数据的所有地址编码都查询出来 解析地址编码,因为地址编码是分号分隔,所有根据分号循环每个编码解析,解析后再拼接 把解析好的地址编码和地址名称存入一张数据表(存的时候利用唯一索...

2021-11-02 09:05:44 396

原创 java开发经验(持续更新)

1.需要判断是否存在或者去重的时候使用HashSet 这个效率是最快的,处理过6000个设备,每个设备生成12个数据点,并用ArrayList存储,当存放的时候判断测点是否存在直接使用了arraylist的contains,需要44s,而利用HashSet是0秒级2.插入mysql数据库。避免插入重复数据:利用唯一索引+insert ignore into实现,而不要使用临时表判断。临时表判断会导致全表数据轮询,当存储的数据表数据量越来越大,所需时间越来愈多,...

2021-10-22 08:40:22 297

原创 快速备份大数据量的mysql数据库

1.前言 有些时候需要备份生产环境的mysql数据库到本地开发环境进行测试和修改现场问题 使用mysql工具备份很慢:如navicat等工具2.备份(linux环境) 远程登录Linux环境 连接mysql:mysql -h 172.18.125.58 -u root -p --port=6033;...

2021-09-13 08:36:43 1495

原创 Notepad++正则替换

正则表达式替换\r 换行\n 每行的开头一、在每行后面增加 ','替换前替换替换后

2021-09-01 20:37:30 347

原创 如何拆分微服务

一、分解业务问题 将业务问题分解为功能独立、单一的服务,虽然期望单个服务能封装该职责所有的业务规则,但往往不是这样,经常会看到需要跨多个微服务来完成业务功能。比如,一个用户需要开具发票,需要用到用户信息、开票信息、第三方开票平台等数据。因此,分离业务的时候,通过查看数据域中哪些不适合放在一起的地方来划分微服务的边界。二、拆分服务粒度 拆分微服务的服务粒度时,过粗或者过细的粒度都不好,很难一开始就做到拆分很合适,这需要经验的积累,但是有些思想可以作为借鉴...

2021-08-22 09:32:07 837

原创 微服务和传统应用对比

软件开发不是一个定义、执行的线性过程,而是一个不断演化的过程软件开发时,难以保证客户需求的变更、增改,所以沟通、学习、开发、测试、交付等过程贯穿全程因此,本篇文章需要讨论的是如何更好的解决上诉问题一、传统应用 传统应用开发时,一般采用的是瀑布模型(先把所有的需求沟通好,从上而下像瀑布一样开发) 会存在以下问题: 1.功能模块之间紧耦合 各个功能模块之间调用是通过代码层面而不是接口或者协议调用,这样造成了模块之...

2021-08-21 11:20:26 398

原创 微服务基础认知

1.什么叫微服务 微服务是一个小的,松耦合的分布式服务。 将一个大型应用程序分解为具有严格职责定义,便于管理的组件(小型应用程序) 核心理念:分解和分离程序功能,让功能独立原来的系统服务(应用程序)都是单体模式,比如一个缴费系统:涵盖了用户管理、角色管理、权限管理、菜单管理、用户基础信息管理、缴费管理、发票管理等等功能模块,这些全部都集中于一个系统中,当某个模块的功能出现变动,可能整个系统都要修改或者重新打包更新。如果系统更复杂,那么造...

2021-08-20 08:25:28 147

原创 sts增加springboot项目配置项

1.前言 当springboot项目已经构建好后,后续可能需要增加一些依赖配置项(主要是starters),这这时候有三种方式:直接去相关maven仓库寻找maven配置 借助开发的IDE,如sts,idea等 直接打开快速构建springboot的网址目前主要是 阿里云https://start.aliyun.com spring官网https://start.spring.io二.工具 1.IDE:sts 2.构建工具:maven...

2021-08-01 23:05:58 207

原创 mybatis如何高效插入

一、思路1.java代码分页插入 2.mybatis批量插入 3.如果需要判断“存在则不插入”使用insert ignore into 替代 select * from dual where not exists二、ignore和where not exists效率同等条件下(电脑处理时稍微有些误差),ignore比where not exists快40signore执行时间where not exists执..

2021-07-30 18:19:52 1139 1

原创 MYSQL导入数据出现The MySQL server is running with the --secure-file-priv

一、背景备份mysql数据表时(数据百万级),直接insert太慢,想通过导入导出文件的方式实现快速备份数据表,据说效率可以提升20倍二、问题导出的时候,提示以下的报错信息java.sql.SQLException: The MySQL server is running with the --secure-file-priv option so it cannot execute this statement这是因为mysql安装的时候,已经指定了导入导出文件时,文件的存放路径,可.

2021-07-13 18:28:14 1373

原创 mysql查找my.ini文件位置

使用如下命令select @@basedir;执行结果

2021-07-13 14:40:01 335

原创 No active profile set, falling back to default profiles: default或者maven打包分离lib包不生效

一、问题描述 项目的spring-boot版本从2.0升级到2.5,直接使用eclipse启动的时候,项目可以正常启动;打包成jar包的时候,也没有报错;但是,运行的时候就报错了,报错信息提示:No active profile set, falling back to default profiles: default二、问题分析 报错的信息提示:找不到对应的配置文件,使用默认的application-default配置文件 打开生成的jar包,发...

2021-07-09 12:50:35 6970 1

转载 测试Linux端口的是否可访问的四种方法

Linux系统有时候需要测试某个端口的连通性,用户可以参考如下方法来测试。方法一、telnet法telnet为用户提供了在本地计算机上完成远程主机工作的能力,因此可以通过telnet来测试端口的连通性,具体用法格式:telnet ip port说明:ip:是测试主机的ip地址port:是端口,比如80如果telnet连接不存在的端口,那会如下图所示。如果telnet 连接存在端口会出现如下图所示的内容,下图中以80端口为例。方法二、ssh法SSH 是.

2021-06-29 16:24:39 18746

原创 MyBatis的statementType标签

作用标记使用什么对象来操作sql语句三个参数分别对应三个对象1.statement,对应Statement 对象: 执行:直接操作sql,不进行预编译,直接获取数据,sql语句中直接使用${}取值2.prepared,对应PreparedStatement对象:执行:预处理,参数,进行预编译,获取数据,sql语句中直接使用#{}取值 这个参数也是mybatis默认参数3.callable:对应CallableStatemen...

2021-06-27 10:19:06 377

原创 程序员阅读书籍

《设计模式》《重构》《敏捷软件开发》《设计模式解析》

2021-06-25 00:06:07 81 1

原创 mybatis延迟加载

一、什么叫延迟加载延迟加载,也被称为是嵌套查询,或者懒加载。用于嵌套查询的时候结合过resultMap标签中的association和collection子标签

2021-06-21 00:03:27 90

原创 mybatis一对一、一对多

一、一对多实体类

2021-06-20 17:19:35 61

原创 @Data注解不生效

一、情景使用了@Data注解,但是不生效,也就是不能自动封装数据到实体对象中二、原因使用@Data注解不仅引入注解,还需要安装lombok

2021-06-20 10:27:05 14534 3

原创 mybatis mapper开发方式-XML

开发方式 只需要开发Mapper接口(dao接口)和Mapper映射文件,不需要编写实现类。 • 开发规范 Mapper接口开发方式需要遵循以下规范: 1、 Mapper接口的类路径与Mapper.xml文件中的namespace相同。 2、 Mapper接口方法名称和Mapper.xml中定义的每个statement的id相同。 3、 Mapper接口方法的输入参数类型和mapper.xml中定义的每个sql 的parameterType的类型相同。 4、 Mapper接口

2021-06-16 23:43:20 80

原创 解决git每次提交代码都要输入帐号和密码

执行下面命令#保存身份信息git config --global credential.helper store

2021-06-13 10:13:35 4336

原创 Updates were rejected because the tip of your current branch is behind

本地使用git上传到gitee仓库的时候,出现下面的报错

2021-06-13 10:01:05 61

原创 Git,GitHub与GitLab的区别

从名程来看,这三者肯定有关系,具体见下文。一、GitGit 是一个版本控制系统。版本控制是一种用于记录一个或多个文件内容变化,方便我们查阅特定版本修订情况的系统

2021-06-12 11:13:52 320 1

原创 mybatis批量操作

一、批量插入<insertid="insertData"parameterType="java.util.List"> insert into t_fee_sourcedata (tag_name,time,data) values <foreachcollection="list"item="item"index="index"separator=","> ( #{item.tag_name}, #{item.time}, #{it

2021-06-11 12:37:24 1099 2

原创 接口简单性能测试

一、项目基于Tomcat服务器 可以直接使用下列命令:ab -n 1000 -c 10 接口

2021-06-10 23:15:27 97

原创 缓存设计原则

1.写入数据时:先写数据库,再写缓存2.更新数据时:先删除缓存,再更新数据库,最后再写入缓存3.删除数据时:先删除缓存,再删除数据库4.读取数据时:先读取huan

2021-06-10 21:59:29 487

原创 功能开发或维护

在工作中,无论是自己开发还是维护代码,往往都会遇到下列情况:更改原来的业务需求或者增加业务需求。例如:需求:在获取某些数据的时候,要求被获取的数据已审核通过

2021-06-10 00:04:31 139

原创 EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY‘RE NOT. RENEWALS ARE LESSER

一、问题背景

2021-06-09 01:36:32 11006 3

原创 spring cloud中文手册

地址:https://www.springcloud.cc/spring-cloud-greenwich.html#_spring_cloud_context_application_context_services

2021-05-30 11:02:21 209

转载 微服务与Spring Cloud常用组件

概述毫无疑问,Spring Cloud是目前微服务架构领域的翘楚,无数的书籍博客都在讲解这个技术。不过大多数讲解还停留在对Spring Cloud功能使用的层面,其底层的很多原理,很多人可能并不知晓。因此本文将通过大量的手绘图,给大家谈谈Spring Cloud微服务架构的底层原理。实际上,Spring Cloud是一个全家桶式的技术栈,包含了很多组件。本文先从其最核心的几个组件入手,来剖析一下其底层的工作原理。也就是Eureka、Ribbon、Feign、Hystrix、Zuul这几个组件。一

2021-05-30 08:22:04 177

原创 mysql 还原数据库时报错

前言mysql版本:5.7mysql还原sql文件报错有很多种情况,下面这种应该是通常的: mysql限制了Server接受的数据包大小,导致大量数据的插入和更新会受 max_allowed_packet 参数限制,导致写入或者更新失败解决措施1.临时修改,执行sql:mysql>set global max_allowed_packet=524288000; 修改 #512M 2.修改my.cnf或者my.ini,需重启mysql。 在 [MyS...

2021-05-24 23:22:28 1240 2

原创 idea 访问https://start.spring.io

前言idea版本:2021使用idea直接创建springboot项目时,访问https://start.spring.io很慢,甚至访问不了,可以更换为阿里云路径https://start.aliyun.com/步骤点击设置进入配置页面把阿里镜像填入即可https://start.aliyun.com/...

2021-05-24 21:45:09 1505 3

原创 IDEA2021自定义代码自动补全(如syso)

前言由eclipse转IDEA,有些自动补全或者快捷键已经习惯于eclipse的提示,为了更快上手,还是想沿用部分eclipse的配置1.进入配置页面2.进入Editor》下的Live Templates3.找到java点击后面的+号选择Live Templates进入配置页面4.参数解析及配置Abbreviation:要使用的快捷提示短语,比如sysoDescription:对于短语的描述,比如:System.out.printlnT

2021-05-23 23:47:29 3943

转载 idea2021版本入门级基础参数配置

2021 最新 IntelliJ IDEA 详细配置步骤演示 IDEA的下载以及详细介绍(详细篇)1. 设置 JDK2. 统一编译器和编译版本3. 设置主题4. 安装主题5. 设置字体6. 鼠标滚轮修改字体大小7. 控制台字体8 .快捷键8.1 学习更多ID...

2021-05-23 23:11:32 1260

原创 nginx 请求后台接口200,但是前端报错;nginx 读写临时文件夹proxy_temp报错Permission denied

项目场景:前后端分离,前端使用nginx作为服务器问题描述:nginx请求后台接口成功,即所请求的接口状态为200,但是前段仍然报错,如下图:原因分析:1.既然请求后端接口是成功的(状态码200),说明后端接口是没有问题的2.同时这里还有一个问题,前几分钟还是正常的,但是突然就开始不断报错,但是其他接口没有报错3.去nginx运行或者安装目录下查找其日志文件logs,找到下面的error文件,找到请求的接口,看看报了什么错误:2021/05/14 11:12:34 .

2021-05-15 13:07:44 2106

转载 MySQL批量插入解决唯一索引问题(避免导入重复数据)

本文章为转载,原文地址:https://blog.csdn.net/heart_mine/article/details/100552990MySQL批量插入遇上唯一索引避免方法(避免导入重复数据)未避免导入重复数据,建议建立唯一索引防止批量插入时,遇上唯一索引,可以使用以下3种方法避免方法(一)导入差异数据,忽略重复数据,IGNORE INTO的使用(二)导入并覆盖重复数据,REPLACE INTO 的使用(三)导入保留重复数据未指定字段,INSERT INTO ON DUPLICAT.

2021-05-12 22:20:59 1668

原创 nginx请求后端的时候,前端接口报错:404和200交替出现

项目场景:nginx请求后端的时候,前端接口报错:404和200交替出现问题描述:nginx请求后端接口的时候,一会报错404找不到,一会报错200请求成功原因分析:既然请求接口的时候,一会404请求不到,一会200请求成功。说明前端代码或者后端代码是没有问题的,问题是出在nginx的配置,所以去检查nginx的conf配置文件,终于发现问题所在,未修改前的conf配置文件连接后端ip地址配置如下:upstream ems{ server 39.108.218.185:1117

2021-05-12 19:02:39 4206

原创 UReport2导出报错

项目场景:UReport2导出报错问题描述:UReport版本号:2.2.9简介:导出PDF正常和world是报错,但是导出EXCEL失败,提示:无法访问此网站 网址为 http://ip:8080/fintech/ureport/excel?_u=p 的网页可能暂时无法连接,或者它已永久性地移动到了新网址。 ERR_INVALID_RESPONSE错误日志如下:~~~ Report compute completed:0msjava.lang.RuntimeExceptio

2021-04-25 15:55:22 2347

原创 eclipse下Java compiler level does not match的解决步骤

1.打开Windows>> Preferences>>Java>>Compiler把编译的level调高,如下图:2.对着工程右键,选择Build Path,再选择Configuer Build Path,再选择Java Compiler ,再选择编辑的版本3.对着项目右键选择Refresh进行刷新

2017-04-02 23:50:51 521

空空如也

空空如也

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

TA关注的人

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