java
Connie1451
哇,这个世界很大呀
展开
-
fastjson转换数组乱序(已解决)
使用fastJson时,将数组转换成JsonArray时,发生数组顺序不一致问题已解决原创 2022-11-28 13:48:50 · 754 阅读 · 0 评论 -
java 插入排序自动排序
适用情况1 添加的标签默认排在第一位比如:原有序列 1,2,3 ;新增标签时 新增标签序列为1 ,原有序列1->2,2->3,3->42 修改标签时,顺序自动向前排序比如:原有序列 1,2,3 ,4;编辑标签时3 为1时: 编辑标签时3 为1(向上移动),原有序列1->2,2->3,3->4,4->5 编辑标签时1 为3(向下移动),原有序列2->1,3->2,3->1,4->43 删除标签时,标签自动排序比如:原有序列原创 2022-03-01 10:57:04 · 936 阅读 · 0 评论 -
Hashing.hmacMd5()为参数签名加密
为参数值加密ualHamacKey:key字符串urlParam : 参数值,不可对外暴露的数据结果:md5字符串 String ualParam = Hashing.hmacMd5(ualHmacKey.getBytes(StandardCharsets.UTF_8)).hashBytes(urlParam.getBytes(StandardCharsets.UTF_8)).toString();...原创 2021-10-26 18:01:59 · 424 阅读 · 0 评论 -
url键值对格式
Map<String,String> 转换为url格式:name=abc&age=20可通过实现Comparator接口的compare方法来完成自定义排序 key的字段按照abc排序 /** * @param param 参数 * @param encode 编码 * @param isLower 是否区分小写 * @return */ public static String formatUrlParam(.原创 2021-10-26 17:56:43 · 653 阅读 · 0 评论 -
java对象转map
/** * map转化为string * * @param obj * @return String */ public static Map<String, String> getObjectToMap(Object obj) throws IllegalAccessException { Map<String, String> map = new LinkedHashMap<String, Strin原创 2021-10-26 17:54:00 · 187 阅读 · 0 评论 -
你还在用If??断言代替If
Assert小试牛刀啥?你还在写if判断?啥年代了,out了兄die!!!对数据进行判断并报错时,不要用if了,好多括号,看晕了都出个终极秘诀:断言哈哈哈,没想到吧,废话不多说,上代码!String name ="小黑黑";Integer age=150;AssertUtil.notNull(name, "姓名不能为空");AssertUtil.isTrue(age>150, "年龄不能超过150");对比ifString name ="小黑黑";Integer age=15原创 2021-09-01 18:08:39 · 1000 阅读 · 3 评论 -
java动态追踪,线上问题怎么办?Arthas!!!
Arthasjava动态追踪线上问题怎么办?原创 2021-04-02 18:24:42 · 179 阅读 · 0 评论 -
Jvm参数题
JVM参数-Xmx10240m -Xms10240m -Xmn5120m -XXSurvivorRatio=3其最小内存值和Survivor区总大小分别是(10240m,2048m)解析:-Xmx:最大堆大小-Xms:初始堆大小-Xmn:年轻代大小-XXSurvivorRatio:年轻代中Eden区与Survivor区的大小比值年轻代5120m, Eden:Survivor=3,Survivor区大小=1024m(Survivor区有两个,即将年轻代分为5份,每个Survivor区占一份)原创 2021-02-25 11:32:34 · 825 阅读 · 0 评论 -
不要再循环里抛出异常
今天遇到一个bug,是因为循环中抛出了异常,导致之后的代码都没有执行,,所以哇,这种抛出有可能中断程序执行的,运行中异常,不要在循环中抛出,只记录异常就可以了举个栗子 //反面示例 try{ throw new Exception("我发生异常啦") } catch (Exception ex) { log.info("异常啦"); ex.printStackTrace(); throw ex; .原创 2021-02-02 19:32:54 · 786 阅读 · 1 评论 -
jdk环境安装
环境:C:\Program Files\Java\jdk1.8.0_261https://www.oracle.com/technetwork/java/javase/overview/index.html打开JDK官网版本选择页面。我下载的版本是JDK8计算机右键属性,高级系统设置,高级,环境变量;(2)选择系统变量下的,新建;(3)新建,添加变量名 JAVA_HOME ,变量值为之前自己jdk的安装路径C:\Program Files\Java\jdk1.8.0_231(4)新建.原创 2020-10-10 11:48:07 · 282 阅读 · 0 评论 -
Spring AOP 静态代理和动态代理
几个常见的问题针对这一块的东西,一般下面几个问题面试官问的比较多:* Spring AOP用的是哪种设计模式?springAOP使用的是动态代理设计模式,包括JDK动态代理和CGLIB动态代理,Spring源码中的代理切换逻辑是,判断代理类是否实现了接口,如果实现用JDK动态代理,否则用CGLIB动态代理JDK动态代理和CGLIB动态代理的区别是,JDK动态代理依赖实现接口类来实现,而CGLIB是通过字节码来动态创建一个动态代理类* 谈谈你对代理模式的理解?代理的定义:转载 2020-08-12 17:27:22 · 486 阅读 · 0 评论 -
ArrayList学习笔记
ArrayList源码学习<br>数组优点: 查询快,增删慢serializable(标记接口) 序列化 把对象的数据写入文件 反序列化 把文件中的对象数据读取出来toString()优化 String 字符串拼接会创建很多对象,造成垃圾 StringBuilder 只会创建一个字符串对象 append Cloneable接口(标记接口) 克隆之后 地址:不一样 对象内.原创 2020-07-25 11:26:31 · 135 阅读 · 0 评论 -
HashMap源码理解
Map子类常用有HashMap(无序)和TreeMap(有序)HashMapHashMap底层是:数组+链表实现的,数组下下标存放的是HashCode值,同一个HashCode值是链表,链表中存放的是同一个hashCode,发生Hash冲突的value,底层代码:LinkedList[] list ;key和value是存在一个内部类entry对象(jdk1.7),node对象(jdk1.8)hash冲突:key的hashcode相同,对象不同,例如:Integer a =97; .原创 2020-07-16 09:28:38 · 129 阅读 · 0 评论 -
HttpClient
import java.io.IOException;import java.net.URI;import java.util.ArrayList;import java.util.List;import java.util.Map;//import org.apache.commons.httpclient.HttpStatus;import org.apache.http....原创 2019-12-27 16:55:08 · 161 阅读 · 0 评论 -
Mybatis-Plus自动填充的实现示例
Mybatis-Plus自动填充的实现示例更新时间:2019年08月27日 14:32:17 作者:天一方蓝这篇文章主要介绍了Mybatis-Plus自动填充的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧在常用业务中有些属性需要配置一些默认值,MyBatis-Plus提供了实现此功能的插件。在这...原创 2019-12-26 14:04:53 · 464 阅读 · 0 评论 -
密码加密
import java.security.MessageDigest;/** * @author connie * @version 1.0.0 * @email connie1451@163.com * @date 2019/12/6 17:16 * @since 1.8 */public class A { public static String doSign(...原创 2019-12-26 10:04:17 · 135 阅读 · 0 评论 -
MD5加16进制加密
public static String doSign(String bizData, String charset, String keys) { String sign = ""; bizData = bizData + keys; try { MessageDigest md = MessageDigest....原创 2019-12-06 17:39:16 · 689 阅读 · 0 评论 -
bat文件操作
/* */import java.io.*;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;/** * 批处理文件的执行类.<br> * */public class BATExecutorUtil { ...原创 2019-12-05 16:46:59 · 230 阅读 · 0 评论 -
Map的key,value赋值给java属性,返回java对象
解决问题:map转换为java对象,map的key对应java中对象的属性,value对象属性的值原理:java的反射,找到类中所有的属性名称,判断属性名称与map的key是否相等,相等则赋值工具方法如下: /** * @param map 注意参数为 Map<String,String> 类型 * @p...原创 2019-11-14 11:35:53 · 3375 阅读 · 0 评论 -
SpringBoot跨域配置WebMvcConfigurerAdapter
import com.fasterxml.jackson.databind.ObjectMapper;import com.fasterxml.jackson.databind.module.SimpleModule;import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;//import io.hzih.modu...原创 2019-09-09 16:41:46 · 310 阅读 · 0 评论 -
得到拓扑图两层嵌套
public R getTopology(@RequestParam Map<String, Object> params) { // 获取到数据 List<GatewayCoreEntity> list = gatewayCoreService.getGatewayCore(); List<NetTopol...原创 2018-08-07 09:58:57 · 351 阅读 · 0 评论 -
根据属性值将List集合中的内容进行分类,装进的list
public Map<String,ArrayList> sort(ArrayList list){ TreeMap tm=new TreeMap(); for(int i=0;i<list.size();i++){ PermissionsModuleEntity s=(PermissionsModuleEntity)list.get...原创 2018-04-19 14:36:19 · 3774 阅读 · 0 评论 -
文件操作
linux创建配置文件,并写入内容 /** * 创建文件并创建文件夹 * filepath 文件路径 * @throws IOException */ private void createFile(String filepath) { // 指定路径如果没有则创建并添加 File file = new ...原创 2019-06-14 10:55:13 · 106 阅读 · 0 评论 -
springBoot 全局异常方式处理自定义异常 @RestControllerAdvice + @ExceptionHandler
前言 本文讲解使用 @ControllerAdvice + @ExceptionHandler 进行全局的 Controller 层异常处理,可以处理大部分开发中用到的自自定义业务异常处理了,再也不用在 Controller 层进行 try-catch 了 代码示例地址(代码里面类名稍微有些不同): https://gitee.com/coderLOL/springboot-...转载 2018-12-29 11:37:25 · 597 阅读 · 0 评论 -
配置文件注入静态属性中
原创 2018-12-13 15:26:42 · 690 阅读 · 2 评论 -
sql语句中#{}和${}的区别
#将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by “111”, 如果传入的值是id,则解析成的sql为order by “id”。$将传入的数据直接显示生成在sql中。如:order by userid,如果传入的值是111,那么解析成sql时的值为order by user_i...转载 2018-06-09 16:40:37 · 1050 阅读 · 0 评论 -
Set集合去掉重复
我知道Set集合是无序不重复的,但一般都用的List集合,很少用set,今天用了Set集合,避免数据中的对象重复的问题,但发现并没有解决,,原来是因为:要在对象中重写hashCode和equals方法IDEA中快捷键 Alt+insert这样Set集合中的数据就不会重复了...原创 2018-05-17 14:54:49 · 798 阅读 · 0 评论 -
@NotEmpty、@NotBlank、@NotNull
验证框中@NotEmpty、@NotBlank、@NotNull乍一看还是容易弄混的。主要使用情况记录一下:@NotEmpty 用在集合类上面@NotBlank 用在String上面@NotNull 用在基本类型上...转载 2018-05-03 09:31:18 · 1426 阅读 · 1 评论 -
java后台验证
java validation 后台参数验证 一、前言二、几种解决方案三、使用bean validation 自带的注解验证四、自定义bean validation 注解验证 一、前言 在后台开发过程中,对参数的校验成为开发环境不可缺少的一个环节。比如参数不能为null,email那么必须符合email的格式,如果手动进行if判断或者写正则表达式判断无意开发效率太慢,在时间、成本、质量的博弈中...转载 2018-05-03 09:03:05 · 1436 阅读 · 0 评论 -
java将多个集合放入一个集合,一个集合拆分为多个集合
List<String> list1 = new ArrayList<String>(); list1.add("a");list1.add("b"); List<String> list2 = Arrays.asList("c","d"); list1.addAll(list2);转载 2018-04-19 11:47:13 · 4603 阅读 · 0 评论 -
jdk8的新特性---函数编程lambda
package lambda;import java.util.Arrays;import java.util.Iterator;import java.util.List;import java.util.function.Predicate;import com.google.common.cache.Cache;import com.google.common.collect...原创 2018-04-17 23:36:45 · 136 阅读 · 0 评论 -
对于Oauth2的个人理解,服务器篇
相信大家都知道网上有很多实现oauth2的框架,这个我就不多说了现在我们公司的oauth2是没有用任何框架,全部我自己封装搭建起来的,我先来说说简单的思想1.连接器oauth2,首先在使用之前一定要有连接器,连接器会有client_id和client_secret,redirect_uri三个属性,当中client_id是会暴露给用户的,但client_secret,redirect_uri只在于...转载 2018-04-10 14:12:55 · 228 阅读 · 0 评论 -
代码生成工具
补充一个java版本的代码生成器,功能十分强大,适合生成各种语言的代码包括但不限于增删改查,高级特性中甚至可以结合IDE调试模板;作者通过了很多现成的开放模板;工具操作起来十分简单易懂官方网站:magicalcoder.com...转载 2018-04-09 17:14:26 · 212 阅读 · 0 评论 -
获取指定时间范围内的日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String[] days= new String[10]; for (int i = 0; i <10; i++) { Calendar calendar = Calendar.getInstance(); calendar.add(Cal...原创 2018-06-19 09:20:33 · 1196 阅读 · 0 评论 -
反转数组,list
public class TestCalendar { public static void main(String[] args) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String[] days = new String[10]; for (int i = 9; i...原创 2018-06-20 10:48:39 · 486 阅读 · 0 评论 -
端口占用问题
解决8080端口占用问题在dos下,输入 netstat -ano|findstr 8080 //说明:查看占用8080端口的进程显示占用端口的进程taskkill /pid 4708 /f //说明,运行windows自带taskkill命令,将上面显示的进程号,结束掉。 同理其他端口也如是 全部为原创文章,转载请注明。个人站点www.twobike.cn,欢迎指导交流.......转载 2018-06-20 15:34:49 · 201 阅读 · 0 评论 -
Jqgrid底部合计功能
1.添加属性底部栏 2.原创 2018-11-15 16:10:32 · 1106 阅读 · 0 评论 -
java生成临时文件并删除
import java.io.File;public class FileDemo { public static void main(String[] args) { File f = null; try{ // creates temporary file f = File.createTempFil...转载 2018-10-23 10:02:39 · 2766 阅读 · 1 评论 -
echars 树 图标
echars树的图标改变:1.去阿里下载了图标2.看了个例子:自己运行了可以的:如图<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>echarts demo</title>转载 2018-09-29 18:48:52 · 538 阅读 · 0 评论 -
递归建树parentId,list和树状list互相转换
/** * 使用递归方法建树 * @param treeNodes * @return */ public List<NetTopologyVo> buildByRecursive( List<NetTopologyVo> treeNodes) { List<NetTopologyVo>...原创 2018-08-18 12:07:14 · 1589 阅读 · 1 评论