自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 knife4j 空指针异常

一开始正常访问,但是改着改着,就无法访问了,百度了一圈没找到原因,最后对比了之前版本的区别发现这里有问题。最后把这个注解去掉就好了。只是我本人遇到的问题是这样的,仅供参考。

2024-04-26 17:29:09 462

原创 oracle下载

下载oracle12c

2023-12-27 16:44:59 1606

原创 maven依赖其他项目jar包爆红问题

事情是这样的,今天从仓库里拉了一份之前其他小组的项目,这个项目的情况是先做了一版基础功能,例如登录授权等,加入了一些基础依赖,例如jwt、shiro、swagger等等,然后将这个项目打了一个jar包安装到自己的仓库了,我们暂且称这个jar包为base。然后新建了一个项目,这个项目依赖base jar包,在新建的项目中不去做这些重复的功能,而是直接将上面的jar包依赖过来,新建的项目只做新功能。

2023-06-26 15:56:23 702

原创 java设计模式-工厂模式

所谓工厂模式就是你需要什么产品,你就告诉我,我来帮你创建。例如我们需要不同类型的客户,比如一般客户、重要客户、非常重要客户,那这个时候你跟我说你要哪个客户我就给你创建哪个客户。

2023-05-18 22:15:27 236

原创 Linux安装Tomcat9

Linux 下载安装 Tomcat9

2023-03-01 11:56:40 858

原创 mysql学习笔记-执行计划Explain

mysql执行计划 explain

2022-12-11 19:42:52 119

原创 JUC并发编程

JUC是Java并发编程包java.util.concurrent.locks.Lock 是一个类似于synchronized 块的线程同步机制。但是 Lock比 synchronized 块更加灵活。Lock是个接口,既然是接口那就有实现类,如下图ReadLockWriteLockReentrantLock (可重入锁)在上面的案例中我们提到,new Thread 线程是否会立即创建,并且按照创建的顺序执行?答案是否定的,那么我们如何让线程按照我们指定的顺序去执行?这就是线程间通信!

2022-11-28 19:54:01 467

转载 poi判断excel版本

原始版本 POIFSFileSystem.hasPOIFSHeader(inputstream) 判断HSSF POIXMLDocument.hasOOXMLHeader(inputstream) XSSF 升级版本后改为WorkbookFactory.create

2022-11-24 21:02:37 488

原创 poi 向Excel中插入图片

主要解释poi向excel中插入图片时八个参数的设置

2022-11-17 15:40:57 5533 15

原创 poi 自动换行与行高

当不设置行高的情况,自动换行会自己撑开高度。如果设置了固定高度,则不会撑开,需要自己计算。我这里一开始设置了固定高度,后来通过宽度计算文字长度,再用默认高度乘倍数。

2022-11-08 10:18:07 5504 2

原创 ORA-01460:unimplemented or unreasonable conversion

oracle9i 版本的数据库,mybatis-plus xml 查询,最终驱动换成ojdbc6 才好

2022-11-05 09:59:12 842

原创 java springboot websocket使用

今天遇到了一个问题,需求是前端要实时展示后台订单,当订单状态发生变更的时候,前端也要及时展示。一开始考虑的方案是前端使用定时器轮训请求后端接口查询数据,后来前端说js的定时器不稳定,于是考虑后端主动推送给前端的方案,于是这里使用socket让前后端建立连接,并主动给前端推送。...

2022-07-01 10:19:05 594

原创 阿里云服务器Linux 安装Nginx

阿里云 安装 ngxin

2022-06-10 11:49:09 1255 2

原创 阿里云服务购买及安装jdk redis Nginx

记录一次自己购买阿里云并安装jdk redis Nginx 环境

2022-06-09 10:28:37 385

原创 springboot整合shiro 配置详解及原理分析

springboot整合shiro+jwt实现前后端分离认证授权前言问题ShiroFilter什么是ShiroFilterSecurityManager什么是SecurityManager?ShiroConfig写在前面的话:ShiroConfig类:CustomRealm类:shiroConfig原理前言最近搞了下shiro安全框架,网上找了好多篇博客,感觉要么都是复制粘贴,要么就是错误百出。至于稍微讲解一下为什么要这么做,就更别说了。这篇文章就教大家如何将 Shiro 整合到 SpringBoot

2022-03-23 20:15:54 1748

原创 java设计模式之策略模式

需求:查询年龄大于20岁的用户查询工资大于5000的用户准备一个用户实体类@Data@AllArgsConstructor@ToStringpublic class User { private String name; private int age; private double salary;}测试类@SpringBootTestclass PracticeApplicationTests { //准备一个操作的集合模拟查询数据库 private

2022-03-22 21:29:21 361

原创 java hashMap 原理

hashMap的特性,无序,不重复hashMap的底层数据接口 数组+链表hashMap的加载因子0.75hashMap的初始大小16put方法当我们声明一个hashMap的时候,并且往该map中put元素的时候,HashMap map = new HashMap();map.put("hundred",100)hashMap首先将k,v封装到Node对象当中(节点)。然后会调用key的hashCode方法算出hash值,然后根据哈希算法算出该key要存放的数组的下标,这时候会出现两种

2022-03-11 08:31:48 153

转载 docker配置mysql主从复制

docker配置mysql 主从复制前言配置前准备1.创建两个数据库2.获取主库容器的ip地址主库配置1.编辑my.cnf配置文件2.重启容器3.查看二进制日志是否开启4.查看主节点的server id5.创建有复制权限的用户slave6.查看File和Position字段的值从库配置1.编辑my.cnf配置文件2.重启容器3.进入从数据库设置主数据库信息4.启动主从复制5.查看主从同步状态6.设置从库只读测试1.主库中创建数据库2.测试从库是否只读文章来源: https://www.modb.pro/d

2021-10-13 16:30:13 425 2

原创 Windows mysql 5.7 报某些服务在未由其它服务或程序使用时将自动停止”。

问题描述安装了mysql 5.7版本 ,目录结构如图:在一开始的时候我的配置文件名字是mysql.ini 然后启动服务是成功的,注意这里的配置文件名称是不对的,正确的是my.ini。后来由于5.7版本的mysql 会出现 this is incompatible with sql_mode=only_full_group_by 这个问题,于是重新在配置文件中加入了设置sql_mode的配置,下面的# 设置sqlmode sql_mode = NO_ZERO_IN_DATE,NO_ZERO_DATE,E

2021-09-18 13:33:25 748

原创 springboot整合redis并使用json序列化器

springboot整合redispom文件引入依赖添加配置类测试最终效果pom文件引入依赖<!--redis--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </d

2021-09-08 16:42:51 753

原创 Java生成二维码图片并打包下载

Java生成二维码图片并打包下载Java 操作二维码的开源项目很多,如 SwetakeQRCode、BarCode4j、Zxing 等等,本文使用的是google 公司的 zxing,zxing 使用方便,可以操作条形码或者二维码等,不仅有 java 版本,还有 Android 版。不多说上代码maven 依赖 <dependency> <groupId>com.google.zxing</groupId> <artifactI

2021-08-17 18:28:11 1384 1

原创 1142-SHOW VIEW command denied to user

这个用户查看了上图中的视图的时候,报了这个错,解决办法:使用root用户登录,然后选中视图,右键设置权限,勾选select 和show view 权限即可

2021-07-07 18:39:44 2562

原创 spring AOP 面向切面的理解与基本使用

spring AOP 面向切面的理解与基本使用基本概念案例添加一个自定义注解添加切面类目标方法最终结果执行步骤总结基本概念Aspect(切面): Aspect 声明类似于 Java 中的类声明,在 Aspect 中会包含着一些 Pointcut 以及相应的 Advice。Joint point(连接点):表示在程序中明确定义的点,典型的包括方法调用,对类成员的访问以及异常处理程序块的执行等等,它自身还可以嵌套其它 joint point。Pointcut(切点):表示一组 joint point,

2021-07-01 10:40:06 234

原创 MYSQL 如何用update语句 更新 某个字段,让字段值递增

需求,更新数据库某个字段,要求根据创建日期,更新改字段,例如2021-07月的数据,则更新七月的数据为 202107001 、202107002 、202107003…sql如下:set @rownum=0;update t_weighted_managementSET weighting_code = CONCAT(coal_type ,DATE_FORMAT(create_time,'%Y%m%d'),SUBSTR(CONCAT('000',(select @rownum := @rownum

2021-06-22 19:57:13 8341 5

原创 vue router 钩子函数 与 axios 拦截器区别

以下内容纯属个人理解,如有不妥欢迎指正!vue router 钩子函数 与 axios 拦截器区别:axios的拦截器是针对http请求的拦截,分请求拦截和响应拦截。请求拦截一般会在拦截器中实现请求路径的设置,例如统一前缀、请求头token设置等。如下是统一设置tokenaxios.interceptors.request.use(config=>{ //携带token let token = localStorage.getItem(TOKEN); if(token){

2021-05-17 17:06:34 315

原创 vue 用axios发送post请求返回状态400

我的情况是参数设置错误,如下controller中接收参数使用@requestBody注解来与实体类绑定controller 代码如下:@RequestMapping(value = "/addOrUpdate",method = RequestMethod.POST) public Result addOrUpdate(@RequestBody ExemptExam exemptExam){ Result result = new Result(); try {

2021-05-12 15:41:37 1612

原创 Context [/] startup failed due to previous errors

今天项目启动报错,一个ssm的项目,使用Tomcat8部署。依赖不报错,项目也不报错,但是启动报错最终发现原因是pom文件 的打包方式是pom,后来改成了war就好了。提供一个思路吧。<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.

2021-05-06 10:49:36 442 1

原创 swagger添加注解后不显示接口信息问题

相当低级的一个问题。controller 类上添加 了@Api注解后,swagger 的ui界面上不显示接口信息。后来才发现。controller类上没加controller注解,导致类没有被加入容器中。淦

2021-04-15 16:53:59 14180

原创 antd vue Modal 弹窗位置调整

ant design vue 默认 的modal弹窗组件,收到的要求是弹窗能比默认的位置高一点用官方文档的属性写法如下: <a-modal title="新增" :visible="visible" :footer="null" @cancel="handleCancel" width="70%" :dialogStyle="dialogStyle"> <front-computer-add-tab :school-codes="options" v-on:notif

2021-04-02 17:04:01 12084 2

原创 antd vue type check failed for prop “fileList“. Expected Array, got Function

我这个是在使用上传组件的时候报了这个错这个错的意思就是,检查 fileList 这个属性,期望的是数组,结果获取到的是个函数。组件要求这个属性是个数组类型的正确的写法:附源码,上传的那个函数是自己封装的。<template><div> <a-modal title="附件上传" :visible="visible" :footer="null" @cancel="handleCancel"> <a-upload name="

2021-04-01 09:35:51 3549 2

原创 Vue高级

Vue高级上一篇中介绍了vue的基础部分,包括指令、组件、生命周期等,基本上已经可以在平常的开发中使用,接下来介绍Vue高级部分,包括路由、脚手架、elementUI等等。

2021-03-16 17:27:43 157

原创 安装vue-cli提示vue不是内部或外部命令时的解决方法

当我们使用npm 或cnpm使用命令npm install -g vue-cli 安装完脚手架后,使用命令vue init webpack project_name来初始化vue项目时,提示说 vue不是内部或外部命令时的解决方法;原因很明显是因为没有找到vue.cmd,或者该命令没有在path环境变量中。我们可以打开cmd命令行窗口输入path 查看环境变量中是否配置了vue.cmd所在的路径;一般我们使用npm全局安装会将vue-cli安装到node的本地仓库,可以使用命令npm config ls

2021-03-10 18:32:29 4512 1

原创 webmagic框架使用

package com.fenglu.webmagic;import us.codecraft.webmagic.Page;import us.codecraft.webmagic.Site;import us.codecraft.webmagic.Spider;import us.codecraft.webmagic.processor.PageProcessor;public class GithubRepoPageProcessor implements PageProcessor {

2021-02-23 23:22:14 429 4

原创 Nginx学习笔记

Nginx官网下载基本概念什么是NginxNginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。Nginx是一款轻量级

2021-02-10 08:38:41 185

原创 多线程批量更新数据

做了一个导入的功能,然后根据Excel中的数据更新库里的数据,一共六千多条。并不是很大量。一开始使用mybatis-plus自带的batchUpdateById方法更新,默认三十条数据一提交,后来改为500条一提交,用时四十多秒if (updateEmp.size() > 0){ this.updateBatchById(updateEmp);}然后改为多线程批量提交,用时四十毫秒,差距何止十倍if (updateEmp.size() > 0){ logger.debug("

2021-02-03 16:19:50 2278

原创 css定位 position

css定位场景当我们需要一个元素在某个盒子内移动位置,并且压住其他盒子当滚动条滚动时,某个元素保持不动定位组成将盒子定在某个位置,所以定位也是在摆放盒子,按照定位的方式移动盒子定位= 定位模式 + 边偏移定位模式用于指定一个元素在文档中的定位方式。边偏移则决定了该元素的最终位置定位模式(position)值语义static静态定位relative相对定位absolute绝对定位fixed固定定位边偏移left right top b

2021-01-28 21:15:22 231 1

原创 css 弹性盒子 flex布局

css弹性盒子flex 布局什么是flexflex是flexible Box的缩写,意为弹性布局,用来为盒装模型提供最大的灵活性。任何一个容器都可以指定为flex布局,不仅是div这种行级元素,还有span这种块级元素,都可以指定为flex布局。当我们为父盒子指定为flex布局以后,子元素的float、clear(清除浮动)和vertical-align属性将失效伸缩布局=弹性布局=伸缩盒布局=弹性盒布局=flex布局采用flex布局的元素,称为Flex容器,简称容器,它所有的子元素自动成为

2021-01-26 21:49:12 893 2

原创 springboot 缓存管理

springboot 缓存springboot与缓存JSR-107规范spring boot的缓存抽象缓存使用案例与常用注解缓存原理解析spring boot集成redis序列化配置测试@Cacheing和@CacheConfig注解指定缓存key的方法笔记来源:尚硅谷b站spring boot高级视频教程springboot与缓存JSR-107规范为了统一缓存的开发规范、提高系统的扩展性和最小化开发成本等,J2EE 发布了 JSR-107 缓存规范。Java Caching 定义了 5 个核心接

2021-01-17 21:17:36 187 2

原创 Word插入目录

步骤:输入章节当我们写完上面这种格式后,就要分别给每个标题设置。比如第一级就用标题一或者标题2之类的给它标记,下面的第三级第四级标题都一样。如果觉得设置的标题字体太大或者样式不好,可以自己指定鼠标移入右键显示修改样式,在这里可以调整标题样式。设置完成后,点击插入空白页,然后在空白页点击引用然后点击自动目录就能生成了...

2021-01-14 10:09:31 3643

原创 js Map与json的转化

本来打算将map转为json字符串存入window.localstorage中,结果发现无法转为json字符串var map = new Map(); map.set(21,'A');map.set(22,'B');console.log(JSON.stringify(map));打印结果:不知道为啥,之后换了个方式,循环map,将map转为对象,然后循环对象,如下:let info={};for(let[key,val] of map){ info[key]=val} ;c

2021-01-12 12:32:06 1539 1

空空如也

空空如也

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

TA关注的人

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