Java
Java
宁漂打工仔
有的人不曾以强力取胜,却以真诚、忍让、善良感人,其实,这是生活中真正的强者
展开
-
Java 时区国际化处理
项目主打海外业务,不可避免碰到时区的问题。目前的解决方案是,服务器、数据库统一设置为0时区,前端提交日期格式的字符串参数,请求头传递时区的参数(如:东八区【+8】,西一区【-1】),后台根据偏移量将日期字符串转换成0时区的Date。原创 2023-02-02 20:04:32 · 1368 阅读 · 0 评论 -
RestTemplate PUT方式上传文件
【代码】RestTemplate PUT方式上传文件。原创 2022-12-29 18:44:54 · 602 阅读 · 0 评论 -
Java动态导出excel列
实现效果:在模板基础列上,动态追加列原创 2022-10-24 22:27:02 · 3382 阅读 · 1 评论 -
mysql 查询半径范围内经纬度坐标
当前经纬度:#{startLatitude},#{startLongitude}半径范围:#{radius}地球半径:111195。原创 2022-10-08 18:19:30 · 1386 阅读 · 0 评论 -
mysql删除出现次数大于1的数据
【代码】mysql删除出现次数大于1的数据。原创 2022-09-21 16:23:36 · 511 阅读 · 0 评论 -
EMQX 开启http认证
【代码】EMQX 开启http认证。原创 2022-09-08 12:06:23 · 1787 阅读 · 2 评论 -
Java实现10万条经纬度数据压缩后只有15k
项目中行程上报数据,一般在结束的时候上报,类似keep软件的跑步功能,点击开始,本地开始每一秒钟存储当前位置、方向、速度、温度等属性,点击结束,将这些数据一次性提交。考虑到一天就可能有86400条数据,如果不压缩,post请求基本上扛不住。...原创 2022-09-01 15:37:04 · 704 阅读 · 0 评论 -
SpringBoot(一)集成 elasticsearch:7.11.2
query和filter的区别:query查询的时候,会先比较查询条件,然后计算分值,最后返回文档结果;而filter是先判断是否满足查询条件,如果不满足会缓存查询结果(记录该文档不满足结果),满足的话,就直接缓存结果,filter不会对结果进行评分,能够提高查询效率。默认情况下,没有 should 语句是必须匹配的,只有一个例外:那就是当没有 must 语句的时候,至少有一个 should 语句必须匹配。filter的使用方式比较多样,下面用几个例子演示一下。......原创 2022-08-30 09:50:16 · 1218 阅读 · 0 评论 -
docker学习(十三)docker安装dejavu
elasticsearch 最佳可视化工具。原创 2022-08-29 22:02:05 · 559 阅读 · 0 评论 -
filebeat读取日志存入elasticsearch
【代码】filebeat读取日志存入elasticsearch。原创 2022-08-26 18:04:18 · 620 阅读 · 0 评论 -
Java RSA 非对称加密算法实践
使用hutool工具类原创 2022-07-01 10:38:05 · 577 阅读 · 0 评论 -
Springboot整合AWS s3 存储
public String uploadFile(MultipartFile multipartFile, String source) throws IOException { String originalFilename = multipartFile.getOriginalFilename(); assert originalFilename != null; FileTypeUtils.checkFileType(originalFilename);原创 2022-06-23 17:43:14 · 2260 阅读 · 3 评论 -
java面试准备
通过反射获取对象信息:属性、成员、方法,通过注解或xml方式说明对象依赖关系,通过构造或注解的方式将对象注入到调用者中[x]Spring AOP 原理和使用JDKProxy与cglib动态代理,默认策略:如果目标类是接口则采用jdkproxy,否则采用cglib。相同点:为目标对象生成代理对象类。不同点:jdk使用反射机制实现的,通过invocationHandler.invoke实现;cglib是通过对代理对象类的字节码进行操作的使用场景:日志处理、权限认证[x]bean生命周期bean实例化原创 2022-06-11 07:19:22 · 115 阅读 · 0 评论 -
skywalking 请求日志存入数据到mysql
Skywalking MySQL 持久化配置原创 2022-06-01 10:45:08 · 513 阅读 · 0 评论 -
Springcloud 集成 Skywalking 实现全链路追踪
下载链接https://skywalking.apache.org/downloads/本地搭建springcloud工程,偷懒可参考giteehttps://gitee.com/wangLi1997/spring-cloud-example.git解压skywalking准备工作1.修改端口,默认8080改成其他端口2.如果有用到spring-gateway,需要手动调整copy到标题修改idea配置-javaagent:E:\gitee\apache-skywalkin原创 2022-05-31 15:14:15 · 1821 阅读 · 3 评论 -
springboot jackson 将date转成long
依赖 <jackson.version>2.12.5</jackson.version> <!-- Jackson --> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> </dependen原创 2022-05-31 10:41:16 · 1250 阅读 · 0 评论 -
SpringBoot将依赖打包到Mavne私服
准备工作一台虚拟机(桥接模式)搭建docker(推荐)安装nexus以上可参考之前的文章https://blog.csdn.net/SpringHASh/article/details/122521117?spm=1001.2014.3001.5501Maven私服配置浏览器访问http://192.168.1.114:8081/登陆进入基础说明(1)默认仓库说明: maven-central:maven 中央库,默认从 https://repo1.maven.org/mave原创 2022-05-10 11:03:09 · 800 阅读 · 0 评论 -
jquery ajax实现一起提交文件和表单元素
前端<!DOCTYPE html><html lang="en" class="no-js" xmlns:th="http://www.thymeleaf.org"><body id="body" data-spy="scroll" data-target=".header"><!--<div th:replace="theme/left-music::left-music"></div>--><!-- Produc原创 2022-04-20 09:05:00 · 662 阅读 · 0 评论 -
springboot @validated注解 不生效
缺少hibernate依赖导致代码示例@Data@ApiModel("对象参数")public class ApiRequest<T> { /** * 请求参数 */ @ApiModelProperty(value = "内容") @Valid// @NotNull private T param;} @ApiOperation(value = "创建游戏", notes = "创建游戏", produces原创 2022-04-14 10:39:25 · 1545 阅读 · 0 评论 -
JAVA 面试宝典新版
JAVA基础:1.JDK 和 JRE 有什么区别?JDK:Java Development Kit 的简称,Java 开发工具包,提供了 Java 的开发环境和运行环境。JRE:Java Runtime Environment 的简称,Java 运行环境,为 Java 的运行提供了所需环境。具体来说 JDK 其实包含了 JRE,同时还包含了编译 Java 源码的编译器 Javac,还包含了很多 Java 程序调试和分析的工具。简单来说:如果你需要运行 Java 程序,只需安装 JRE 就可以了,如果原创 2022-02-28 08:55:19 · 420 阅读 · 0 评论 -
docker学习(十)安装postgresql
虚拟机安装postgresql#1.拉取镜像docker pull postgres#2.启动镜像#docker run --name postgres -d -p 5432:5432 -e POSTGRES_PASSWORD=123 postgres#3.进入容器docker exec -it 82ec9813d4c4 /bin/bash#4.查看数据库所有表select * from pg_tables;navicat连接创建springboot工程实现基本的增删改查原创 2022-02-20 14:41:19 · 1016 阅读 · 0 评论 -
docker学习(八)docker安装nexus
准备工作一台cent7虚拟机配置:2c4g#关闭防火墙systemctl stop firewalld#重启dockersystemctl restart docker安装nexus#创建宿主机目录mkdir –p /docker/nexus/nexus-data#拉取镜像docker pull sonatype/nexus3#启动容器并指定挂载目录docker run -d --name nexus3 -p 8081:8081 -v /docker/nexus/nexus-da原创 2022-01-16 11:47:29 · 1155 阅读 · 0 评论 -
docker学习(六)安装elasticsearch、ik分词器插件、kibana
拉取es镜像docker pull elasticsearch:7.10.1创建文件夹mkdir -p /docker/elasticsearch/configmkdir -p /docker/elasticsearch/datamkdir -p /docker/elasticsearch/pluginssudo chmod -R 777 /docker/elasticsearch/启动镜像# 启动 暂不挂载config目录 docker run --name elasticsear原创 2021-12-24 15:00:04 · 1218 阅读 · 0 评论 -
docker学习(五)打包部署springboot项目
本地构建springboot项目1.编写DockerfileFROM java:8EXPOSE 8090VOLUME /tmpVOLUME /var/log/wang-blogADD wang-blog-1.0.0-SNAPSHOT.jar wang-blog.jarENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/wang-blog.jar"]# FROM:指定存在的镜像,java:8是我刚刚拉取原创 2021-12-21 09:15:11 · 711 阅读 · 0 评论 -
算法(一)稀疏数组
经典案例:五子棋的分布、提取、再分布public static void main(String[] args) { System.out.println("=============二维数据==========="); int [][] arr = new int [11][11]; arr[1][2] = 1; arr[2][3] = 2; int sum = 0; for (int[] ints :原创 2021-09-26 22:35:08 · 105 阅读 · 0 评论 -
linux 安装kafka并创建topic
1.安装zookeeper软件下载镜像站yum install -y vimyum install -y wgetwget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gztar -zxvf apache-zookeeper-3.7.0-bin.tar.gzcd apache-zookeeper-3.7.0-binmkdir data原创 2021-09-16 15:17:58 · 1229 阅读 · 0 评论 -
Springboot 整合阿里云oss文件上传
【代码】Springboot 整合阿里云oss文件上传。原创 2021-09-03 09:57:03 · 236 阅读 · 0 评论 -
Java List 交集、差集、并集 操作
public static void main(String[] args) { List<Integer> allSgmt = new ArrayList<>(Arrays.asList(5, 10, 15)); List<Integer> upKeys = new ArrayList<>(Arrays.asList(5, 10, 15, 20, 25)); // 差集 allSgmt.rem.原创 2021-07-15 15:29:48 · 226 阅读 · 0 评论 -
springboot在工具类中使用 @Value
由于static静态域最早加载到内存中,所以@Value不会生效,在set方法上使用value注解(注意set方法不是静态的,否则无法赋值),如下: private static List<String> ignoreValues; @Value("#{'${ignore.dept.values}'.split(',')}") public void setIgnoreValues(List<String> ignoreValues) { U原创 2021-07-13 10:07:30 · 2412 阅读 · 0 评论 -
java登陆页实现前端RSA加密,后端RSA解密
实现思路由RSA随机生成一对公钥和私钥,公钥方到客户端,私钥放到服务端,发送数据的时候由公钥对传输数据进行加密,然后发送给服务端,服务端用私钥才能对数据进行解密.下面是代码实现的例子前端jsencrypt.js保存到项目中,并引入,提交明文密码之前,调用此方法加密// 加密function getSignString(data) { var encrypt = new JSEncrypt(); // 公匙,由后端返回到前台 var pubKey = parent.publ原创 2021-07-07 14:21:51 · 3171 阅读 · 0 评论 -
springboot整合redis解决订单重复请求的问题
实现思路:将请求的json数据,去除一些可变字段,将key升序排序,拼接成字符串并进行md5加密,再拼接一些用户信息,这样相同的请求参数得到的加密串必然一致,将此字符串作为key,存入redis,设置过期时间为1秒,一般重复提交都是在1000ms以内;代码部分package com.wang.learn.cloudredis.controller;import com.alibaba.fastjson.JSONObject;import com.wang.learn.cloudredis.enti原创 2021-06-19 11:33:08 · 586 阅读 · 0 评论 -
dependencyManagement与dependencies区别
dependencyManagement与dependencies区别 最近在阅读maven项目代码时,dependencyManagement与dependencies之间的区别不是很了解,现通过项目实例进行总结:项目epps-demob-pom下有一个模块是epps-demob-war。一、dependencyManagement应用场景 为了项目的正确运行,必须让所有的子模块使用依赖项的统一版本,必须确保应用的各个项目的依赖项和版本一致,才能保证测试的和发布的是相同的结果。在我们项目顶层的p转载 2021-06-10 19:00:28 · 136 阅读 · 0 评论 -
navicate oracle 过滤时间最大的一条数据
SELECTDISTRICTBCDID,ADDRESSID,CHANNELID,max(EECLOSETIME)FROM "T_ELECBICYCLE_ARC" WHERE 1=1 and RECORDDATE = 210609and EECLOSETIME >= to_date('2021-06-10 15:01:59','yyyy-MM-dd hh24:mi:ss')GROUP BYDISTRICTBCDID,ADDRESSID,CHANNELIDORDER BY.原创 2021-06-09 17:51:33 · 292 阅读 · 0 评论 -
Maven pom依赖标签
compile(默认)当依赖的scope为compile的时候,那么当前这个依赖的包,会在编译的时候被加入进来,并且在打包(mvn package)的时候也会被加入进来。编译范围有效,在编译与打包时都会加入进去。provided当依赖的scope为provided的时候,在编译和测试的时候有效,在执行(mvn package)进行打包时不会加入。比如, 我们开发一个web应用,在编译时我们需要依赖servlet-api.jar,但是在运行时我们不需要该 jar包,因为这个jar 包已由.原创 2021-06-07 22:13:48 · 568 阅读 · 0 评论 -
java实现微信公众号判断用户是否关注
/** * 判断用户是否关注 * @param openid * @return */ private boolean isSubscribe(String openId, String appId, String secret) { log.info("isSubscribe --->"); String ret = HttpUtils.get("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_cr...原创 2021-06-03 10:13:44 · 562 阅读 · 0 评论 -
java实现带logo的二维码
思路:logo文件存在服务器,生成二维码同时将logo带进去,将生成的图片二维码存在服务器磁盘,返回前端可以访问的图片url。PS:我的需求是每个用户生成原创 2021-06-01 15:45:43 · 658 阅读 · 0 评论 -
玩转 Java8 Stream
玩转 Java8 Stream,让你代码更高效紧凑简洁前言一、Stream 特性 二、Stream 创建 2.1 用集合创建流 2.2 用数组创建流 2.3 Stream静态方法 三、Stream 使用案例 3.1 遍历 forEach 3.2 过滤 filter 3.3 查找 findFirst,findAny 3.4 匹配 match 3.5 映射 map 3.6 截取流 limit 3.7 排序 sorted 3.8 去重 distinct 3.9 统计 summa转载 2021-05-31 08:39:23 · 249 阅读 · 0 评论 -
vue 集成Element-ui、Vant 实现表单提交、单文件上传
效果图vue代码<template> <div class="feedback-wrap"> <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm"> <div class="feedback-title"> <span>(必选)请选择您想反馈的问题.原创 2021-05-16 11:36:21 · 815 阅读 · 0 评论 -
mysql 8.0 zip安装
下载地址https://dev.mysql.com/downloads/mysql/安装参考https://blog.csdn.net/weixin_45538576/article/details/104644152转载 2021-05-11 16:54:35 · 89 阅读 · 0 评论 -
oracle分项电器排名查询
SELECT *FROM ( SELECT rank() OVER (PARTITION BY b.C_EEGRPID ORDER BY b.EEKWH DESC) AS rank, b.METERNO, b.DISTRICTBCDID, b.ADDRESSID, b.CHANNELID , b.EEKWH, b.C_EEGRPID, b.C_EEGRPNAME FROM ( SELECT SUM(a.EEKWH) AS EEKWH, b.METERNO, a.DISTRICTBCDID, .原创 2021-05-06 11:09:59 · 97 阅读 · 0 评论