自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (1)
  • 收藏
  • 关注

原创 如何保证接口的幂等性?常见的实现方案有哪些?

什么是幂等性幂等性是系统服务对外一种承诺,承诺只要调用接口成功,外部多次调用对系统的影响是一致的。声明为幂等的服务会认为外部调用失败是常态,并且失败之后必然会有重试。如何保证幂等使用数据库实现幂等性 使用 JVM 锁实现幂等性 使用分布式锁实现幂等性一. 数据库实现数据库实现幂等性的方案有四个:1.状态机幂等如果业务上需要修改订单状态,例如订单状态有待支付,支付中,支付成功,支付失败。设计时最好只支持状态的单向改变。这样在更新的时候就可以加上条件,多次调用也只会执行一次。例如想

2021-08-04 15:15:58 541

原创 IntelliJ IDEA根据wsdl生成WebServices客户端代码 Sprinng Boot

最近项目要用到一个发票开票接口,但是对方居然用的是webService的方式调用,而我们用的是SpringBootIDEA在2019的版本后就没有显示的集成WebService了,导致找了很多种方式,都没有很详细的说明白,具体要 怎么处理,刚好弄清楚,写个笔记记录下我的IDEA版本2020.1, JDK1.8 项目环境:Springboot1.新建module,选择Apach Axis2.点击下一步,输入项目名称,后点完成3.出现如下的界面,勾选需要生成的代码,这里要注.

2021-08-04 15:11:24 4196 1

原创 Java 根据文件目录批量替换替换文件格式

import org.apache.commons.io.IOUtils;import org.apache.commons.lang3.StringUtils;import java.io.*;public class FileUtils { public static void main(String args[]){// formatFile("D:\...

2020-03-12 10:19:22 318

原创 BlockingQueue(阻塞队列)详解

一. 前言  在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利。本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景。二. 认识BlockingQueue  阻塞队列,顾名思义,首先它是一个队列,而一个...

2019-08-14 17:31:23 142

转载 BigDecimal.setScale用法总结

1.BigDecimal num1 = new BigDecimal(2.225667);//这种写法不允许,会造成精度损失2.BigDecimal num2 = new BigDecimal(2);//这种写法是可以的3.BigDecimal num = new BigDecimal("2.225667");//一般都会这样写最好4.int count = num.scale...

2019-06-25 11:01:32 290

原创 List 集合排序 降序&升序

/**先排序,降序 然后取前10 b1在后是升序*/Collections.sort(portraitReportVos, new Comparator<PortraitReportVo>() { public int compare(PortraitReportVo o1, PortraitReportVo o2){ BigDecimal b1 = o1....

2019-06-20 11:17:52 6188

原创 Springboot 文件传输大小设置

设置上传下载文件大小根据不同版本,对应的设置值不一样Spring Boot 1.3.x and earliermultipart.maxFileSizemultipart.maxRequestSizeSpring Boot 1.4.x and 1.5.xspring.http.multipart.maxFileSizespring.http.multipart.max...

2019-06-10 11:07:55 1009

原创 根据字段配置 动态获取对象属性

/**3.根据资金方字段配置展示对应的字段*/ /**3.1获取资金方字段配置*/ ClearProofFieldConfig clearProofFieldConfig = clearProofFieldConfigManager.selectByLoanChannelId(clearProofBatch.getLoanChannelId())...

2019-06-03 21:55:31 722

原创 mybatis动态sql中foreach标签的使用

foreach标签主要用于构建in条件,他可以在sql中对集合进行迭代。如下我们假如说参数为---- int[] ids = {1,2,3,4,5} ----那么打印之后的SQL如下:<delete id="deleteBatch">  delete from user where id in  <foreach collection="array" item=...

2019-05-30 17:31:59 1252

转载 由浅入深理解Raft协议

原文出处:https://www.sohu.com/a/198360462_7127630 - Raft协议和Paxos的因缘读过Raft论文《In Search of an Understandable Consensus Algorithm》的同学都知道,Raft是因为Paxos而产生的。Paxos协议是出了名的难懂,而且不够详细,紧紧依据Paxos这篇论文开发出可用的系统是非常困难的...

2018-12-20 11:36:56 243

原创 Springboot集成Spring session利用redis来实现session共享

1.在spring boot的文档中,告诉我们添加@EnableRedisHttpSession来开启spring session支持,配置如下:@SpringBootApplication@EnableRedisHttpSessionpublic class DemoApplication { public static void main(String[] args) {...

2018-12-18 17:33:57 354 1

转载 数据库索引原理

使用索引很简单,只要能写创建表的语句,就肯定能写创建索引的语句,要知道这个世界上是不存在不会创建表的服务器端程序员的。然而, 会使用索引是一回事, 而深入理解索引原理又能恰到好处使用索引又是另一回事,这完全是两个天差地别的境界(我自己也还没有达到这层境界)。很大一部份程序员对索引的了解仅限于到“加索引能使查询变快”这个概念为止。 为什么要给表加上主键? 为什么加索引后会使查询变快?...

2018-12-12 11:41:59 94

原创 Linux常用命令

1.查找对应的项目进程ps -ef |grep ruoyi-admin.jar2.在linux下发布Springboot jar 项目nohup java -jar ruoyi-admin.jar &amp;3.查看端口号是否可用  lsof -i:端口号lsof -i:端口号4.centos7安装命令:用yum  install  对应的命令 yum in...

2018-11-28 16:45:08 209

原创 linux快速安装JDK1.8

1.去Oracle 官网下载自己对应的版本可以用wget 的方式直接下载,不知道啥原因我的linux下载不了所以我直接在windows10下载好wget http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.tar.gz2.拷...

2018-11-28 14:12:06 3937

原创 docker 容器下运行tomcat 部署应用

docker安装tomcat查找Docker Hub上的tomcat镜像runoob@runoob:~/tomcat$ docker search tomcatNAME DESCRIPTION STARS OFFICIAL AUTOMATEDtomcat ...

2018-11-27 20:53:13 525

原创 Docker 安装 MySQL

方法一、docker pull mysql查找Docker Hub上的mysql镜像runoob@runoob:/mysql$ docker search mysqlNAME DESCRIPTION STARS OFFICIAL AUTOMATEDmysql ...

2018-11-27 16:40:33 115

原创 mybatis-plus笔记

1.添加pom文件添加maven依赖&lt;dependency&gt;&lt;groupId&gt;com.baomidou&lt;/groupId&gt;&lt;artifactId&gt;mybatis-plus-boot-starter&lt;/artifactId&gt;&lt;version&gt;3.0.1&lt;/version&gt;&lt;/depende

2018-11-27 14:17:22 612

原创 CentOS Docker 安装和个人问题解决总结

Docker支持以下的CentOS版本:CentOS 7 (64-bit) CentOS 6.5 (64-bit) 或更高的版本前提条件目前,CentOS 仅发行版本中的内核支持 Docker。Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64...

2018-11-27 11:26:05 1197

原创 SpringMVC工作原理

SpringMVC的工作原理图: SpringMVC流程1、  用户发送请求至前端控制器DispatcherServlet。2、  DispatcherServlet收到请求调用HandlerMapping处理器映射器。3、  处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServ...

2018-11-20 16:48:05 63

转载 深入理解JVM—JVM内存模型

我们知道,计算机CPU和内存的交互是最频繁的,内存是我们的高速缓存区,用户磁盘和CPU的交互,而CPU运转速度越来越快,磁盘远远跟不上CPU的读写速度,才设计了内存,用户缓冲用户IO等待导致CPU的等待成本,但是随着CPU的发展,内存的读写速度也远远跟不上CPU的读写速度,因此,为了解决这一纠纷,CPU厂商在每颗CPU上加入了高速缓存,用来缓解这种症状,因此,现在CPU同内存交互就变成了下面的样子...

2018-10-31 11:47:46 168

转载 Java总结篇系列:Java多线程(三)

本文主要接着前面多线程的两篇文章总结Java多线程中的线程安全问题。一.一个典型的Java线程安全例子public class ThreadTest { public static void main(String[] args) { Account account = new Account("123456", 1000); DrawMoney...

2018-09-18 22:48:57 87

转载 Java总结篇系列:Java多线程(二)

四.Java多线程的阻塞状态与线程控制上文已经提到Java阻塞的几种具体类型。下面分别看下引起Java线程阻塞的主要方法。1.join()join —— 让一个线程等待另一个线程完成才继续执行。如A线程线程执行体中调用B线程的join()方法,则A线程被阻塞,知道B线程执行完为止,A才能得以继续执行。public class ThreadTest { public st...

2018-09-18 21:39:39 101

原创 Java总结篇系列:Java多线程(一)

多线程作为Java中很重要的一个知识点,在此还是有必要总结一下的。一.线程的生命周期及五种基本状态关于Java中线程的生命周期,首先看一下下面这张较为经典的图:上图中基本上囊括了Java中多线程各重要知识点。掌握了上图中的各知识点,Java中的多线程也就基本上掌握了。主要包括:Java线程具有五中基本状态新建状态(New):当线程对象对创建后,即进入了新建状态,如:Thre...

2018-09-18 17:42:00 129 1

原创 Spring mvc 定时任务

1.springmvc-servlet.xml 配置文件&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;beans xmlns="http://www.springframework.org/schema/beans"       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...

2018-09-10 11:26:40 340

转载 SpringMVC工作原理

  SpringMVC框架介绍 Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。 Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还是 Struts 这样的 Web 框架。通过策略接口,Spring 框...

2018-08-21 01:02:33 180

转载 HttpServletResponse.sendRedirect方法和RequestDispatcher.forward方法区别

尽管HttpServletResponse.sendRedirect方法和RequestDispatcher.forward方法都可以让浏览器获得另外一个URL所指向的资源,但两者的内部运行机制有着很大的区别。下面是HttpServletResponse.sendRedirect方法实现的请求重定向与RequestDispatcher.forward方法实现的请求转发的总结比较:(1)Re

2017-03-21 14:12:46 737

转载 HashMap与HashTable的区别

HashMap和Hashtable的区别导读:1 HashMap不是线程安全的            hastmap是一个接口 是map接口的子接口,是将键映射到值的对象,其中键和值都是对象,并且不能包含重复键,但可以包含重复值。HashMap允许null key和null value,而hashtable不允许。 2   HashTable是线程安全的一个Collec

2017-03-02 14:19:05 127

转载 db2 专用工具 版本设置sql自动提示

9.1以前的版本设置是:tools --tool properties -- SQL Editor -- Auto Completion(转栽百度知道)然后9.1的版本设置没有sql eidtor,经过本人试验,在这里设置:tools --tool properties这样就完成了,有任何db2的问题都可以在评论

2015-08-18 09:02:25 942

支付清算基本概念培训PPT

主要简单的描述了 基本交易流程,支付清算的基本概念和基本要素

2018-09-20

空空如也

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

TA关注的人

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