
java
文章平均质量分 71
java爱好者
JAVA爱好者
展开
-
通用AppKey签名验证软件
签名验证是一种技术,用于确保数据完整性和身份验证。在Java应用程序中,签名通常是由开发人员提供的一个字符串,它基于请求的内容和一些密钥信息生成。这个签名可以被认为是一种指纹,它唯一地标识了请求的内容,同时也确保了请求的完整性。在接收到请求后,应用程序会使用相同的密钥信息和相同的算法来生成签名,然后将其与请求中提供的签名进行比较。如果两个签名匹配,则请求被认为是有效的。原创 2023-05-31 15:51:54 · 1390 阅读 · 0 评论 -
Java 获取Url中的参数Map
【代码】Java 获取Url中的参数Map。原创 2023-01-10 18:05:02 · 2669 阅读 · 1 评论 -
java密码复杂度匹配规则
在开发中经常需要验证字符串是否匹配纯数字,纯大写,纯小写,大写小写数字特殊字符等任意两种,特别是在密码复杂度匹配时,现添加工具类校验字符串是否满足规则。因为需要设置不匹配的规则,比如至少匹配三种格式,那么久需要设置不能匹配两两组合。原创 2022-09-08 16:46:02 · 2419 阅读 · 0 评论 -
Spring Boot Cache使用Redis自定义单个缓存名称过期时间
spring boot 使用redis作为缓存时,默认只提供了全局缓存过期时间,不能针对某一个缓存name单独设置缓存过期时间,如果需要精确设置每个缓存name 的过期时间,需要按照如下方式配置。原创 2022-08-31 22:16:06 · 3713 阅读 · 0 评论 -
Spring Cloud 全链路日志追踪实现
基本实现原理:对于不携带Request-No的请求,则生成并添加请求头,添加请求头需要包装请求对象包装请求对象:经过请求头过滤器那么所有请求都会携带上Request-No请求头, 响应也会携带上Request-No对于线程池中执行的任务还是不能携带MDC和请求对象,因为RequestContextHolder也只能在当前线程与子线程中使用Request对象;其原理就是任务执行前复制好变量,结束之后再删除变量。这里使用了alibaba TransmittableThreadLocal 线程池支持库;异原创 2022-07-08 21:14:09 · 2916 阅读 · 1 评论 -
java字典功能序列化与序列化
说明:在项目开发地过程中经常会用到字典存储某些可配置的值,但相应的也会给开发带来复杂度,比如数据库存储的值为字典值:0,1,2,3这种类型的值,但是前端页面却需要展示为 启动、禁用、删除 等中文状态;两种解决方案:本文及时针对方案2 进行的改进目标:在需要返回给前段的字段上添加指定的注解例如:@DictDesc 则根据该字段定义的值结合注解配置生成 xxxDesc字段并自动赋值为注解属性值所对应的字典描述;具体使用的技术涉及到jackson序列化与反序列化,其他JSON工具包也类型的效果;该注解中定原创 2022-06-05 20:24:12 · 822 阅读 · 0 评论 -
Java 大文件分片上传
原理:前端通过js读取文件,并将大文件按照指定大小拆分成多个分片,并且计算每个分片的MD5值。前端将每个分片分别上传到后端,后端在接收到文件之后验证当前分片的MD5值是否与上传的MD5一致,待所有分片上传完成之后后端将多个分片合并成一个大文件,并校验该文件的MD5值是否与上传时传入的MD5值一致;支持文件分片上传,查询当前已经上传的分片信息,取消文件上传上传文件分片参数接收如果按照分片方式上传文件需要指定当前大文件的MD5、分片MD5、分片内容、分片大小、当前文件名称、文件总大小等信息;另外对于每个文件原创 2022-06-05 20:20:39 · 8226 阅读 · 2 评论 -
Dubbo 3.0.6 + Nacos 2.0.4 配置 + spring boot 2.6.4
Dubbo 3.0.6 + Nacos 2.0.4 配置1. 引入配置文件 <properties> <java.version>1.8</java.version> <maven.compiler.source>8</maven.compiler.source> <maven.compiler.target>8</maven.compiler.target>原创 2022-03-18 01:43:32 · 2561 阅读 · 0 评论 -
ThreadLocal原理分析
文章目录一篇文章搞懂ThreadLocalThreadLocal是什么?ThreadLocal实现原理?1、set(T value) 方法:2、getMap(t)方法:3、createMap(t, value)方法:4、get()方法5、remove()方法6、分析Thread、ThreadLocal、ThreadLocalMap关系1、Thread类有两个属性2、ThreadLocal类包含ThreadLocalMap内部类,ThreadLocalMap包含Entry内部类;3、内存泄露问题使用Tread原创 2022-01-16 11:08:28 · 618 阅读 · 0 评论 -
Java 字节码加密
文章目录字节码加密方案1:使用工具ClassFinal使用方式1. 命令行方式2. maven插件方式方案2:使用Protector4J字节码混淆方式1:[ProGuard](https://www.guardsquare.com/)参考文档:字节码加密方案1:使用工具ClassFinal使用工具ClassFinal说明:ClassFinal是一款java class文件安全加密工具,支持直接加密jar包或war包,无需修改任何项目代码,兼容spring-framework;可避免源码泄漏或字节码原创 2021-12-16 18:00:45 · 1017 阅读 · 0 评论 -
字节码加密
文章目录字节码加密方案1:使用工具ClassFinal使用方式1. 命令行方式2. maven插件方式方案2:使用Protector4J字节码混淆方式1:[ProGuard](https://www.guardsquare.com/)参考文档:字节码加密方案1:使用工具ClassFinal使用工具ClassFinal说明:ClassFinal是一款java class文件安全加密工具,支持直接加密jar包或war包,无需修改任何项目代码,兼容spring-framework;可避免源码泄漏或字节码原创 2021-12-16 17:56:27 · 1833 阅读 · 0 评论 -
java 条件编译
java 条件编译方式1. 使用if条件编译原理:jvm 会对if(false)中的代码做优化:例如: public static void main(String[] args) { if(false){ System.out.println("hello world"); } System.out.println("main"); }编译之后的源码: public static void main(原创 2021-12-16 17:55:37 · 1664 阅读 · 0 评论 -
java 使用注解自动转换字典信息(自定义注解转换字典)
文章目录java 使用注解自动转换字典信息1. 自定义Jackson2ObjectMapperBuilder2. 添加自定义注解处理类DictSerializerModifier3. 自定义注解4. 使用自定义注解:参考文档:java 使用注解自动转换字典信息需求:项目开发过程中经常会将一些常量定义到字典中,但是页面展示需要将字典值转换成字典名称;之前:提供字典查询接口,前段查询之后再回显;现在:直接在需要转换的字段添加注解,自动添加转换后的字段采用解决方案:在ResponseBody转换成jso原创 2021-12-16 17:53:44 · 9026 阅读 · 0 评论 -
在 Java 中获取文件的 Mime 类型
1. 概述在本教程中,我们将了解获取文件 MIME 类型的各种策略。在适用的情况下,我们将研究扩展可用于策略的 MIME 类型的方法。我们还将指出我们应该在哪些方面偏爱一种策略而不是另一种。2. 使用 Java 7让我们从 Java 7 开始——它提供了方法 Files.probeContentType(path) 来解析 MIME 类型:@Testpublic void whenUsingJava7_thenSuccess() { Path path = new File("produ原创 2021-09-13 16:26:43 · 3206 阅读 · 0 评论 -
Java8 函数式编程
Java8 函数式编程1. Java8 接口变化(default)先看下Java8 中的迭代器接口中的默认方法public interface Iterable<T> { /** * Returns an iterator over elements of type {@code T}. * * @return an Iterator. */ Iterator<T> iterator(); /** *原创 2021-09-12 16:33:56 · 349 阅读 · 1 评论 -
jinfo 使用
jinfo(Configuration Info for Java)查看虚拟机配置参数信息,也可用于调整虚拟机的配置参数。在很多情况下,Java应用程序不会指定所有的Java虚拟机参数。而此时,开发人 员可能不知道某一个具体的Java虚拟机参数的默认值。在这种情况下,可能需要通过查找文档获取某个参数的默认值。这个查找过程可能是非常艰难的。但有了jinfo工具,开发人员可以很方便地找到 Java虚拟机参数的当前值。基本用法:jinfo [options] pid-s...原创 2021-04-05 19:37:51 · 385 阅读 · 0 评论 -
jstat 使用技巧
jstat (JVM Statistics Monitoring Tool)作用: 用于监控虚拟机各种运行状态信息的命令行工具。可以显示本地或者远程虚拟机进程中的类转载、内存、垃圾收集、JIT编译等运行数据。用法: jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]1、option类转载相关 -class: 显示ClassLoader相关...原创 2021-04-05 19:02:09 · 380 阅读 · 0 评论 -
一篇文章搞定 java String.intern()
一篇文章搞定 java String.intern()问题1: String.intern() 有什么作用?问题2: < JDK7 与 >=JDK7 intern()做了什么调整?在回答上面两个问题之前我们先来看一段代码:public class StringIntern { public static void main(String[] args) { String str1 = new String("a") + new String("bc");原创 2021-04-05 11:03:04 · 335 阅读 · 1 评论 -
Jenkins自动化部署
Jenkins自动化部署1. Jenkins Centos yum方式安装CentOS 官方安装方式 sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key yum install jenkins1.1 Jenkins 启原创 2021-03-24 20:34:50 · 270 阅读 · 1 评论 -
偌依后台管理项目前后端分离(ruoyi-ui)部署子路径
偌依后台管理项目前后端分离(ruoyi-ui)部署子路径1. 前端修改1.1 vue.config.js1.2 src/utils/request.js1.3 src/router/index.js1.4 src/layout/components/Navbar.vue1.5 .gitignore1.6 nginx 配置 server { listen 80; server_name localhost; #将所有HT原创 2021-02-21 22:40:50 · 4056 阅读 · 9 评论 -
Centos7 安装配置ELK
1. 介绍Logstash 是开源的服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到您最喜欢的“存储库”中。Beats 平台集合了多种单一用途数据采集器。它们从成百上千或成千上万台机器和系统向 Logstash 或 Elasticsearch 发送数据。通过Kibana ,您可以对自己的 Elasticsearch 进行可视化,还可以在 Elastic...原创 2019-11-03 20:39:36 · 1044 阅读 · 0 评论 -
Java Set,List,Map 区别
set --其中的值不允许重复,无序的数据结构 list --其中的值允许重复,因为其为有序的数据结构 map--成对的数据结构,健值必须具有唯一性(键不能同,否则值替换) List按对象进入的顺序保存对象,不做排序或编辑操作。Set对每个对象只接受一次,并使用自己内部的排序方法(通常,你只关心某个元素是否属于Set,而不关心它的顺序--否则应该使用List)。Map同样对原创 2015-08-01 19:36:11 · 809 阅读 · 0 评论 -
eclipse远程调试Tomcat方法
1、Linux中配置tomcat在catalina.sh中添加如下CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"(不要换行,要在同一行)2、Window中修改 catalina,bat文件,添加:Set “CATALINA_OPTS=-Xdebug -X原创 2013-07-03 19:05:02 · 61327 阅读 · 7 评论 -
使用selenium报错InvalidElementStateException
问题可能是页面元素没有加载完成,然后掉了相应的方法例如代码: // 输入用户名 WebElement usernameElement = webDriver.findElement(By.id("username")); usernameElement.clear(); usernameElement.sendKeys(username);原创 2016-05-04 17:38:11 · 10736 阅读 · 3 评论 -
Eclipse使用Maven创建Web时错误:Could not resolve archetype org.apache.maven.archetypes:maven-archetype-webap
问题描述: 使用Eclipse自带的Maven插件创建Web项目时报错:Could not resolve archetype org.apache.maven.archetypes:maven-archetype-webapp:RELEASE from any of the configured repositories.Could not resolve artifa原创 2013-10-15 22:22:16 · 269033 阅读 · 72 评论 -
UUIDUtils工具类-根据时间生成UUID
/* * Copyright (c) 2011-2013 GoPivotal, Inc. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the Lice原创 2014-03-06 15:25:22 · 19047 阅读 · 0 评论 -
Java简单计算器
使用Java语言实现的简单的计算器原创 2014-12-09 23:33:55 · 2233 阅读 · 0 评论 -
Java正确URL解码方式:URLDecoder.decode
Exception in thread "main" java.lang.IllegalArgumentException: URLDecoder: Illegal hex characters in escape (%) pattern - For input string: "u9"at java.net.URLDecoder.decode(URLDecoder.java:194)at原创 2014-10-20 19:03:09 · 152941 阅读 · 8 评论 -
Tomcat与Solr4.10整合
1、下载tomcat http://tomcat.apache.org/2、下载solr原创 2014-09-13 11:16:25 · 9738 阅读 · 3 评论 -
java路径信息
System.getProperty("user.dir"): E:\workspace\lucene class.getResource("") : /E:/workspace/lucene/target/test-classes/com/hbzx/lucene/ class.getResource("/") : /E:/wo原创 2014-08-14 12:03:53 · 764 阅读 · 0 评论 -
spring4+mybaits3整合—项目Demo
项目下载地址:http://pan.baidu.com/s/1o6v0UyI原创 2014-03-10 18:45:53 · 45488 阅读 · 22 评论 -
spring 注入静态属性
Spring注入静态属性的方法:1、使用xml方式,这里不说,比较麻烦2、使用注解方式:首先让spring扫描到需要注入静态属性的类,如果扫描不到,谁知道你要注入注入属性需要使用没有static修饰的set方法@Componentpublic class LogUtils { private static SysLogService sysLogService;原创 2014-04-01 16:11:52 · 10491 阅读 · 7 评论 -
基于james3.0 的邮件系统(struts2.3.2 +spring3.0.1+jpa(hibernate3.6.5)实现)b/s模式--java邮件系统
米林(ljg)邮箱使用说明java邮件系统下载地址https://download.youkuaiyun.com/download/afgasdg/4269705(推荐)https://code.google.com/p/java-mail-system/downloads/listhttps://pan.baidu.com/share/link?shareid=2723270815&am...原创 2011-08-21 18:43:57 · 33121 阅读 · 105 评论 -
Java PDF 转图片
package com.hbzx.utils;import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException;import java.util.ArrayList;import java.util.List;import org.apache.pdfbox.pdmodel.PDDo原创 2017-11-16 16:58:04 · 598 阅读 · 0 评论 -
CookieUtils
package cn.itcast;import java.util.Arrays;import java.util.LinkedList;import java.util.List;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServletRequest;import javax.servlet.h原创 2011-11-13 23:08:59 · 4019 阅读 · 0 评论 -
阿里云Liux SMTP 25端口发送邮件 Connection timeout
原因:出于安全考虑,阿里云默认封禁TCP 25端口出方向的访问流量,即你无法在阿里云上的云服务器通过TCP 25端口连接外部地址。背景信息TCP 25端口的出方向封禁可能影响您通过TCP 25 端口连接第三方邮件服务商的SMTP服务器对外部发送邮件。如果您需要使用阿里云上的云服务器对外部发送邮件,建议您使用阿里云邮 产品或者使用第三方邮件服务商提供的465端口。如果存在特殊场景,...原创 2019-09-24 19:24:30 · 2842 阅读 · 0 评论 -
js万年历
[img]http://dl.iteye.com/upload/attachment/587637/ab673f35-3c94-39b8-acf1-9381b853117c.png[/img]原创 2011-11-13 23:58:42 · 191 阅读 · 0 评论 -
java验证码生成类
[code="java"]package cn.edu.pdsu.action;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.image.BufferedImage;import java.util.Random;import javax...原创 2011-11-13 23:27:16 · 102 阅读 · 0 评论 -
javascript常用数据校验正则表达式
[code="java"] /*Author wofosharen,Add By Chenghaojun */ Validator = { UserNameRegular : /^[a-zA-Z0-9_]+$/, Require : /.+/, Email : /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/, E...原创 2011-11-13 23:24:50 · 205 阅读 · 0 评论 -
java分页技术
啥也不说直接上代码[code="java"]package cn.pdsu;/** * 类说明:学生信息封装 * * @author 作者: LiuJunGuang * @version 创建时间:2011-11-9 下午02:30:50 */public class Student { private int id; private String...2011-11-10 01:36:07 · 232 阅读 · 0 评论