java
java相关技术和知识
靖瑶_
爱笑,阳光,自信,开朗,相信每一个明天,不停留于过去!
唯有学会经营生活,完善自己,才可以做一朵常开不败的铿锵玫瑰!
展开
-
Java用http的post方式发送信息【回调业务可以用到】httpclient
httpclient发送请求总结原创 2022-11-16 14:51:25 · 889 阅读 · 1 评论 -
json字符串转map集合||发送短信阿里&&腾讯
json字符串转map集合||发送短信阿里&&腾讯||项目总结原创 2022-09-07 14:39:06 · 448 阅读 · 0 评论 -
RocketMQ发送接收项目实战+对cos或者oss服务上的pdf文件和图片加水印
mq总结原创 2022-07-23 16:53:35 · 1096 阅读 · 2 评论 -
常量实体类
常量实体类归纳原创 2022-06-10 17:08:50 · 203 阅读 · 1 评论 -
关于时间范围查询和时间类型转换和日周月数据查询【总汇】
时间总汇关于时间范围查询和数据类型转换和日周月数据查询自己容易出错总结原创 2022-06-10 17:00:44 · 5948 阅读 · 3 评论 -
分页查询mybatisePlus+累加集合计算
mybatiseplus分页+集合累加计算原创 2022-06-09 16:51:22 · 1677 阅读 · 0 评论 -
ActiveMQ安装步骤和知识介绍,创建和发送队列【1】
ActiveMQ的作用、原理是啥?ActiveMQ的作用就是实现跨网络的习性与系统剑通信,可以将业务解耦,提供异步消息支持,增加系统并发量.比如原本执行一个操作需要1s,那么用户请求后必须等待1s之后才会得到响应,引入MQ之后,我们可以仅仅只做简单的校验流程,确认该操作可以执行时,将消耗的操作使用异步消息通知,并直接返回用户操作成功,而专门处理该业务的服务者监听该消息,一旦有消息之后就开始处理,用户只需要等待10ms原理就是生产者将消息发送给ActiveMQ服务端,服务端会根据该消息对应的目标模型(p原创 2022-05-07 17:36:13 · 1110 阅读 · 1 评论 -
gateway全局过滤异常处理
正对这一篇文章,异常处理,我尝试了很多次失败,太艰辛,最终成功的!俗话说:失败乃成功之母,只要功夫深,铁杵磨成针!真的证明了这句话,所以希望大家在遇到困难的时候,不要气馁,要一点点试错,终会迈过去这个坎!你们相信光吗?要相信相信哦!(^-^)V这里的代码是在上一张全局过滤器的基础上进行改进添加了异常处理!主要是对前置过滤器做了处理好了,话不不多说!上编码–前置过滤器import com.alibaba.fastjson.JSONObject;import com.baomidou.myb原创 2022-04-29 15:58:59 · 1375 阅读 · 0 评论 -
springcloud网关gateway过滤排除指定的路径【指定路径不过滤】
针对前面的网关渠道RSA加密,有些页面和接口需要不过滤;所以做了以下不过滤指定路径相关处理配置:yml配置文件application.ymlagilepay: gateway: shouldSkipUrls: - /gatherpay/doc.html - /gatherpay/passive/callback - /gatherpay/static/webjars/** - /gatherpay/resources/webjars/原创 2022-04-27 11:41:21 · 7952 阅读 · 2 评论 -
BigDecimal【数据库对应decimal】加减计算||比较大小||java
数据库类型decimal在java实体类中对应BigDecimaldecimal:数字型,128bit,不存在精度损失,常用于银行帐目计算。(28个有效位)decimal(10,2)中的“2”表示小数部分的位数,也即插入的数字整数部分不能超过“10-2”位,否则不能成功插入,会报超出范围的错误。举例DECIMAL(10,2) 总共能存10位数字,末尾2位是小数,字段最大值 88888888.88 (小数点不算在长度内) public static void main(String[]原创 2022-04-18 17:05:17 · 3073 阅读 · 0 评论 -
Sm4【国密4加密解密】实战
由于工作需要使用sm4加密一些个人隐私信息,就研究了一下sm4;感觉它和上章节讲的Rsa(非对称加密)很相似国密算法SM1-SM4简介SM1 :为对称加密。其加密强度与AES相当。该算法不公开,调用该算法时,需要通过加密芯片的接口进行调用。SM2:非对称加密算法,基于ECC。该算法已公开。由于该算法基于ECC,故其签名速度与秘钥生成速度都快于RSA。ECC256位(SM2采用的就是ECC 256位的一种)安全强度比RSA 2048位高,但运算速度快于RSA。SM3: 消息摘要。可以用MD原创 2022-04-11 10:42:07 · 39225 阅读 · 12 评论 -
RSA加密的原理
一、RSA加密简介RSA加密是一种非对称加密。可以在不直接传递密钥的情况下,完成解密。这能够确保信息的安全性,避免了直接传递密钥所造成的被破解的风险。是由一对密钥来进行加解密的过程,分别称为公钥和私钥。两者之间有数学相关,该加密算法的原理就是对一极大整数做因数分解的困难性来保证安全性。通常个人保存私钥,公钥是公开的(可能同时多人持有)。二、RSA加密、签名区别加密和签名都是为了安全性考虑,但略有不同。常有人问加密和签名是用私钥还是公钥?其实都是对加密和签名的作用有所混淆。简单的说,加密是为了防原创 2022-03-21 16:45:11 · 15908 阅读 · 0 评论 -
RSA加密解密【项目实战】springcloud网关全局过滤配置
Rsa工具类EncryptUtilpackage com.szzz.pay.agilepaygateway.utils;import org.springframework.util.Base64Utils;import javax.crypto.Cipher;import java.io.ByteArrayOutputStream;import java.security.*;import java.security.interfaces.RSAPrivateKey;import jav原创 2022-03-21 16:30:34 · 616 阅读 · 0 评论 -
java线程
当线程被创建并启动以后,它既不是一启动就进入了执行状态,也不是一直处于执行状态。在线程的生命周期中,它要经过新建(New)、就绪(Runnable)、运行(Running)、阻塞(Blocked)和死亡(Dead)五种状态。尤其是当线程启动以后,它不能一直“霸占”着CPU独自运行,所以CPU需要在多条线程之间切换,于是线程状态也会多次在运行、阻塞之间切换。生命周期的五种状态1.新建(new Thread)当创建Thread类的一个实例(对象)时,此线程进入新建状态(未被启动)。例如:Thr.原创 2022-03-07 10:30:51 · 117 阅读 · 0 评论 -
Filter过滤器配置之入门
过滤器(Filter)是Servlet中常用的技术,可以实现用户在访问某个目标资源之前,对访问的请求和响应进行拦截,常用的场景有登录校验、权限控制、敏感词过滤等,下面介绍下Spring Boot配置过滤器的方式过滤器执行流程:客户端发起请求的时候,首先是经过了Filter过滤器,处理了request请求,然后去执行了我们的servlet/jsp,当执行完毕后,我们的response响应也经过了过滤器,这里经过过滤器的时候是从放行后面开始执行的,也就是处理了response响应。过滤器的应用.原创 2022-03-02 16:26:36 · 1404 阅读 · 0 评论 -
拦截器Interceptor
拦截器 是 SpringMVC 框架自己的,只有使用了 SpringMVC 框架的工程才能用。作用:可以构成拦截器栈,完成特定功能。比如日志记录、登录判断、权限检查等作用。好处:拦截器也可以让你将通用的代码模块化并作为可重用的类。拦截器的应用:AOP、需要有一些业务逻辑(需要注入Bean等)理解:拦截器可以说相当于是个过滤器:就是把不想要的或不想显示的内容给过滤掉。拦截器可以抽象出一部分代码可以用来完善原来的方法。同时可以减轻代码冗余,提高重用率。比如在登入一个页面时,如果要求.原创 2022-03-02 15:46:23 · 27641 阅读 · 3 评论 -
ServletRequest底层方法
import javax.servlet.*;request.setCharacterEncoding(“utf-8”);//设置request编码方式request.getLocalAddr();//获取本地IP,即服务器IPrequest.getLocalName();//获取本地名称,即服务器名称request.getLocalPort();//获取本地端口号,即Tomcat端口号request.getLocale();//用户的语言环境request.getContextPath(原创 2022-03-01 15:03:35 · 128 阅读 · 0 评论 -
idea的终端执行命令如何输入
找到Terminal二.没有Terminal,去安装这个插件原创 2022-02-28 11:08:44 · 1602 阅读 · 0 评论 -
error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1【报错】
这个问题一般新建的项目比较常见,可能是配置不太完善,下面是解决方法一、检查pom文件我们首先需要在pom文件中设置,编译时编码utf-8即可,如果解决不了进行第二步 <properties> <java.version>1.8</java.version> <spring-cloud.version>2021.0.1</spring-cloud.version> <project.原创 2022-02-28 10:46:42 · 1314 阅读 · 2 评论 -
前端访问后端跨域,后端解决跨域的2种方法
第一种import org.springframework.context.annotation.Configuration;import org.springframework.context.annotation.Profile;import org.springframework.web.servlet.config.annotation.CorsRegistry;import org.springframework.web.servlet.config.annotation.WebMvcCo原创 2021-09-10 10:28:36 · 1431 阅读 · 0 评论 -
Timer----定时任务实战
Timer处理类 @SneakyThrows @Override public CommonResult creatPlay(String name, String startData, String dataHour, String url) {//直播会议有且只有一条 String time = startData + " " + dataHour; //时间格式化入库 DateTimeFormatter df = DateTimeFo原创 2021-08-20 16:52:48 · 121 阅读 · 0 评论 -
java计算判断时间是否大于15分钟
@Test public void ss(){//---主播进入直播------转换成毫秒值---------点击开始直播判断据开始时间是否大于15min <=15返地址,>15返回null无法进入直播 String date="2021-08-06 09:44"; SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm"); try { long s.原创 2021-08-09 17:43:32 · 2605 阅读 · 0 评论 -
字符串日期转换时间戳
@SneakyThrows @Test public void testQuery(){ //存------年月日时分 Timepoji timepoji=new Timepoji(); timepoji.setDateF("2021-08-04"); timepoji.setHourF("10:20"); String s=timepoji.getDateF()+" "+timepoji.getHou...原创 2021-08-09 17:50:18 · 735 阅读 · 0 评论 -
阿里云--短信服务---开通步骤
1.注册阿里云账号阿里云官网登录注册即可https://www.aliyun.com/?utm_content=se_10091450792.申请云通信产品试用中心----(短信服务)https://free.aliyun.com/product/cloudcommunication-free-trial?utm_content=se_1009977564免费试用(根据个人需求选择)—购买成功后进入以下网址去调用短信相关接口调试和使用https://next.api.aliyun.原创 2021-09-01 14:40:19 · 807 阅读 · 0 评论 -
后端把图片转base64字符串(项目实战)demo
3种方式 //第一种单图片转 @RequestMapping("/baseImage") @ResponseBody public String test(@RequestPart("file") MultipartFile file) throws Exception { BASE64Encoder base64Encoder = new BASE64Encoder(); String base64EncoderImg = file.getO原创 2021-08-27 16:54:24 · 571 阅读 · 0 评论 -
对List集合分页处理--项目实战
封装的参数类@Data@Schema(description = "关注粉丝分页列表")public class PageFollowsRequest { @Schema(description = "用户ID") private Long accountId; @Schema(description = "用户ID") private int pagesize; @Schema(description = "用户ID") private int c原创 2021-08-17 10:21:16 · 336 阅读 · 0 评论 -
项目实战----图片上传oss服务器
依赖 <dependency> <groupId>com.aliyun.oss</groupId> <artifactId>aliyun-sdk-oss</artifactId> <version>3.10.2</version> </dependency>配置ymlaliyun: oss: buck原创 2021-08-13 15:31:19 · 354 阅读 · 0 评论 -
定时任务@Scheduled
1.启动类上加@EnableScheduling2.创建定时任务类@Componentpublic class TaskUtils { @Autowired private AccountMapper accountMapper; // 添加定时任务 @Scheduled(cron = "0 36 17 ? * *") //cron每天下午 17:36 触发一次 public void doTask(){ //获取当前时间 Si原创 2021-07-21 17:38:15 · 245 阅读 · 1 评论 -
计算出当天00点时间戳
@SneakyThrows @Test public void jb(){//计算今天0点的时间戳 Long time = System.currentTimeMillis(); //当前时间的时间戳 long zero = time/(1000*3600*24)*(1000*3600*24) - TimeZone.getDefault().getRawOffset(); System.out.println(new Timestamp(.原创 2021-08-09 17:41:38 · 326 阅读 · 0 评论 -
阿里云(短信签名)--java项目实战
Api.getApiSource().getClientId()这个是项目的需要,你们可以去掉 @Operation(summary = "查询短信模板的审核状态") @RequestMapping(value = "/selectSmsTemplateStatus", method = RequestMethod.POST) @ResponseBody public CommonResult selectSmsTemplateStatus(@RequestParam St原创 2021-09-01 11:08:36 · 949 阅读 · 0 评论 -
java时间格式化
LocalDateTime 年月日时分秒如前端传值是字符串时间如“2021-07-22 13:22:00” DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); LocalDateTime UnsealTime=LocalDateTime.parse(request.getUnsealTime(),df);LocalDate 年月日如前端传值是字符串时间如“2021-07-22 ” Date原创 2021-07-22 09:30:36 · 567 阅读 · 0 评论 -
项目启动项目--类目初始化
项目启动时–初始化项目(可编写业务逻辑)import com.alibaba.fastjson.JSON;import com.szzz.appplay.domain.PartnerAppVideo;import com.szzz.appplay.domain.PushVideo;import com.szzz.appplay.mapper.PartnerAppVideoMapper;import com.szzz.appplay.task.Mytask;import com.szzz.mpaa原创 2021-08-20 16:45:49 · 104 阅读 · 0 评论 -
java生成推拉流地址工具类--腾讯云--直播
package com.szzz.util;import lombok.SneakyThrows;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;import java.text.DateFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.time.LocalD原创 2021-08-10 10:53:36 · 486 阅读 · 0 评论 -
java支付宝开发
1、登陆支付宝开发者中心,申请一个开发者账号。地址:https://openhome.alipay.com/2.找到—沙箱应用3.下载生成秘钥工具点击生成秘钥复制公钥到这里点击—保存原创 2021-06-09 18:21:09 · 71 阅读 · 0 评论 -
token登录最详细代码实例
在前后端完全分离的情况下,前端项目中实现token验证大致思路如下:1、第一次登录的时候,前端调后端的登陆接口,发送用户名和密码2、后端收到请求,验证用户名和密码,验证成功,就给前端返回一个token3、前端拿到token,将token存储到localStorage和前端中,并跳转路由页面4、前端每次跳转路由,就判断 localStroage 中有无 token ,没有就跳转到登录页面,有则跳转到对应路由页面5、每次调后端接口,都要在请求头中加token6、后端判断请求头中有无token,有t原创 2021-07-15 15:24:18 · 4085 阅读 · 0 评论 -
IDEA连接远程数据库或本地数据库
1.找到database2.3.4.成功5.出现连接不上问题5.1进入下面这个界面5.25.3.成功原创 2021-06-30 11:07:29 · 620 阅读 · 0 评论 -
java.nio.charset.MalformedInputException: Input length = 1
第一种方法:看下配置文件语言格式是否是UTF-8第二种方法重新建一个配置文件,把之前配置文件里的内容复制一份到这个里面,替换旧的配置文件,重启项目即可原创 2021-06-10 16:15:37 · 326 阅读 · 0 评论 -
百度地图获取经纬度和具体位置
注<script type="text/javascript" src="http://api.map.baidu.com/api?ak=百度地图接口申请自己的ak"></script>百度地图开发地址:(申请ak密钥)https://lbsyun.baidu.com/申请密钥里有白名单里要写,写“ * ”就可以<!DOCTYPE html><html lang="en"><head> <meta cha原创 2021-06-02 15:38:15 · 137 阅读 · 0 评论 -
formData提交form表单(小记)
1.XMLHttpRequest发送这个"表单"<form id="uploadFormadd" enctype="multipart/form-data" method="post" name="fileinfo"> <input id="file" type="file"/> <button id="upload" type="button">upload</button></div><script type="text/原创 2021-06-01 16:58:28 · 170 阅读 · 2 评论 -
获取年月日---时间转换
获取年月日 public static void main(String[] args) { Calendar rightNow = Calendar.getInstance(); Integer year = rightNow.get(Calendar.YEAR); Integer month = rightNow.get(Calendar.MONTH)+1; //第一个月从0开始,所以得到月份+1 Integer da原创 2021-11-12 16:37:06 · 311 阅读 · 0 评论