自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 资源 (13)
  • 论坛 (1)
  • 收藏
  • 关注

原创 com.alibaba.fastjson.JSONObject 和JSONArray转实体

JSONArray转实体List<PeakValley> list = JSONObject.parseArray(data.getString("peakValleyList"), PeakValley.class);JSONObject转实体ZqSiteChargerOrder order = JSONObject.parseObject(data.toJSONString(), ZqSiteChargerOrder.class);

2021-09-27 11:02:27 38

原创 springboot集成redis哨兵模式(1主2从三哨兵)

部署redis1主2从3哨兵请移步jar包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>application-pro.yml配置启动项目 一主两从 出现红.

2021-04-08 18:09:59 123 1

原创 docker-compose 安装redis哨兵模式(1主2从3哨兵)

1.docker-compose安装redis1主2从请点击上面我已经部署了redis一主2从 三个服务器 192.168.0.11,192.168.0.12,192.168.0.133哨兵的话我是放在同一个服务器192.168.0.11上面去监听节点目录接口docker-compose.ymlversion: '3.4'services: sentinel1: image: redis container_name: redis-sentinel...

2021-04-08 17:45:31 69

原创 docker-compose 部署MongoDB4.0 部署replica set(副本集)集群 多服务器

docker以及docker-compose安装请点击准备三台服务器 192.168.0.11192.168.0.12192.168.0.13生成keyFileMongoDB使用keyfile认证,副本集中的每个mongod实例使用keyfile内容作为认证其他成员的共享密码。mongod实例只有拥有正确的keyfile才可以加入副本集。keyFile的内容必须是6到1024个字符的长度,且副本集所有成员的keyFile内容必须相同。有一点要注意是的:在UNIX系统中,k...

2021-04-08 12:20:16 132 2

原创 docker-compose 安装redis主从 (多服务器)

docker和docker-compose安装请点击准备两台服务器192.168.0.11(主) 192.168.0.12(从)192.168.0.11(主)安装redisversion: '3.7'services: master: image: redis container_name: redis-master restart: always command: redis-server --port 6379 --requi...

2021-03-31 12:47:34 135

原创 docker-compose 安装mysql 主从 (多台服务器)

docker和docker-compose安装请点击1.准备两台服务器192.168.0.11(主) 192.168.0.12(从)配置mysql主机目录结构192.168.0.11(主)安装mysql创建mysql 的docker-compose.yml文件version: '3'services: mysql: image: mysql restart: always container_name: mysql_mast...

2021-03-31 12:05:55 185

原创 数据库设计及索引优化

数据库设计及索引优化MySQL数据库本身高度灵活,造成性能不足,严重依赖开发人员的表设计能力以及索引优化能力,在这里给几点优化建议时间类型转化为时间戳格式,用int类型储存,建索引增加查询效率 建议字段定义not null,null值很难查询优化且占用额外的索引空间 使用TINYINT类型代替枚举ENUM 存储精确浮点数必须使用DECIMAL替代FLOAT和DOUBLE 字段长度严重根据业务需求来,不要设置过大 尽量不要使用TEXT类型,如必须使用建议将不常用的大字段拆分到其它表 MyS

2020-12-23 10:45:18 62

原创 java代码连接数据库实例

写一个加载驱动的公共方法DBUtilpackage com.zq.framework.config.properties;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;import org.springframework.context.annotation.Configuration;@Configurat

2020-12-22 09:38:09 270 2

原创 一个合格的程序员,要学会代码重构

前几天看了一下别人实习生写的代码,有了大量的if/else,虽然if/else可以帮助我们很方便的写出流程控制代码,也便于阅读,但是有时候的过多的if/else看起来确实不舒服,话不多说,先把代码贴出来:public BaseData updateBaseData(List<DataParams> params) { BaseData data = new BaseData(); for (DataParams dataParams : params) { if (data

2020-12-21 13:11:57 245

原创 微信小程序支付流程

WxPayControllerpackage com.example.demo.com.example.wxPay.controller;import java.math.BigDecimal;import java.util.HashMap;import java.util.Map;import javax.servlet.http.HttpServletRequest;import javax.validation.Valid;import org.slf4j.Logger;i

2020-12-18 10:20:30 363 1

转载 Collectors详解

Student s1 = new Student("aa", 10,1); Student s2 = new Student("bb", 20,2); Student s3 = new Student("cc", 10,3); List<Student> list = Arrays.asList(s1, s2, s3); //装成list List<Integer> ageList = list.stream().map(S...

2020-11-25 15:26:45 764

原创 docker-compose 安装redis

1、创建docker-compose.ymlvim docker-compose.ymlversion: '2'services: redis: image: redis:5.0.0 container_name: redis command: redis-server --requirepass 123456 ports: - "16379:6379" volumes: - ./..

2020-11-18 09:59:20 1694 1

原创 docker-compose 安装mysql

第一步:首先安装docker 和docker-compose安装步骤见我另一篇文章https://blog.csdn.net/qq_37557563/article/details/109747026第二步:在root目录下面建立docker-compose-service/mysql文件夹 docker-compose-service文件是我以后存放所有安装的容器地址新建一个docker-compose.yml文件夹version: '3'service...

2020-11-18 09:53:48 2330 1

原创 linux安装docker和Docker Compose

docker 安装安装依赖包sudo yum install -y yum-utils device-mapper-persistent-data lvm2 设置阿里云镜像源sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 安装 Docker-CEsudo yum install docker-ce报错...

2020-11-17 17:02:23 1820 1

转载 xshell连接到VMware虚拟机(ip地址配置)

1:打开虚拟机在终端输入ip addr(中间有空格),查看本机IP,127.0.0.1为本地环回地址,正确的应该是192.168开头,问题找到了2:输入命令:ls /etc/sysconfig/network-scripts/查看网卡列表,一般默认第一个就是你电脑的网卡。3:输入命令 cat /etc/sysconfig/network-scripts/ifcfg-ens33 查看有线网卡信息。    PS:可以用向上箭头返回之前的指令,然后修改,就不用重复全部输入...

2020-11-17 16:58:57 693

转载 EXPLAIN详解与索引最佳实践

1. EXPLAIN执行计划 使用EXPLAIN关键字可以模拟优化器执行SQL语句,从而知道MySQL是 如何处理你的SQL语句的,分析 你的查询语句或者表结构的性能瓶颈。 语法 :Explain + SQL语句 在 select 语句之前增加 explain 关键字,MySQL 会在查询上设置一个标记,执行查询时,会返回执行 计划的信息,而不是执行这条SQL(如果 from 中包含子查询,仍会执行该子查询,将结果放入临时表 中) 1.1 执行计划作用 表的读取顺...

2020-10-27 08:41:58 1643

原创 mysql查询半年内的数据数量报表格式为1月:20.........

SELECT concat(t1.month,"月") as signingMonth, IFNULL(count(1),0) AS signingNum FROM ( SELECT MONTH(DATE_FORMAT(CURDATE(), '%Y-%m-%h')) as month UNION S...

2020-10-26 08:55:13 1673 1

原创 mysql查询多个表的数据合并行

select ifnull(b.chargeNum,0) as chargeNum,ifnull(a.electricNum,0) as electricNum,ifnull(c.electricity,0) as electricity,ifnull(d.mileage,0) as mileage from ( select count(1) as electricNum from test_car_statistical where type=1 and date(c...

2020-10-26 08:53:10 1976 1

原创 使用mybatis-collection级联功能进行递归查询

表结构汽车品牌表汽车型号表 父级是汽车品牌表主键汽车款式表 父级是汽车型号表主键id业务层就不写了主要是xml层实体类接受格式 一级套一级public class ZqCarBrand implements Serializable { private static final long serialVersionUID = 1L; /** * 汽车品牌id */ private Long id;...

2020-10-21 11:05:03 1753

转载 java的幂等性处理

探讨一下实现幂等性的几种方式什么是幂等性?对于同一笔业务操作,不管调用多少次,得到的结果都是一样的。幂等性设计我们以对接支付宝充值为例,来分析支付回调接口如何设计?如果我们系统中对接过支付宝充值功能的,我们需要给支付宝提供一个回调接口,支付宝回调信息中会携带(out_trade_no【商户订单号】,trade_no【支付宝交易号】),trade_no在支付宝中是唯一的,out_trade_no在商户系统中是唯一的。回调接口实现有以下实现方式。方式1(普通方式)过程如下:1

2020-08-22 14:38:09 479

原创 Java四种线程池创建

我看到过有人开启线程池是这样的newThread(newRunnable() {@Overridepublicvoidrun() {}}).start();这样开启线程是没有问题的,但是有弊端a. 每次new Thread新建对象性能差。b. 线程缺乏统一管理,可能无限制新建线程,相互之间竞争,及可能占用过多系统资源导致死机或oom。c. 缺乏更多功能,如定时执行、定期执行、线程中断。相比new Thread,Java提供的四种线程池的好处在于:a. 重用存在...

2020-08-10 15:09:54 1631 1

原创 Java 生成在线二维码 以Base64返回前端、或者写入到本地磁盘

首先添加版本Maven依赖<dependency> <groupId>com.google.zxing</groupId> <artifactId>core</artifactId> <version>3.3.0</version> </dependency> <dependency> <groupId>com.google.zxing</groupId> <arti

2020-08-01 13:49:25 2012 2

原创 java 后端防止前端重复提交数据

//自定义一个防止重复提交的注解package com.mingwen.common.SubmitMore;import java.lang.annotation.Documented;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annotation.Target

2020-07-17 10:36:21 1784 2

原创 java创建线程的三种方式

/** * 同步孔夫子店内在售商品 * * @param shopNum * @return * @throws java.text.ParseException */ @RequestMapping("/getKFZShopGoods") @ResponseBody public Map<String, Object> getKFZShopGoods(String shopNum) throws java.te...

2020-07-08 16:04:39 1677 1

原创 mybatis里面动态传参${} 和#{}的区别

他们的区别一句话概括:#{name}对数据 加上 双引号,${name}直接显示数据。1、#{name}把传入的参数视为字符串,会预编译,例子:select * from a where name= #{name} 入参name=哈哈其实相当于select * from a where name="哈哈",2、${name} 不会进行预编译,例子:select * from a where name= #{name},入参name=哈哈,其实相当于s...

2020-07-06 17:31:09 2031 1

原创 读取本地图片上次图片服务器

import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import org.springframework.web.multipart.MultipartFile;public static void

2020-06-16 10:48:40 1680 1

转载 Springboot + rabbitMQ实现延迟队列(消费者)

Springboot + rabbitMQ实现延迟队列(消费者)由于太长了,所以分成两篇写,接上一篇讲解了消息的定义和发送,这里继续讲解消费者由于可能每条消息所处理的逻辑可能不一样,例如:常规订单30分钟不支付则取消订单,团购订单一天拼团不成功则取消等等,为了避免在消费者监听类中使用大量if else,这里使用策略模式来处理(由于spring的bean的初始化的时候创建,如果用Java常规的反射获取类,则在具体策略类用注入别的bean的时候,会拿不到值,所以需要通过applicationContex

2020-06-09 16:34:39 162

转载 Springboot + rabbitMQ实现延迟队列(生产者)

Springboot + rabbitMQ实现延迟队列(生产者)前言:在电商系统中,可能有这样一个需求,订单下单之后30分钟后,如果用户没有付钱,则系统自动取消订单。如果用常规的定时器定时去查询,这会造成很大的消耗(频繁访问数据库)。这里选择RabbitMQ来实现类似的功能(使用队列的TTL特性)1.这种模式大概流程,我们需要将消息先发送到ttl延迟队列内,当消息到达过期时间后会自动转发到ttl队列内配置的转发Exchange以及RouteKey绑定的队列内完成消息消费。2.添加mave

2020-06-09 16:33:18 83

原创 Java 生成在线二维码 以Base64返回前端

依赖的jar包主要是Google 的zxing 进行二维码的生成<dependency> <groupId>com.google.zxing</groupId> <artifactId>core</artifactId> <version>3.3.0</version> </dependency> &lt

2020-06-04 18:03:36 2484

转载 Spring Boot(一):入门篇

构建微服务:Spring boot 入门篇什么是Spring BootSpring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。用我的话来理解,就是 Spring Boot 其实不是什么新的框架,它默认配置了很多框架的使用方式,就像 Maven 整合了所有的 Jar 包,Spring Boot 整合了所有的...

2020-06-02 13:08:36 82

转载 springboot 定时器开启

首先,搭建好一个springboot项目,可使用maven或者gradle或者其他(MD不会啊。。。),这个因为本次的重点在于如何添加定时器,本人会在这几天有时间的时候来写一个如何搭建一个简单的springboot的项目的过程。现在时间有限,所以喽。还请各位多包涵。咳咳。好了 进入主题。方法一:通过springboot自带入口来开启定时器。首先我们都知道,springboot有一个自己的入口,也就是@SpringBootApplication(他是一个组合注解 由@Configuration,@

2020-05-25 15:36:08 154

原创 mybatis 一对多collection结合PageHelper分页

PageHelper分页组件public class PageParam { /** * 当前页数(初始页面不用传) */ private Integer pageNum; /** * 分页显示数目(初始页面不用传) */ private Integer pageSize;}/** * 设置请求分页数据 */ protected void startPage(PageParam page)...

2020-05-15 14:59:16 2704

原创 架构的演变

概述本文以淘宝作为例子,介绍从一百个并发到千万级并发情况下服务端的架构的演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知,文章最后汇总了一些架构设计的原则。基本概念在介绍架构之前,为了避免部分读者对架构设计中的一些概念不了解,下面对几个最基础的概念进行介绍:•分布式系统中的多个模块在不同服务器上部署,即可称为分布式系统,如 Tomcat 和...

2019-12-04 15:37:49 1629

原创 在linux上安装jdk并配置环境变量的两种方法

、下载jdk文件我这提供的是官方的地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html。如果你已经下载好了之后就可以跳过这步将这个文件随便放在linux的什么目录都可以。二、解压jdk压缩包先用cd命令进入你放压缩包的文件夹然后执行下面的解压命令解压命令:...

2019-11-20 12:50:42 1856

原创 mysql的触发器

什么是触发器简单的说,就是一张表发生了某件事(插入、删除、更新操作),然后自动触发了预先编写好的若干条SQL语句的执行;特点及作用特点:触发事件的操作和触发器里的SQL语句是一个事务操作,具有原子性,要么全部执行,要么都不执行;作用:保证数据的完整性,起到约束的作用;需求:有一个课程表 学生可以报名,每报名一次生成一个订单记录,课程的剩余报名数量-1,用程序写很简...

2019-11-19 14:47:18 1604

原创 java导出多列excel功能

/** * 导出 * * @return * @throws IOException */ @RequestMapping(value = "/export", produces = "application/json; charset=utf-8") public Map<String, Object> export...

2019-11-18 09:44:23 1949

原创 MySQL锁机制——你想知道的都在这了!

一、锁的类型1. 行锁共享锁(S Lock)允许事务读一行数据 排它锁 (X Lock) 允许事务读一行数据2. 表锁(意向锁)锁定允许事务在行级上的锁和表级上的锁同时存在。为了支持在不同粒度上进行加锁操作,InnoDB存储引擎支持一种额外的锁方式意向共享锁(IS Lock)事务想要获得一张表中某几行的共享锁 意向排他锁(IX Lock)事务想要获得一张表中某几行的排他锁...

2019-10-11 12:58:25 1599

转载 分布式事务

前两天发了工资,第一反应是想着要给远方的女朋友一点惊喜!于是打开了平安银行的APP给女朋友转点钱!填写上对方招商银行卡的卡号、开户名,一键转账!搞定!在我点击的那瞬间,就收到了app的账户变动的提醒,并且出现了图一所示的提示界面:“处理中,正在等待对方银行返回结果…”。嗯!毕竟是跨行转账嘛,等个几秒也正常!脑海开始浮现出女朋友收到转账后惊喜与感动的画面!     然而,一切并没有那么顺利...

2019-10-11 09:47:02 53 1

原创 java遍历Excel文件 并将信息存入数据库

Excel格式:代码:package com.mingwen.imagetest;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.sql.Connec...

2019-09-21 12:35:05 1895

原创 PDF电子发票解析免费版

package cn.test;import com.alibaba.fastjson.JSONObject;import pdf.cn.pdf.parse.PDFReaderUtil;/*** @author 吴顺杰* 2019年7月30日*/public class TestA { public static void main(String[] ar...

2019-09-06 11:04:18 20404 30

纯电动汽车数据(品牌+车型+年份).zip

纯电动汽车数据(品牌+车型+年份) 内含sql 数据格式{ "brandLetter": "A", "children": [{ "children": [{ "id": 7, "name": "2019款R300 原力版", "parentId": 3 }, { "id": 8, "name": "2019款R300 引力版", "parentId": 3 }, { "id": 9, "name": "2019款R300 魔力版"

2020-10-26

PDF电子发票解析免费版

{"fh":"***","fpdm":"034011900111","hjse":"***","fplx":10,"spfsbh":"91510500****","spfyhzh":"","kpfsbh":"*****","hwmxs":[{"hh":1,"ggxh":"","se":"***","dw":"","hwmc":"*****合","dj":"24.90","sl":"1","je":"24.90","slv":"免税"}],"xsf":"(章)","kpr":"****","hjje":"24.90","kpfmc":"****","kpfyhzh":"********3","kpje":"24.90","hwmc":"*****计","kprq":"2020-04-21","spfmc":"泸****有限公司","spfdzdh":"","skr":"胡****","slv":"免税","jqbh":"661700889591","kpfdzdh":"********","fphm":"****","jym":"****"}

2019-07-30

java根据查询出来的结果导出excel表

通过条件查询数据库list,根据list去导出多列的excel表格,亲测有效工具类和代码js controller都放在一起

2019-11-18

中通 圆通 申通 电子面单接口对接

对接中通 圆通 申通 电子面单接口 详细的代码 已经测试完毕 可用 可直接移植到代码中去

2020-09-09

中通 圆通 申通 快递鸟 电子面单接口对接

对接中通 圆通 申通 快递鸟 电子面单接口 详细的代码 已经测试完毕 可用 可直接移植到代码中去

2020-09-10

微信支付pay.zip

微信支付,流程清晰 亲测可用

2020-12-18

PDF电子发票解析免费版

{"fh":"***","fpdm":"034011900111","hjse":"***","fplx":10,"spfsbh":"91510500****","spfyhzh":"","kpfsbh":"*****","hwmxs":[{"hh":1,"ggxh":"","se":"***","dw":"","hwmc":"*****合","dj":"24.90","sl":"1","je":"24.90","slv":"免税"}],"xsf":"(章)","kpr":"****","hjje":"24.90","kpfmc":"****","kpfyhzh":"********3","kpje":"24.90","hwmc":"*****计","kprq":"2020-04-21","spfmc":"泸****有限公司","spfdzdh":"","skr":"胡****","slv":"免税","jqbh":"661700889591","kpfdzdh":"********","fphm":"****","jym":"****"}

2020-04-30

jar解析工具.rar

jar解析工具免费的

2019-08-16

java图片转pdf格式

java将本地图片转化为pdf格式

2019-08-16

圆通面单下单接口demo

圆通最新面单下单接口demo,前段时间圆通官网换了新接口。对应的地址也改了,换成新的地址之后一直报签名错误,签名格式没变,只要是url传参乱码导致的,这一份是最新的demo,

2019-07-17

圆通面单下单接口

接通圆通电子面单下单接口,主要麻烦的是消息签名,具体签名加密方式在代码里面,想给你们一个积分下载的,但是修改不了,坑,还有下单的url改成圆通最新的线上地址,旧的地址好像要废弃了。如果换成新的地址报签名错误,那就是参数乱码了,解决方案将消息内容编码格式改一下params.put(&quot;logistics_interface&quot;,URLEncoder.encode(logistics_interface, &quot;UTF-8&quot;));//消息内容,post请求报文编码也改一下就可以了conn.setRequestProperty(&quot;Content-Type&quot;, &quot;application/x-www-form-urlencoded;charset=utf-8&quot;);

2019-04-24

Xshell+Xftp.zip

Xshell+Xftp

2020-10-26

定时器TimeTask

一个定时任务的例子 ,项目下载下来可以运行

2019-04-24

csdn怎么充值积分了?

发表于 2018-04-13 最后回复 2020-07-08

空空如也

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

TA关注的人 TA的粉丝

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