自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 问答 (2)
  • 收藏
  • 关注

原创 Windows环境下安装RocketMQ,及SpringBoot整合RocketMQ

一.预备环境Windows、JDK1.8、Maven、Git二. RocketMQ部署下载1.1 地址:http://rocketmq.apache.org/release_notes/release-notes-4.3.0/1.2 选择‘Binary’进行下载1.3 解压已下载工程![在这里插入图片描述](https://img-blog.csdnimg.cn/f40893df2a484a819214a78f2b84fdde.png?x-oss-process=image/waterma

2021-09-28 16:06:36 756

原创 获取使用该注解的方法参数

解析参数成map的方法。方便根据方法参数进行逻辑处理。

2023-05-08 17:30:02 266

原创 json与Java对象转换适配器

【代码】json与Java对象转换适配器。

2023-03-23 11:37:56 129 2

原创 fastjson把json合并成一层 json拍平

json拍平,把json合成一个层级。

2023-03-23 11:26:43 549

原创 stream求多个list集合的处理

假设集合中元素的类型为Object,那多个集合数据结构为List。我们知道,求两个集合的交集方法为list1.retainAll(list2)。对多个集合求交集也就是多个集合两两求交集,这就可以使用Java8新语法中的reduce方法。最近在工作中需要些一个接口,就是求多个教室的公共课程,这就涉及到求多个集合的交集。

2022-10-25 15:15:26 1020

原创 通过@FeignClient调用接口下载文件

开发使用Feign做微服开发调用客户端时,几乎都是普通接口调用,返回一些JSON数据, 今天刚好要进行Feign客户端(服务消费者)调用服务提供者的文件下载接口,记录一下!代码如下。

2022-08-16 14:29:05 1615

原创 java web中统一结果返回封装类JsonResult

javaweb中统一结果返回封装类JsonResult。

2022-07-22 11:08:19 784

原创 Java中将List转为树形结构

Stream流处理 @Override public List<CategoryEntity> listWithTree() { // 1、查出所有分类 List<CategoryEntity> entities = baseMapper.selectList(null); // 组装成父子的树形结构 return entities.stream().filter(m1 ->

2022-05-17 18:42:59 697

转载 Java秒杀系统的设计与实现

一、系统设计1.1 秒杀系统概述特点:1)时间短、瞬间访问量大2)读多写少的场景。(库存固定则写操作固定,但访问量肯定无限大)难点:1)库存只有一份,但大量用户在集中时间对该数据进行读写。2)秒杀系统之所以挂,是因为请求没有经过上游的过滤与拦截,直接压倒在下游的数据层。常见的 Java Web 架构:1.2 优化思路核心思想:尽量将请求拦截在系统上游;读多写少的场景使用缓存介绍一些常见的操作:1)浏览器端的拦截点击 “购买” 后,按钮置灰,禁止用户重复提交请求。通过 JS 代

2022-02-07 17:59:59 4845

原创 Redis实现分布式锁的7种方案

日常开发中,秒杀下单、抢红包等等业务场景,都需要用到分布式锁。而Redis非常适合作为分布式锁使用。本文将分七个方案展开,跟大家探讨Redis分布式锁的正确使用方式。如果有不正确的地方,欢迎大家指出哈,一起学习一起进步。什么是分布式锁方案一:SETNX + EXPIRE方案二:SETNX + value值是(系统时间+过期时间)方案三:使用Lua脚本(包含SETNX + EXPIRE两条指令)方案四:SET的扩展命令(SET EX PX NX)方案五:SET EX PX NX + 校验唯一随

2022-02-07 14:17:34 404

原创 利用自定义注解切面做系统操作日志记录

一、定义自定义注解:package com.zb.common.log;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;@Target({Eleme

2022-01-24 10:02:02 532

原创 maven阿里镜像配置setting文件

<?xml version="1.0" encoding="UTF-8"?><!--Licensed to the Apache Software Foundation (ASF) under oneor more contributor license agreements. See the NOTICE filedistributed with this work for additional informationregarding copyright ownershi

2021-09-27 11:18:22 1557

原创 生成从0001递增的code

/** * 生成code * * @return * @throws Exception */ public static String codeGenerate() throws Exception { CodeInfoDao dao = new CodeInfoDao(); String code = null; //查询数据库中的所有的数据 List<Map<Strin

2021-09-09 14:22:42 375

原创 stream API实战

/** * @Description: 题目:请按照给出数据,找出同时满足以下条件的用户,也即以下条件全部满足 * 偶数ID且年龄大于24且用户名转为大写且用户名字母倒排序 只输出一个用户名字 */public class StreamDemo { public static void main(String[] args) { User u1 = new User(11, "a", 23); User u2 = new User(12, "b", 24

2021-08-06 08:33:55 92

原创 SpringBoot集成JWT实现权限认证

一、JWT认证流程认证流程如下:1、用户使用账号和密码发出post请求;2、服务器使用私钥创建一个jwt;3、服务器返回这个jwt给浏览器;4、浏览器将该jwt串在请求头中像服务器发送请求;5、服务器验证该jwt;6、返回响应的资源给浏览器。二、SpringBoot整合JWT新建一个spring boot项目spring-boot-jwt,按照下面步骤操作。1.pom.xml引入jar包<!-- 引入jwt--><dependency> <gr

2021-07-05 21:57:00 645

原创 BaseResponse、CommonResult公共响应类

package com.yh.middleware.common;/** * 公共响应类 * * @param <T> * @author simple * @date 2018年5月21日 */public class BaseResponse<T> { private static final int CODE_SUCCESS = 200; private static final int CODE_FAIL = 500; priv

2021-07-05 21:49:47 1187

原创 windows下elasticsearch系列产品安装教程

安装elasticsearch-7.6.11、安装jdkelasticsearch-7.6.1依赖至少jdk1.8,所以先安装java运行环境jdk1.8或1.8以上版本2、解压elasticsearch-7.6.1-windows-x86_64.zipelasticsearch-7.6.1\config\jvm.options 中修改内存占用大小:-Xms256m-Xmx1gelasticsearch-7.6.1\config\elasticsearch.yml 中:(此配置是为了让el

2021-01-28 12:09:52 332

原创 Spring Boot中使用Swagger2构建强大的RESTful API文档

由于Spring Boot能够快速开发、便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API。而我们构建RESTful API的目的通常都是由于多终端的原因,这些终端会共用很多底层业务逻辑,因此我们会抽象出这样一层来同时服务于多个移动端或者Web前端。这样一来,我们的RESTful API就有可能要面对多个开发人员或多个开发团队:IOS开发、Android开发或是Web开发等。为了减少与其他团队平时开发期间的频繁沟通成本,传统做法我们会创建一份RESTful API

2021-01-16 23:25:44 176

原创 从文本中提取图片路径(java 解析富文本处理 img 标签)

org.jsoup jsoup 1.11.2 public static String documentBody (String newsBody) {Element doc = Jsoup.parseBodyFragment(newsBody).body(); Elements pngs = doc.select(“img[src]”); String httpHost = “http...

2020-08-19 09:35:34 1599

原创 基于Jsqlparser的sql解析功能,并获取表名和where后面的条件

首先导入依赖:<dependency> <groupId>com.github.jsqlparser</groupId> <artifactId>jsqlparser</artifactId> <version>3.0</version></dependency>个别项目中使用3.0版本会与项目冲突,可设为1.4版本<!-- https://mvnrepository.com

2020-08-15 14:22:24 9096 6

原创 jfinal打包bat文件

@echo offrem -------------------------------------------------------------------------remrem 使用说明:remrem 1: 该脚本用于别的项目时只需要修改 MAIN_CLASS 即可运行remrem 2: JAVA_OPTS 可通过 -D 传入 undertow.port 与 undertow.host 这类参数覆盖rem 配置文件中的相同值此外还有 undertow.resourcePath

2020-07-23 16:05:17 361

原创 java多线程常用方法及部分代码示例

Object类相关api(相关的方法一定是当前线程在获取了对应的锁对象才能调用,否则会抛出异常)o.wait() :锁对象调用该方法使当前线程进入等待状态,并立刻释放锁对象,直到被其他线程唤醒进入等锁池。o.wait(long) :锁对象调用该方法使当前线程进入等待状态,同时释放锁对象。但是超过等待的时间后线程会自动唤醒,或者被其他线程唤醒,并进入等锁池中。o.wait(long,int) :和o.wait(long)方法一样,如果int参数大于0则前面的long数字加1o.notify():随机唤

2020-07-18 13:25:31 268

原创 Java多线程实现下载三百万头像图片

Java多线程实现下载三百万头像图片最近有个要从接口以翻页的形式获取300万数据存入数据库中;并下载头像图片的需求。第一步把接口中数据获取并保存到本地数据库中,第二部从数据库中读取三百万条数据并用多线程下载图片。废话不多说,直接上代码:代码片.// An highlighted blockimport javax.print.DocFlavor;import java.io.*;import java.net.MalformedURLException;import java.net.URL;

2020-07-17 22:05:17 651

原创 json字符串转list

List meterList= JSONArray.parseArray(paraMap.get(“metersList”).toString(),Map.class);

2020-07-13 09:15:37 113

空空如也

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

TA关注的人

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