自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 windows Java服务异常停止后重新启动

windows Java服务异常停止后重新启动

2023-11-30 15:43:38 409

原创 文件工具类

import lombok.extern.slf4j.Slf4j;import org.apache.poi.ss.usermodel.Workbook;import org.springframework.util.CollectionUtils;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.BufferedInputStrea.

2021-11-01 17:03:19 147

原创 SpringBoot-logback.xml

<?xml version="1.0" encoding="UTF-8"?><configuration debug="false"> <!--定义日志文件根目录 配置文件或者写死全路径,慎用相对路径 --> <!--${LOG_PATH:- } 的值取自配置文件中的logging.path 属性--> <!--<property name="LOG_PATH" value="${LOG_PATH:- }" />--> &

2021-10-20 17:54:01 293

原创 springbot websocket服务端、客户端实现

1、依赖 <!--websocket 服务端--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> </dependency> <!--webso

2021-08-14 14:08:46 286

原创 JAXB xml与java对象间转换

1、工具类import org.apache.commons.lang3.StringUtils;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import javax.xml.bind.JAXBContext;import javax.xml.bind.Marshaller;import javax.xml.bind.Unmarshaller;import java.io.StringReader;import java.i

2021-08-12 17:10:32 196

原创 springboot整合easypoi多sheet导入导出

依赖 <dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-web</artifactId> <version>3.2.0</version> </dependency>easypoi多sheet导入导出工封装工具类import cn.afterturn.easypoi.excel.ExcelE

2021-07-16 14:55:43 597

原创 springboot全局异常处理(参数校验)

import org.springframework.web.bind.MethodArgumentNotValidException;import org.springframework.web.bind.annotation.ControllerAdvice;import org.springframework.web.bind.annotation.ExceptionHandler;import org.springframework.web.bind.annotation.ResponseBo

2021-07-07 11:51:54 75

原创 Springboot整合rabbitmq

1、依赖及配置文件依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency>配置文件# mq配置spring.rabbitmq.host=127.0.0.1spring.r

2021-07-02 17:42:35 94

原创 SpringBoot整合swagger2

1、依赖 <!--swagger2 接口文档--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dep

2021-06-23 16:44:45 58

原创 Springboot整合邮件发送

1、依赖 <!-- 邮件发送包 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> <version>1.5.9.RELEASE</version>

2021-06-23 15:15:00 288 1

原创 非事务方法和事务方法互相调用及事务传播行为

package com.example.demoge.controller;import com.example.demoge.service.TCouponInfoService;import io.swagger.annotations.Api;import io.swagger.annotations.ApiOperation;import org.springframework.beans.factory.annotation.Autowired;import org.springfra

2020-08-29 16:30:20 1591 1

原创 0-1背包动态规划,获取最优选择和最优解

package com.example.demo.paixu;import java.util.Scanner;/** * @Description TODO * @Date 2020/4/19 16:10 * @Created by zengq */public class Dp { public static void main(String[] args) { ...

2020-04-19 17:27:17 387

原创 n个台阶,每次可以走1或2阶,问有多少种方式

循环和递归方式实现及比较package com.example.demo.paixu;import java.math.BigInteger;import java.util.HashSet;import java.util.Scanner;import java.util.Set;/** * @Description TODO * @Date 2020/4/8 21:16 ...

2020-04-19 15:24:46 805

原创 全局异常处理

package com.haylion.maastaxi.facade.exception;import com.haylion.maastaxi.common.code.SysStubInfo;import com.haylion.maastaxi.common.exception.ApplicationException;import com.haylion.maastaxi.fac...

2020-01-07 14:45:45 110

原创 华为云-号码隐私保护

司乘,中介,短暂接触关系中保护号码隐私AXB,AX模式拨打电话,发送短信,通话录音,通话监控等package com.haylion.maastaxi.common.utils;import com.alibaba.fastjson.JSONObject;import java.util.Map;/** * @author zengqifeng * @version 1.0...

2020-01-07 14:45:00 1145 1

原创 jdk8新的日期时间API

jdk8新的日期时间APIpackage com.zenqgifeng.practicedemo.jdk8newproperties;import org.junit.Test;import java.text.ParseException;import java.text.SimpleDateFormat;import java.time.Clock;import java.ti...

2020-01-07 11:23:50 150 1

原创 Optional判空

jdk8新特性Optionalpackage com.zenqgifeng.practicedemo.jdk8newproperties;import org.junit.Test;import java.util.Optional;/** * @author zengqifeng * @version 1.0 * @date 2020/1/3 17:38 * Optiona...

2020-01-07 11:20:29 698

原创 ForkJoin框架

ForkJoin框架package com.zenqgifeng.practicedemo.jdk8newproperties;import java.util.concurrent.ForkJoinPool;import java.util.concurrent.RecursiveTask;import java.util.stream.LongStream;/** * @aut...

2020-01-07 11:15:26 101

原创 串行Stream流和并行Stream流

串/并行Stream流package com.zenqgifeng.practicedemo.jdk8newproperties;import org.junit.After;import org.junit.Before;import org.junit.Test;import java.util.ArrayList;import java.util.Collections;i...

2020-01-07 11:14:14 1668

原创 Stream流

JDK8新特性-Stream流package com.zenqgifeng.practicedemo.lambda;import org.junit.Test;import java.io.Serializable;import java.util.ArrayList;import java.util.Arrays;import java.util.Collection;impo...

2020-01-02 17:47:04 126

原创 方法引用

方法引用package com.zenqgifeng.practicedemo.lambda;import org.junit.Test;import java.util.function.Consumer;import java.util.function.Function;import java.util.function.Supplier;/** * @author ze...

2020-01-02 17:46:20 90

原创 接口内容变更

JDK8新特性-接口内容变更package com.zenqgifeng.practicedemo.lambda;/** * @author zengqifeng * @version 1.0 * @date 2019/12/31 11:25 * lambda表达式的作用其实和匿名内部类一样 最终都是重写方法,创建了该接口的子类及子类对象传递给调用方 * 所以只要接收方...

2020-01-02 17:45:21 399

原创 lambda表达式

JDK8新特性-lambda表达式package com.zenqgifeng.practicedemo.lambda;/** * @author zengqifeng * @version 1.0 * @date 2019/12/31 11:25 * lambda表达式的作用其实和匿名内部类一样 最终都是重写方法,创建了该接口的子类及子类对象传递给调用方 * 所以只要...

2020-01-02 17:43:19 147

原创 redis阶段one

redis简介redis:高性能键值对nosql数据库,以单线程方式处理请求(原子性操作),基于内存存取数据。解决海量用户,高并发情况下数据处理问题。问题描述:关系型数据库在海量数据,高并发下数据处理的问题1、性能瓶颈:磁盘IO性能低下。2、扩展瓶颈:关系型数据库数据之间关系复杂,扩展性差,不便于大规模集群。解决方案:1、内存IO2、去掉数据键的复杂性redis特性...

2019-12-27 18:01:26 159 1

原创 分布式全局唯一id生成器

根据机器标识生成唯一id同一毫秒id自增package com.zengqifeng.rocketmqconsumer.utils;public class IDWorker { /** * 起始的时间戳 */ private final static long START_STMP = 1480166465631L; /** ...

2019-12-27 16:53:58 246

原创 CPU/缓存/内存/磁盘

CPU:先从缓存中拿指令,没有就去内存中拿,但无法直接和磁盘交互。缓存:就是内存的一部分,它的存在是为了解决CPU和内存读取速度差异过大问题。内存:磁盘上的任何程序代码都必须先加载进内存才能被CPU执行,计算机突然停电会导致内存中的数据丢失。磁盘:存储数据。...

2019-12-27 14:41:32 449

原创 java网络编程

软件结构c/s结构 客户端服务器b/s结构 浏览器服务器网络通信协议应用层 http ftp 等传输层 tcp udptcp:连接的,可靠的传输(安全性高于udp) tcp三次握手,严格区分客户端和服务端udp:无连接的,不可靠的传输(传输效率高于tcp)网络层 ip icmp igmp数据链路层 设备驱动程序及接口 相关协议IP地址和端口号IP标...

2019-12-27 11:22:48 96

原创 java注解

注解定义:jdk1.5出现的新特性,与类,接口,枚举属同一层级,可用于包,类,属性,方法,方法参数前用于说明这些元素。作用分类1、编写文档(注解标识 Javadoc生成文档)javadoc 类名.java 可根据注解注释得出文档2、代码分析(通过反射,分析注解标注的地方)3、编译检查(代码里标识的注解让编译器能够实现基本的编译检查)预定义注解1.@Override ...

2019-12-26 14:58:38 77

原创 java反射机制

反射是框架的灵魂框架:半成品软件,在框架的基础上能简化开发,提高开发效率。反射:将类的各个组成部分封装为其他对象,这就是反射机制。好处:1、可以在程序运行过程中操作这些对象2、解耦,提升可扩展性获取Class对象的三种方式(对应着图中三个阶段)1、Class.forName(“全类名”):源码阶段多用于配置文件,全类名配置在配置文件中2、类.class:字节码文件加载进内存中多...

2019-12-25 16:38:15 86

原创 notepad++插件查看和修改Linux服务器文件

step onestep two

2019-12-20 18:23:33 659

原创 Linux设置环境变量的三种方式

2019-12-17 14:48:46 71

原创 Linux常用命令总结

nohup:no hang up 的缩写,不挂起,该命令没有后台运行的意思,指的是SSH客户端关闭也不会终止该命令。命令结尾添加 &表示后台运行。

2019-12-16 15:45:36 82

原创 SpringIOC、DI,DispatchServlet

IOC:控制反转,对象的创建和管理交由容器,被依赖者只需通知容器,在需要时注入依赖对象。为什么要是用控制反转:依赖对象被统一维护和管理,更具测试性,重用性,可维护性。DI:依赖注入Spring提供两种类型的容器BeanFactory和ApplicationContext前者是较早期的容器,内存资源不太够的情况下,使用懒加载启动容器,容器启动时不会立即创建所有对象,而是在对象第一次被调用是...

2019-12-16 10:55:04 142

原创 关于ThreadLocal的结构简图

Thread ,ThreadLocals,ThreadLocal三者的关系每一个Thread中都维护着一个类型为Map<ThreadLocal,vlaue>的threadLocals对象,该对象为每个线程私有。其中键为ThreadLocal。当我们调用ThreadLcoal对象的set(value)方法时,会先知道当前的Thread currentThread。然后这个Threa...

2019-12-13 18:26:38 561

原创 Spring-Swagger使用

全局配置package com.qifeng.springswagger.config;import org.springframework.context.annotation.Bean;import org.springframework.stereotype.Component;import springfox.documentation.builders.ApiInfoBuild...

2019-12-13 17:09:51 176

原创 preHandler、postHandler、afterCompletion

preHandler调用时间:Controller方法处理之前执行顺序:链式Intercepter情况下,Intercepter按照声明的顺序一个接一个执行若返回false,则中断执行,注意:不会进入afterCompletionpostHandler调用前提:preHandle返回true调用时间:Controller方法处理完之后,DispatcherServlet进行视图的渲染之...

2019-12-13 14:45:51 3815 1

原创 SpringBoot全局异常处理

java异常的层次和分类,图片所示都是类而非接口。其中,checkedException属于编译时异常,我们要进行捕获处理或者往顶层抛出,交给顶层调用者去处理,这种异常是程序能够识别和处理的,不需要人为干预。uncheckedException属于程序无法控制的,需要知道这些异常信息,然后进行人为干预,以帮助开发人员快速定位和解决问题(特别是系统越大越复杂的时候)。统一异常处理类pack...

2019-12-13 14:23:12 132

原创 @ControllerAdvice注解的使用

@ControllerAdvice增强Controller,里面可以使用三个注解@ExceptionHandler@InitBinder@ModelAttribute对@RequestMapping注解标记的方法做增强@RestControllerAdvice 等价于 @ControllerAdvice+@ResponseBody查看@RestControllerAdvice源码可知,...

2019-12-13 11:11:16 435

原创 使用ResponseBodyAdvice接口对返回数据做统一格式封装(对Controller的增强)

@ControllerAdvice注解不能少ResponseBody增强类package com.qifeng.authdemo.advice;import com.qifeng.authdemo.view.JsonView;import org.springframework.core.MethodParameter;import org.springframework.http.M...

2019-12-13 10:05:30 617

原创 使用Interceptor拦截请求,做请求预处理(如根据用户token,预设值用户信息)

1、编写拦截器类(实现HandlerInterceptor,@Component注解)2、注册拦截器类(@Configuration注解不能少)拦截器类package com.qifeng.authdemo.interceptor;import org.springframework.stereotype.Component;import org.springframework.web...

2019-12-13 09:51:54 331

空空如也

空空如也

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

TA关注的人

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