java
文章平均质量分 53
QQ:3083155908
只有更好,没有最好
展开
-
SpringBoot查询指定范围内的坐标点
添加坐标点: geoadd region 117.130313 31.84504 "shuxihu" 117.143635 31.838962 "chanyeyuan" 117.143635 31.838962 "shiyanxiaoxue" 117.123423 31.842912 "aolai" 117.207504 31.879882 "zhiwuyuan"springframework中已经加入了对redis geo的支持,相关的类都在org.springframework.data.geo包下。原创 2023-11-29 15:42:29 · 756 阅读 · 0 评论 -
SpringBoot集成七牛云对象存储服务
accessKey(公钥)、secretKey(私钥)、bucket(新建的空间名称)、domain(外网访问的域名)需要完成实名认证还能使用,实名认证后获取。2.pom.xml中加入依赖。1.注册、登录七牛云。原创 2023-03-22 16:17:34 · 245 阅读 · 1 评论 -
SpringBoot实现配置文件的加密和解密
如果java.security文件中没有配置crypto.policy,那么会像jdk之前版本一样,加载jre/lib/security目录下的local_policy.jar, US_export_policy.jar,并使用其代表的策略;如果java.security文件中没有配置crypto.policy并且jre/lib/security目录下没有local_policy.jar, US_export_policy.jar,那么会启用默认不限制密钥长度机制。1.新建一个springBoot项目。原创 2023-01-31 17:34:36 · 1196 阅读 · 0 评论 -
Redis处理client连接数过多,大量空闲链接无法释放
oll: 输出列表包含的对象数量(当输出缓冲区没有剩余空间时,命令回复会以字符串对象的形式被入队到这个队列里)qbuf-free: 查询缓冲区剩余空间的长度(字节为单位, 0 表示没有剩余空间)qbuf: 查询缓冲区的长度(字节为单位, 0 表示没有分配查询缓冲区)obl: 输出缓冲区的长度(字节为单位, 0 表示没有分配输出缓冲区)id: 唯一的64位的客户端ID(Redis 2.8.12加入)。events: 文件描述符事件 cmd: 最近一次执行的命令。age: 以秒计算的已连接时长。原创 2022-09-08 10:31:55 · 706 阅读 · 0 评论 -
web.xml配置全局过滤器防止SQL注入
Statement.executeUpdate(sql),没有使用PreparedStatement.executeUpdate(sql)生产有个老项目使用的是jsp+servlet写的,对安全方面几乎没有,对执行的sql使用的是。2)写sql的时候用PreparedStatement。1)配置全局过滤器,通过关键字匹配来拦截恶意请求。1.在web.xml中加入以下配置。本次使用的是配置全局过滤器。浏览器上直接访问项目。原创 2022-08-23 15:35:27 · 1002 阅读 · 0 评论 -
微服务项目部署-POS收银系统
linux系统2台,或者1台足够大的内存,因为安装工具和启动服务需要占用很大内存,大约8G。/opt/octv/product/pos/octv-pos-gateway下。打包使用IDEA->maven->Lifecycle->package。切换到部署目录,运行命令shstartpup.sh。将打包后的dist里面的文件上传到nginx指定目录下。打包后的路径是根目录的target目录。7.Minio安装(根据实际情况安装)5.RockerMQ安装。二、应用系统安装与配置。...原创 2022-07-21 17:25:33 · 447 阅读 · 0 评论 -
Linux上安装Sentinel限流、降级组件
默认用户名密码均为sentinel,密码不要直接复制。新建application.yml文件。2.启动Sentinel控制台。若是云服务器开放端口9070。若是虚拟机开启端口9070。新建shutdown.sh。新建startup.sh。创建config目录。原创 2022-07-19 10:25:34 · 200 阅读 · 0 评论 -
Linux上安装minio
在bin目录创建启动脚本文件startup.sh。若是云服务器需要配置安全组允许9000端口。命令启动缺点,窗口关闭,服务也随之关闭。bin启动脚本及二进制文件目录;账号admin/admin123。若是虚拟机需要开启端口9000。赋予minio文件执行文件权限。若出现未识别wget命令。data数据存储目录;logs日志目录;...原创 2022-07-19 10:19:00 · 465 阅读 · 0 评论 -
Linux上安装rocketmq
rocketmq-console是RocketMQ的一个图形化管理控制台工具,提供Broker集群状态查看,Topic管理,Producer、Consumer状态展示,消息查询等常用功能,这个功能在安装好RocketMQ后需要额外单独安装、运行。将rocketmq-all-4.9.2-bin-release.zip上传到/opt/octv/product/pos/rocketmq目录下,并执行解压命令。下载安装包,目前最新稳定版本rocketmq-all-4.9.2-bin-release.zip。...原创 2022-07-14 22:11:43 · 1823 阅读 · 0 评论 -
Linux上安装Nacos
可以从Nacos官网Releases · alibaba/nacos · GitHub下载最新稳定版本:nacos-server-2.0.3.tar.gz# cd /opt/octv/product/pos# mkdir nacos# cd nacos# wget https://github.com/alibaba/nacos/releases/download/2.0.3/nacos-server-2.0.3.tar.gz将Nacos安装包nacos-server-2.0.3.tar.gz上传到服务器/原创 2022-07-12 16:23:16 · 676 阅读 · 0 评论 -
Linux上安装mysql
安装之前,需要先看下服务器上之前是否安装过mysql1.1将mysql安装包上传到指定需要安装的mysql1.2 切换到指定目录,并解压解压命令:tar -xvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz1.3 创建mysql用户组和用户并修改权限groupadd mysqluseradd -r -g mysql mysql创建数据目录并赋予权限mkdir -p /data/mysqlchown mysql:mysql -R /原创 2022-07-11 16:45:47 · 179 阅读 · 0 评论 -
SpringBoot静态资源的配置
在SpringBoot项目中,默认有5个位置可以用来存放静态资源,分别为:1、classpath:/META-INF/resources/2、classpath:/resources/3、classpath:/static/4、classpath:/public/5、/源码解析 WebMvcAutoConfigurationthis.mvcProperties.getStaticPathPattern()对应 / this.resourceProperties.getStaticLocat原创 2022-07-07 10:12:56 · 592 阅读 · 0 评论 -
Linux Docker安装mysql
1.11.1 下载最新版mysqldocker pull mysql1.11.2 查看镜像(软件包)docker images1.11.3 创建mysql容器,其中3306为本地mysql端口,8036为容器端口,也是外网访问端口docker run -itd --name xizhao-mysql -p 8036:3306 --net xizhao -e MYSQL_ROOT_PASSWORD=root mysql1.11.4 查看所有容器docker ps -a1.11.5 进入mysql容器docke原创 2022-07-06 14:55:37 · 382 阅读 · 0 评论 -
若依配置多数据源
1.在application.yml配置新增的数据库octmes: # 从数据源开关/默认关闭 enabled: true url: jdbc:mysql://localhost:3306/octmes?useUnicode=true&characterEncoding=UTF-8 username: root password: root原创 2022-06-17 14:29:42 · 602 阅读 · 0 评论 -
SpringBoot默认包扫描问题
@SpringBootApplication注解默认扫描路径是:自动扫描主程序所在包及其下面的所有子包里面的组件在maven多模块项目中,如果想让扫描到,需要在子模块下面创建相同的包如:如果包名不同就需要使用@ComponentScan注解来扫描但是@ComponentScan注解只能扫描spring-boot项目包内的bean并注册到spring容器中spring.factories文件是帮助spring-boot项目包以外的bean(即在pom文件中添加依赖中的bean)注册到spring-boot原创 2022-06-16 16:05:28 · 324 阅读 · 0 评论 -
java对图片按照指定尺寸压缩
1.pom.xml引入依赖<dependency> <groupId>net.coobird</groupId> <artifactId>thumbnailator</artifactId> <version>0.4.8</version> </dependency>2.接口/** * 上传人员头像原创 2022-05-27 09:55:31 · 388 阅读 · 0 评论 -
lombok用法
一、lombok介绍官方定义:Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.Never write another getter or equals method again, with one annotation your class has a fully featured builder, Automate原创 2022-05-11 17:36:41 · 1363 阅读 · 0 评论 -
eclipse集成lombok(二)
1.下载lombok.jar包链接:https://pan.baidu.com/s/14BMiD8FPU3pvoS0Yo9umXw提取码:qckf2.将lombok包放到eclipse安装的根目录3.修改eclipse.ini文件,加入以下内容:-javaagent:lombok.jar-vmargs -javaagent:lombok.jar4.重启eclipse,点击项目右键maven update即可...原创 2022-05-07 17:20:06 · 605 阅读 · 0 评论 -
CentOS8 yum 报错 404 for http://mirrors.cloud.aliyuncs.com/centos/8/AppStream
404 forhttp://mirrors.cloud.aliyuncs.com/centos/8/AppStream/x86_64/os/repod问题描述阿里云服务器,CentOS8,yum安装报错解决办法 登录CentOS 8系统的ECS实例。具体操作。 运行以下命令备份之前的repo文件。rename '.repo' '.repo.bak' /etc/yum.repos.d/*.repo 3.运行以下命令下载最新的repo文件。wget https...原创 2022-04-25 14:56:02 · 550 阅读 · 0 评论 -
pom文件中dependencies和dependencyManagement区别
在父pom中定义dependencies,子项目默认全部继承在父pom中定义dependencyManagement只是声明依赖,并不实现引入,因此子项目需要显示的声明需要用的依赖。如果不在子项目中声明依赖,是不会从父项目中继承下来的;只有在子项目中写了该依赖项,并且没有指定具体版本,才会从父项目中继承该项,并且version和scope都读取自父pom;另外如果子项目中指定了版本号,那么会使用子项目中指定的jar版本。...原创 2022-04-21 12:28:26 · 349 阅读 · 0 评论 -
设计模式之建造者(Builder)模式
使用前提是:IDEA或eclipse要安装lombok插件1.创建实体类,在类上面加上@Builder注解对象构建的时候使用:OrderBatching orderBatching = OrderBatching.builder() .batchingId(goodsBatching.getId()) .batchingName(goodsBatching.getBatchingName()) .price(good原创 2022-04-20 17:48:36 · 515 阅读 · 0 评论 -
java枚举类通过code获取枚举类对象
原创 2022-04-20 15:41:02 · 723 阅读 · 0 评论 -
批量下载文件,循环中文件流没有关闭导致每次下载会累加之前的下载文件
/** * 压缩 * * @param files 多文件 * @param zipFilePath 目标压缩文件路径 * @throws IOException */public static void zip(List<File> files, String zipFilePath) throws IOException { log.info("启用ZIP压缩工具 >>>>>>>>>> "); if(.原创 2022-02-24 10:13:28 · 421 阅读 · 0 评论 -
Spring Cloud JWT文件生成
生成私钥和公钥RAS算法生成私钥和公钥,桌面新建一个jwt文件夹,在文件夹里打开cmd,执行生成私钥>keytool -genkeypair -alias jwt -keyalg RSA -keypass 123456 -keystore jwt.jks -storepass 123456keytool是java提供的证书管理工具-genkeypair 要生成密钥 -alias 证书的别名-keyalg RSA 指定加密算法 -keypass密钥的访问密码-keystore原创 2022-01-20 15:05:27 · 350 阅读 · 0 评论 -
mysql查询不同用户的最新一条记录
方法一:SELECT * from (SELECT * from oct_hr_user_clock ORDER BY clock_time desc limit 10000) v GROUP BY v.user_id注意:limit必须要加方法二:SELECT * from oct_hr_user_clock ajoin(SELECT max(clock_time) as clock_time,user_id from oct_hr_user_clock GROUP BY...原创 2022-01-18 10:01:16 · 1076 阅读 · 1 评论 -
Windows上安装Nacos
1.安装包下载地址:链接:https://pan.baidu.com/s/1YZRUVbTzeNfDfF3tMTmsLQ提取码:5ewe2.安装和使用直接解压进入conf目录,修改application.properties文件去掉注释,配置数据库连接信息创建naocs数据库,导入nacos-mysql.sql文件即可进入到bin目录,点击表明启动完成3.访问http://127.0.0.1:8848/naco用户名/密码:nacos/naco...原创 2022-01-12 11:15:10 · 515 阅读 · 0 评论 -
Msql sql(优化三)
问题描述:公司在使用若依架构,查询角色列表的时候用到了角色列表接口,生产查询时候很慢,大概需要6秒原始sql:select distinct r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.menu_check_strictly, r.dept_check_strictly, r.status, r.del_flag, r.create_time, r.remark from sys...原创 2021-11-05 17:45:52 · 315 阅读 · 0 评论 -
SpringBoot自动配置的原理及实现
SpringBoot的核心就是自动配置,自动配置是基于条件判断配置Bean自动配置的源码在spring-boot-autoconfigure-2.2.13.RELEASESpringBoot运行原理先看@SpringBootApplication//// Source code recreated from a .class file by IntelliJ IDEA// (powered by FernFlower decompiler)//package org.spri原创 2021-11-03 16:25:46 · 2468 阅读 · 0 评论 -
Maven安装中央仓库没有的jar到本地
打开cmd,前提配置了maven环境变量,切换到jar包所在目录执行如下命令:mvn install:install-file -Dfile=e:\cos-2.0.8.jar -DgroupId=com.oreilly -DartifactId=cos -Dversion=2.0.8 -Dpackaging=jar原创 2021-11-03 12:28:29 · 185 阅读 · 0 评论 -
使用java代码代替xml实现SSM
SpringBoot推荐开发者使用Java配置来搭建框架,SpringBoot中大量的自动化配置都是通过Java代码配置实现的,而不是XML配置,同理,我们自己也可以使用纯Java来搭建一个SSM环境,即在项目中不存在任何XML配置,包括web.xml环境要求:Tomact版本必须在7以上1.在IDEA中创建一个普通的maven项目在pom.xml加入项目中需要用到的依赖<?xml version="1.0" encoding="UTF-8"?><project原创 2021-10-30 09:21:38 · 290 阅读 · 0 评论 -
Mysql sql优化(一)
业务场景1:排查生产日志,发现执行该sql需要16s原始sql:SELECT dance_.company, dance_.depart_name, fr.workTime attendanceDate, user_.nick_name, user_.record_no number, group_concat(DAT...原创 2021-09-01 14:36:44 · 170 阅读 · 0 评论 -
若依框架使用数据权限
1.若依架构自带的数据权限为以下几种:2.再功能模块给用户角色配置对应的数据权限如何让它生效1)查看自己若依架构的com.ruoyi.framework.aspectj.DataScopeAspect类/** * 数据过滤处理 * * @author ruoyi */@Aspect@Componentpublic class DataScopeAspect{ /** * 全部数据权限 */ public static fin.原创 2021-07-10 13:40:23 · 9804 阅读 · 5 评论 -
解决Tomact端口被占用问题
1. netstat -ano|findstr 60202.taskkill /pid 17452 /f原创 2021-06-01 17:34:47 · 184 阅读 · 0 评论 -
命令行查看电脑WIFI密码
1、使用快捷键【win键+R键】打开运行窗口,在运行窗口中的输入域输入【cmd】并点击【确定】原创 2021-06-01 09:02:59 · 1278 阅读 · 0 评论 -
IDEA中忽略git或svn中无需提交的文件或文件夹
打开IDEA选择File->setting原创 2021-05-08 09:51:14 · 294 阅读 · 0 评论 -
2021年java面试题总结
1.rabbitMQ特点和使用经验?有了解其他的消息队列?2,Mybatis一级缓存和二级缓存,作用范围?3.synchronized与Lock的区别4.为什么要用到缓存?redis有哪几种数据类型?使用场景?5.数据库优化?6.java的深拷贝和浅拷贝7.线程池,使用的是什么线程池,使用的场景是怎样的?线程池有了解使用有什么注意事项?8.StringBuffer和StringBuilder区别9.有了解java的哪几种设计模式?实际开发有用过哪些,使用场景?10.Tom原创 2021-04-22 10:33:16 · 906 阅读 · 0 评论 -
Docker安装Sentinel
1.搜索是否有可用sentineldocker search sentinel2.下载sentinel镜像下载的镜像要选择UTOMATED状态为OK的,不然可能下载不了docker pull arilot/sentinel3.查看下载下来的镜像docker images4.创建容器docker run --name sentinel -d -p 8858:8858 arilot/sentinel5.查看正在运行的容器docker ps...原创 2021-04-21 20:58:28 · 362 阅读 · 0 评论 -
Docker安装nacos
1.搜索是否有可用的nacosdocker search nacos2.下载nacos镜像docker pull nacos/nacos-server3.启动nacos容器docker run --env MODE=standalone --name nacos -d -p 8848:8848 nacos/nacos-server删除容器docker rm 容器idnacos的默认端口是8848,默认账号密码是nacos/nacos第一个8848表示外网...原创 2021-04-14 17:04:19 · 263 阅读 · 0 评论 -
码云新建仓库,与本地仓库关联
1.初始化git init2.关联git remote add origin 地址3.提交git add .git commit -m '初始化项目'git push -u origin master查看远程仓库地址:git remote -v如果想替换git地址git remote set-url origin 要替换仓库地址原创 2021-02-19 14:04:48 · 366 阅读 · 0 评论 -
Linux安装redis
1.下载wget http://download.redis.io/releases/redis-5.0.7.tar.gz2.解压到当前目录tar -zvxf redis-5.0.7.tar.gz3.移动到指定目录mv redis-5.0.7 /usr/local/4.安装gcc环境yum install gcc-c++5.切换到redis-5.0.7目录,执行make命令,切换到src目录,执行make install命令6.切换到redis-5.0.7目录,...原创 2021-02-19 14:03:51 · 369 阅读 · 1 评论