java
文章平均质量分 57
使用java的一些日常
dmlcq
~0~,代码是程序员的朋友,虽然没有热情,但是非常忠实。没把握,先易后难;有把握,先难后易。
展开
-
IDEA搜索使用正则表达式查出注释
【代码】IDEA搜索使用正则表达式查出注释。原创 2023-02-23 15:33:38 · 357 阅读 · 0 评论 -
乐观锁和悲观锁全面总结及实际应用介绍
介绍常用的几个锁,重点是乐观锁和悲观锁。原创 2022-11-02 18:08:06 · 1220 阅读 · 0 评论 -
调用泛型对象方法List<T>并返回泛型结果Map <String,Object>,参数为具体对象集合,根据不同对象类型进行不同操作
然后调用公共方法getChoosePlansMap(),公共方法可能是不同对象集合。到方法里再根据传入的对象类型,实现不同的处理逻辑。首先要对集合处理,取集合其中某几条的数据,业务方法getRequireMap()。遍历集合,获取参数的实例化对象desObj。最后对泛型map进行实例化转换操作。根据不同类型进行操作。原创 2022-09-08 18:27:41 · 1752 阅读 · 0 评论 -
修改前后台图标
一、前台修改网站图标1、制作一个尺寸16x16大小的图片,可以用图片处理工具来设计,然后保存到本地电脑上,通过网上搜索查找ico在线制作工具,可以查询出很多有关的网站,把jpg图片上传并转换生成一个标准的ico图标命名为:favicon.ico。2、把favicon.ico文件上传到网站的根目录下。并把网站的首页文件的源代码<head></head>之间加上一句:<link rel="shortcut icon" href="favicon.ico" >。原创 2021-11-08 10:36:28 · 513 阅读 · 0 评论 -
用google的zxing包通吃二维码条码!
项目上有需求,生成二维码跟条码,建议我用google的zxing包。先了解了一下zxingZXing介绍摘自百度百科二维条码/二维码(2-dimensional bar code)是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的;在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理:它具有条码技术的一些共性:每种码制有原创 2021-10-11 20:00:53 · 395 阅读 · 0 评论 -
垃圾回收遇到了内存溢出
查了一张表,直接select * from table ,table有50万条数据。然后直接超时,后台报错内存溢出。遇到这个问题,好多人都说直接修改内存,增大内存。首先了解下jvm调优。Java堆(所有线程共享的一块内存区域)1、在虚拟机启动时创建。存放对象实例。2、GC堆,垃圾收集器管理的主要区域。3、通过 -Xmx 和 -Xms 控制,无法再扩展时,将会抛出OutOfMemoryError异常。内部分:新生代(1/3 的堆空间大小)、老年代(2/3 的堆空间大小)新生代又原创 2021-07-13 13:54:04 · 331 阅读 · 0 评论 -
2021-07-06
list的交集,差集,并集工作中用到了list的取差集,发现还是挺好用的。所以记录下。需求 list的方法 说明 备注 交集 listA.retainAll(listB) listA内容变为listA和listB都存在的对象 listB不变 差集 listA.removeAll(listB) listA中存在的listB的内容去重 listB不变 并集 listA.removeAll(listB) listA.addAl转载 2021-07-06 17:43:11 · 93 阅读 · 0 评论 -
Lombok的基本使用
以前的Java项目中,充斥着太多不友好的代码:POJO的getter/setter/toString;异常处理;I/O流的关闭操作等等,这些样板代码既没有技术含量,又影响着代码的美观,Lombok应运而生。为什么推荐使用Lombok:@Lombok有啥牛皮的?SpringBoot和IDEA官方都要支持它!最近IDEA 2020最后一个版本发布了,已经内置了Lombok插件,SpringBoot 2.1.x之后的版本也在Starter中内置了Lombok依赖。为什么他们都要支持Lombok.原创 2021-06-08 17:35:27 · 109 阅读 · 0 评论 -
java对过滤器或者拦截器中Request.parameter中参数进行添加或修改
在讲解这个问题之前,我先讲讲我的需求。我的需求就是处理前台传来的请求,在过滤器里面给表达式的值赋值为系统的值。然后传到具体方法中。过滤器是这么写的:if(StringUtils.isNotEmpty(userId)&&userId.equals(":userId")){ //获取用户id userId=loginUserInfo.getUserId(); //原创 2021-05-24 16:24:38 · 7509 阅读 · 3 评论 -
全方位解决: com.netflix.client.ClientException: Load balancer does not have available server for client
最近在接触微服务项目,出现问题:直接上图出现这个问题需要从服务端和客户端两个方面检查1.服务端,有没有启动服务端?在微服务中,主要采用的就是服务与服务之间的调用,进入eureka注册中心页面。查看需要调用的服务有没有启动,显示在上面2.客户端,有没有配置好信息我的问题属于第二种,但是不跟其他的不一样,有的人配置下ribbon: eureka: enabled: true就好了。我的是配置正常。但是多了两句配置:eureka.client.registe.原创 2021-05-06 17:04:01 · 8125 阅读 · 0 评论 -
单例还是多例?理解和处理保证并发的安全
controller默认是单例的,不要使用非静态的成员变量,否则会发生数据逻辑混乱。正因为单例所以不是线程安全的。我们下面来简单的验证下:package com.riemann.springbootdemo.controller;import org.springframework.context.annotation.Scope;import org.springframework.stereotype.Controller;import org.springframework.web.原创 2021-02-23 16:29:50 · 525 阅读 · 0 评论 -
springBoot项目用ClassPathXmlApplicationContext读取Spring配置文件的路径问题
创建了一个idea创建了springBoot项目,想读取beans.xml文件,但是读取不到,报错路径不对,找不到文件。到网上找了下:ClassPathXmlApplicationContext这个类路径是去找WEB-INF/classes/的,所以在配置的时候可以将配置文件放在项目的源文件夹下面,这样在编译的时候会将该配置文件拷贝到WEB-INF/classes/下面去。这个是针对传统springmvc的web项目。对于springboot项目没有用。后来想了下,springboot项目一般都是.原创 2021-02-20 10:22:08 · 1926 阅读 · 0 评论 -
java大数据计算遇到的科学计数显示问题及运算时精度丢失问题分析解决
大数据计算遇到的科学计数问题及运算精度丢失问题在《Effective Java》这本书中就给出了一个解决方法。该书中也指出,float和double只能用来做科学计算或者是工程计算,在商业计算等精确计算中,我们要用java.math.BigDecimal对于数据的计算可以用java.math.BigDecimal类的原生方法加减乘除都包括了我这里有个工具类可以借鉴参考一下:package com.dm.springboot.utils;import java.math.BigDecim原创 2021-02-02 11:25:46 · 1626 阅读 · 1 评论 -
JAVA 手动分页集合数据
JAVA手动分页集合数据有很多情况下,接口返回的是一个List数据,并不分页,这时就需要我们自己分页,不过前提是接口传回数据是排序过的。这里举个例子,仅供参考:package used;import java.io.Serializable;import java.util.ArrayList;import java.util.List;/** * @program: spring-boot04-web-restful * @description:手动分页集合数据 * @Au.原创 2021-01-15 17:32:09 · 573 阅读 · 0 评论 -
java 自定义类加载器加载class类
java自定义类加载器加载class类首先,需要指定class类路径,其次,需要知道class类的包路径我的class类反编译过来是这样的:package reflect.vo;import java.io.PrintStream;public class Message{ public void send() { System.out.println("hello~~~~~~~~~~~~~~~~world!"); }}方法类:package re.原创 2021-01-15 10:20:50 · 269 阅读 · 0 评论 -
java 读取写入文件文本内容的多种方式及推荐
java 读取写入文件文本内容的所有方式及推荐有许多方法可以读取Java中的文本文件。 文本文件由字符组成,因此我们可以使用Reader类。 也有一些实用程序类可以读取Java中的文本文件。Java read text file usingFileInputStream class Java使用FileInputStream读取文本文件 Java read text file usingFiles class Java使用Files类读取文本文件 Read text file in...原创 2021-01-08 18:56:19 · 1835 阅读 · 0 评论 -
对象数组排序及对象集合排序
对象数组排序及对象集合排序方式一、 排序对象类实现comparable接口的compareTo方法1.对象类class Person implements Comparable<Person>{ private String name; private Integer age; @Override public int compareTo(Person o) { return this.age-o.age; } pub原创 2020-12-30 15:09:56 · 453 阅读 · 0 评论 -
Java8中LocalDate的使用方法工具类
java8提供线程安全、功能强大的时间处理方法。写了一个工具类,方便理解和调用。import java.time.*;import java.time.temporal.ChronoUnit;import java.time.temporal.TemporalAdjusters;import java.util.Date;import static java.time.temporal.ChronoField.DAY_OF_MONTH;import static java.time.te原创 2020-10-28 18:07:39 · 448 阅读 · 0 评论 -
解析Integer.parseInt()及异常处理方法
代码中需要对项目编号转换,数值+1。本以为没啥问题,但是遇到位数多了,问题来了。public class Test { public static void main(String[] args) { // 有符号数int的范围是[-2147483648,2147483647] // 共32位 String num1 = "00001000010000100001"; // 将2进制转为10进制 Integer integer1 = Integer.parseInt(num1)原创 2020-08-18 11:33:25 · 8197 阅读 · 0 评论 -
java计算时间段内的一些特殊日期,及差值
java计算2个日期内的一些特殊日期,及差值1.首先计算日期时间段内每月1号直到结束日期String start="2019-11-01"; String end="2020-03-31"; //转格式为java.util.Date Date startDate = DateFormat.parseDate(start,DateFormat.DT_YYYY_MM_DD); Date endDate = DateFormat.parse原创 2020-08-12 18:23:57 · 539 阅读 · 0 评论 -
java带加减乘除小括号中括号自定义公式及校验
import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.util.ArrayList;import java.util.Stack;import java.util.regex.Matcher;import java.util.regex.Pattern;/** * @auther dm * @date 2020/5/18 13:58 */public class CalculationUtils {...转载 2020-05-18 16:14:33 · 1188 阅读 · 0 评论 -
maven打包步骤及注意事项。
1.首先要设置maven,clean,install。还要注意,修改JDK为需要打包的JDK版本。不然会报各种错误。。。 2.执行。右键项目>run as >maven build3.BUILD Success后包会放在target目录里。4.还要注意pom文件里指定的包类型,是war包还是jar包。...原创 2018-11-15 17:06:57 · 1010 阅读 · 0 评论 -
关于List,ArrayList中remove(object obj)方法不能删除对象问题及解决方法
先看下面代码,大家猜猜打印的结果是什么?为什么?package shiyan; import java.util.ArrayList; import java.util.List; public class ListTest { public static void main(String[] args) { // TODO Auto-gen...转载 2018-09-20 15:46:15 · 12204 阅读 · 2 评论 -
Apache -Common-lang包使用
原文:http://weigang-gao.iteye.com/blog/2188739ArrayUtils – 用于对数组的操作,如添加、查找、删除、子数组、倒序、元素类型转换等; BitField – 用于操作位元,提供了一些方便而安全的方法; BooleanUtils – 用于操作和转换boolean或者Boolean及相应的数组; CharEncoding – 包含了Java环境支持的字符...转载 2018-05-14 13:57:56 · 485 阅读 · 0 评论 -
把一个List拆分为指定大小一样的几个List
转自:http://blog.csdn.net/tengdazhang770960436/article/details/9145405 public static List> createList(List targe,int size) { List> listArr = new ArrayList>(); //获取被拆分的数组个数转载 2017-12-13 15:57:18 · 3320 阅读 · 0 评论 -
将JAR包反编译,修改后重新打包
在学习和开发JAVA项目中,我们经常会用到第三方提供的一些jar。使用这些第三方工具包,可以提高我们开发的效率,缩短开发的时间。有的第三方工具,提供具体的使用说明和源代码,有时有的却不提供源代码,使用说明也不是很具体,这对我们使用就非常不方便。有道是,知其然才知其所以然。有时候,我们必须读取jar里的打包的类。而有时还有可能要对它进行小量修改,使之适用于自己的非凡需求。前期预备原创 2017-11-13 10:55:26 · 22865 阅读 · 0 评论 -
java list集合中元素删除方法小结
印象中循环删除list中的元素使用for循环的方式是有问题的,但是可以使用增强的for循环,然后今天在使用时发现报错了,然后去科普了一下,再然后发现这是一个误区。下面就来讲一讲。。伸手党可直接跳至文末。看总结。。 JAVA中循环遍历list有三种方式for循环、增强for循环(也就是常说的foreach循环)、iterator遍历。1、for循环遍历listfor(int i=0;...原创 2019-03-22 15:27:00 · 493 阅读 · 0 评论 -
得到当前日期内N天的所有日期,并过滤几种格式的时间为正常日期格式
需要距离今天30天内过去所有日期:getDaysList(-30);需要距离今天30天内未来所有日期:getDaysList(30);/** * 得到所有日期 * * @param num 距离今天多少天,正数返回未来日期,负数返回过去日期 */ private static List<String> getDaysList(int num)...原创 2019-03-22 17:24:07 · 207 阅读 · 0 评论 -
统计文章内词出现个数
调用下面方法即可得到文章内指定字符串出现的次数:/** * 统计关键词 * * @param keyword * @param text * @return */ public static Integer getStatisticsKeywordByModeTwo(String keyword, String text) { Pattern patte...原创 2019-03-22 17:31:46 · 315 阅读 · 0 评论 -
比较2个字符串的相似度
比较字符串"我出门了"和"我要出门了",只需调用方法getSimilarityByNormal:// 比较标题相似度Double similarity = SimilarityDegreeUtil.getSimilarityByNormal("我出门了", "我要出门了");方法利用了余弦定理。余弦定理:我们可以通过夹...原创 2019-03-22 17:39:24 · 6758 阅读 · 3 评论 -
文件的写入及读取及删除
写入:writeToFile读取:getContent删除文件:delFile删除文件夹:delFolder删除文件夹及其内容:delAllFile/** * 将内容字段存到文本文件中去 * * @param fileList */ private void writeToFile(List<Map<String, String>>...转载 2019-03-22 17:49:57 · 645 阅读 · 0 评论 -
一步一脚印,了解多线程
转载:ImportNewImportNew4月28日(给ImportNew加星标,提高Java技能)编译:ImportNew/唐尤华0. 引言本文是多线程技术入门篇,对进程、线程、纤程、并发、并行、线程安全、竞态条件等概念进行了介绍,讨论了多线程技术的实现原理、使用中可能遇到的问题以及如何正确处理。伴随着硬件和操作系统的进步,现在的计算机...转载 2019-05-15 18:20:28 · 224 阅读 · 0 评论 -
打包失败,报错:java.util.zip.ZipException: invalid LOC header (bad signature)
一 事件起因: 打包项目,直接EXPORT导出war包,没有报错,但是放到tomcat里面启动报错:...........................................................................................................(省略)cause by: java.util.zi...原创 2019-09-02 14:57:41 · 1126 阅读 · 0 评论 -
解决IO流读取文件乱码问题
读取文件时,出现乱码,文件是txt格式,编码格式默认为ANSI格式,即GBK于是转为utf-8InputStreamReader reader = new InputStreamReader( new FileInputStream(new File("文件路径")), "utf-8"); 但是貌似不支持符号,空格等,输出中文时出现????于是引用一个转码类,原创 2017-02-07 17:40:02 · 15950 阅读 · 2 评论