![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
开发问题解决方法
王一一的博客
人生若只如初见,当时只道是寻常。当你的才华还撑不起你的野心时,你就应该静下心来好好学习。
展开
-
解决 java.lang.NoClassDefFoundError: org/apache/poi/POIXMLTypeLoader 报错
org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: org/apache/poi/POIXMLTypeLoader原创 2024-01-20 15:04:58 · 2797 阅读 · 2 评论 -
SpringBoot实现WebSocket服务端详细代码
最近使用WebSocket开发了一个与Android设备进行数据传输的项目,由于是第一次使用WebSocket,所以将代码记录下来,方便以后查阅。原创 2023-07-03 13:52:00 · 1153 阅读 · 2 评论 -
Windows环境下Tomcat不打印项目日志
2.找到文件中的 call “%EXECUTABLE%” start %CMD_LINE_ARGS% ,将其替换为 call “%EXECUTABLE%” run %CMD_LINE_ARGS%3.打开bin目录下的catalina.bat文件,找到里面四处%ACTION%,在后面追加 >> %CATALINA_HOME%\logs\catalina.out。4.重启tomcat,查看logs目录下的catalina.out文件,发现有项目日志输出了。原创 2023-05-24 10:43:45 · 2771 阅读 · 0 评论 -
Tomcat配置SSL证书
在windows环境下如何配置Tomcat的SSL证书实现https请求。原创 2023-05-23 19:03:02 · 1401 阅读 · 0 评论 -
maven引入本地jar包运行时报错java.lang.NoClassDefFoundError
项目导入本地jar包,在idea上面运行没有问题,导出项目上传服务器后运行提示:java.lang.NoClassDefFoundError 错误信息。是由于项目在打包的时候没有将本地jar包打进去,导致找不到jar包中的class类。就是告诉maven,打包时将导入的本地jar包打进去。重新打包项目,发布服务器运行后发现问题已解决。原创 2023-05-12 20:15:00 · 1858 阅读 · 0 评论 -
SpringBoot整合Swagger3
SpringBoot整合Swagger3详细步骤原创 2023-04-20 15:01:34 · 567 阅读 · 0 评论 -
Java NIO框架
也就是说,它主要是对基于TCP/IP、UDP/IP协议栈的通信框架(当然,也可以提供JAVA 对象的序列化服务、虚拟机管道通信服务等),帮助我们快速开发高性能、高扩展性的网络通信应用,并且提供了事件驱动、异步操作的编程模型。具有丰富的协议,如FTP,SMTP,HTTP以及各种二进制和基于文本的传统协议。Grizzly NIO框架的设计初衷便是帮助开发者更好地利用Java NIO API,构建强大的可扩展的服务器应用,并提供扩展框架的组件:Web框架(HTTP/S)、WebSocket、Comet等。原创 2023-03-29 18:00:00 · 1218 阅读 · 0 评论 -
java将图片转成Base64编码,并压缩至40k
java将图片转成Base64编码,并压缩至40k。原创 2023-03-23 09:00:00 · 9997 阅读 · 0 评论 -
java使用Thumbnailator实现图片压缩
随着现在的手机像素越来越高,生成的照片越来越大,图片上传服务器后加载就会比较缓慢,可以通过上传图片压缩的方式缩小图片大小。而用到的就是Google开源工具Thumbnailator。原创 2023-03-23 12:00:00 · 1393 阅读 · 0 评论 -
Java实现SHA256算法
【代码】Java实现SHA256算法。原创 2023-03-22 21:00:00 · 1786 阅读 · 0 评论 -
Caused by: redis.clients.jedis.exceptions.JedisDataException: ERR Client sent AUTH, but no password
出现这个问题,一般是客户端连接redis时携带密码请求,但是redis未配置密码导致出现这个问题。解决方法有两种;第一种:redis配置文件中,不要填密码。即使密码为空,也要删掉参数名 password 。第二种:修改redis密码,我是在windows环境下操作的,linux环境下修改密码方式自行查找。1.找到redis配置文件 redis.windows.conf,有些是redis.conf,其实大同小异,知道原理即可。2.搜索 “requirepass”,这个就是redis配置密码的地方,将注释#去掉原创 2022-10-19 17:39:23 · 5032 阅读 · 0 评论 -
git生成SSH密钥
1.配置用户名和邮箱git config --global user.name "名称"git config --global user.email "邮箱"2.生成公钥和私钥,并按3次Enterssh-keygen -t rsa -C "邮箱"3.查看密钥cat ~/.ssh/id_rsa.pub4.将密钥添加到云端5.测试是否添加成功ssh -T git@xxxxxxxxxxxxxxx...原创 2022-03-21 14:01:09 · 3477 阅读 · 0 评论 -
java8日期时间LocalDate,LocalTime,LocalDateTime精讲
java8日期时间LocalDate,LocalTime,LocalDateTime精讲简介伴随 lambda表达式、streams 以及一系列小优化,Java 8 推出了全新的日期时间API。Java处理日期、日历和时间的不足之处:将 java.util.Date 设定为可变类型,以及 SimpleDateFormat 的非线程安全使其应用非常受限。然后就在 java8 上面增加新的特性。全新API的众多好处之一就是,明确了日期时间概念,例如:瞬时(instant)、 长短(duration)、日原创 2021-09-16 16:29:39 · 370 阅读 · 0 评论 -
Java8新特性-list按对象属性值排序
1.按id从小到大List<User> sortUser = list.stream().sorted((u1, u2) -> u1.getId().compareTo(u2.getId())).collect(Collectors.toList()); 2.按id从大到小List<User> sortUser = list.stream().sorted((u1, u2) -> u2.getId().compareTo(u1.getId())).collect(原创 2021-09-08 11:43:34 · 1662 阅读 · 0 评论 -
Java8新特性-Stream将List转换为Map
数据:User类中分别有id、name、age三个属性。List集合为userList,存储User对象1、指定key-value,value是对象中的某个属性值。Map<Integer,String> userMap1 = userList.stream().collect(Collectors.toMap(User::getId,User::getName));2、指定key-value,value是对象本身,User->User 是一个返回本身的lambda表达式Map&l原创 2021-09-08 11:38:34 · 350 阅读 · 0 评论 -
map四种遍历方式
准备数据HashMap<String, String> map = new HashMap<String,String>();map.put("1","test1");map.put("2","test2");map.put("3","test3");遍历方式一:需要说明的是,该方法不是最优选择,一般不推荐使用System.out.println("通过map.keyset进行遍历key和value");for (String key:map.keySet()){原创 2021-09-08 11:33:36 · 295 阅读 · 0 评论 -
根据Map的value值进行排序-map排序
package com.sm.util;import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.LinkedHashMap;import java.util.List;import java.util.Map;/** * 根据map的value值进行升序或者降序排列。 * @author Administrator * */public原创 2021-09-08 11:26:26 · 1013 阅读 · 0 评论 -
java验证邮箱地址是否正确
/** * 验证邮箱 * * @param email * @return */public static boolean checkEmail(String email) { boolean flag = false; try { String check = "^([a-z0-9A-Z]+[-|_|\\.]?)+[a-z0-9A-Z]@([a-z0-9原创 2017-08-24 10:24:05 · 5642 阅读 · 1 评论 -
java使用log4j
1.首先需要log4j的配置文件,将配置文件放在src根目录下。配置文件内容如下:` (1) log4j配置详解 - stone - stonexmx 的博客 ### set log levels ### log4j配置详解 - stone - stonexmx 的博客log4j.rootLogger = debug , stdout , D , E log4j配置详解 - stone原创 2018-01-01 12:17:33 · 581 阅读 · 0 评论 -
collection.stream()用法详解
stream()方法和collect()方法都是java8的新特性List<String> widgetIds = widgets.stream().map(Widget::getWidgetId).collect(Collectors.toList());解释下一这行代码:widgets:一个实体类的集合,类型为ListWidget:实体类getWidgetId:实体类中...原创 2019-08-14 10:48:33 · 11485 阅读 · 3 评论 -
java实现发送邮件功能
实现邮件发送功能需要的jar包下载地址:JavaMail 下载地址: https://github.com/javaee/javamail/releasespackage com.gpsi.util;import java.util.Date;import java.util.Properties;import javax.activation.DataHandler;import javax.原创 2017-08-24 10:18:02 · 887 阅读 · 0 评论 -
java实现月份增加
实现自定义当前日期加上想要增加几个月后的日期/** * 日期加一个月 */public String getAddMonth(int month){ Calendar curr = Calendar.getInstance(); curr.set(Calendar.MONTH,curr.get(Calendar.MONTH)+month); //增加一月 Date d原创 2017-08-24 10:11:12 · 3680 阅读 · 0 评论 -
Java File类mkdir()与mkdirs()方法的区别
File file_date = new File(“D:\\yy\\2019-06-17”);// 如果该日期的文件夹存在,就把获得的指令文件夹建到该文件夹下。// 如果该日期的文件夹不存在,就新建一个日期的文件夹。if (file_date.exists()) { System.out.println("该日期的文件夹已经存在!");} else { //如果直接写下面的一句话...原创 2019-06-17 16:57:35 · 3106 阅读 · 0 评论 -
Java定时器(实现每月1号、每日、每15分钟自动执行任务)
需求:在tomcat中,每月一号、每日、每分钟自动执行指定的任务。开发环境: java + tomcat实现思路:在tomcat中,添加监听器,在监听器中设置定时任务。1.监听:新建监听:新建类,implents ServletContextListener 即可:讲解:1.1创建一个基准时间(每日8点),用于参照。在此时间以后的多长周期内执行操作。1.2 schedule(tas...转载 2019-07-10 16:02:54 · 18378 阅读 · 3 评论 -
java生成excel图表
使用java编写生成excel当中的图表图片。 编写之前需要引入jar包,所需要的jar包:jfreechart-1.0.13.jar jcommon-1.0.16.jarpackage com.yuanhe.calculator.util;import java.awt.Color;import java.awt.Font;import java.io.File;import j原创 2018-01-01 12:20:34 · 8106 阅读 · 0 评论 -
java计算两个日期相差的天数
/** * 计算两个日期相差的天数 * @param oldDate * @param newDate * @return * @author WangLiping */ public static int comparePastDate(String oldDate,String nowDate){ SimpleD原创 2017-10-30 14:47:41 · 3041 阅读 · 0 评论 -
java日期时间操作工具类
推迟一周示例: Calendar curr = Calendar.getInstance(); //获取当前时间curr.set(Calendar.DAY_OF_MONTH,curr.get(Calendar.DAY_OF_MONTH)+7); //给当前时间增加一周Date date=curr.getTime();//获取新的时间推迟一个月示例: Calendar curr = Calen原创 2017-08-24 10:12:46 · 246 阅读 · 0 评论 -
java程序运行时间
在程序的开始部分与结束部分分别加上获取当前时间的代码,用结束时间减去开始时间就是程序运行所需的时间。 long startTime = System.currentTimeMillis(); //获取开始时间 doSomething(); //测试的代码段 long endTime = System.currentTimeMillis(); //获取结束时间 ...原创 2018-06-22 14:08:08 · 4138 阅读 · 0 评论 -
java中URL地址中文乱码问题
1.将字符串转码:newString(“xxxxx”.getBytes(“iso-8859-1”),”utf-8”)这种转码方式有很大的弊端,因为它是使用指定的字符集将此String编码为 byte 序列,并将结果存储到一个新的byte 数组中,然后通过使用指定的字符编码将生成的byte 数组解码,构造一个新的String字符串。这种情况就有可能遇到的情况是,不能将一个汉字全部解码完。这样,前边...转载 2019-07-10 15:52:52 · 4770 阅读 · 0 评论 -
Java计算两个经纬度坐标之间的距离
/** * 计算两个经纬度坐标之间的距离 * @param lng1: 第1个坐标的经度 * @param lat1: 第1个坐标的纬度 * @param lng2: 第2个坐标的经度 * @param lat2: 第2个坐标的纬度 * @return */ public static double getDistance(double lng1,double lat1,double lng2,double lat2){ return (111120 * 1 / 0.原创 2021-09-08 09:57:42 · 610 阅读 · 1 评论 -
Library source does not match the bytecode for class 解决方法
首先分析问题打完的jar包,编译的后class跟java文件不一致,原因是重新打包后还是引用之前的java文件,不能重新加载新生成的jar。解决方案方案一IDEA 工具,点击File 》invalidate caches /restart,重启IDEA看是否解决问题。方案二重新构建项目,点击Build 》Rebuild Project,重新构建后看是否解决问题。方案三删除本地的jar包,删除.m2/resposity/XXX.jar,重新加载maven依赖,观察问题是否得到解决。终极解决方转载 2021-08-03 15:43:00 · 1229 阅读 · 0 评论 -
git中ssh与https方式有何不同
1.clone项目:使用ssh方式时,需要配置个人的ssh key,并将生成的ssh公钥配置到git服务器中。下面会谈到如何生成并设置你的ssh key。而对于使用https方式来讲,就没有这些要求。2.push:在使用ssh方式时,是不需要验证用户名和密码,如果你在配置ssh key时设置了密码,则需要验证密码。而对于使用https方式来讲,每次push都需要验证用户名和密码。...原创 2021-07-06 15:29:40 · 253 阅读 · 0 评论 -
Git常用命令整理-持续更新中
下载代码:1.在码云找到你所要使用的代码库,fork一份代码到自己的仓库选“否” 并“确定”,此时会自动跳到自己刚fork的代码库 你已拥有一份属于你的代码库,只不过代码还没有下到你本地2.把代码clone克隆到你本地就可以进行开发工作了,在码云打开自己的仓库,复制git的http协议的url地址,在存放项目的目录下右键选择“git bash Here”,输入git clone + url地址进行下载。常用命令大全$git clone url 将代码克隆到本地git status 查看当前状态【原创 2021-07-06 14:54:46 · 78 阅读 · 0 评论 -
Eclipse的JSP页面提示Multiple annotations found at this line或者String cannot be resolved to a type
解决方法:1.window–>preferences–>java–>Installed JREs–>Add 增加你要用的jdk2.window–>preferences–>java–>compiler,将level选为对应的版本,1.5的就选5.0,1.6的选6.0将JDK还有apache和别人不兼容的版本改下配置接下来最简单的操作,对着原来的JSP页面可以ctrl+A 、ctrl+x、ctrl+v 就不会报错了...转载 2021-07-05 17:30:48 · 357 阅读 · 0 评论 -
Eclipse打JAR包,插件FatJar安装与使用
下载fatJar插件,解压缩后是一个…/plugins/(net…)把plugins下面的(net…)文件夹拷贝到eclipse的plugins下,重新启动Eclipse3.1,Windows=>prefernce=>fat jar preference看到他就说明已经安装成功了。如果没有看到,没有关系,删除D:/eclipse310/configuration/org.eclipse.update/platform.xml文件(此文件可以自动生成)不用担心以前的插件会因此而消失,没事。 刚开始转载 2021-07-05 17:20:14 · 708 阅读 · 0 评论 -
上传文件提示 413 Request Entity Too Large 错误
做了一个文件上传接口,刚开始以为是自己写的代码有问题,后台打断点后发现不是接口的问题,上网查了一下HTTP 413错误,(request entity too large),是HTTP协议状态码的一种,表示“请求实体过大”。当因请求的实体过大,超出服务器的处理能力,导致服务器无法处理请求时就会返回此错误代码,一般在上传文件时可能会出现此错误。既然是上传文件大小的设置问题,那么修改配置文件就好了,三种服务器(nginx,apache,iis) 上的的解决方法:一、 Apache服务器找到apache的配转载 2021-07-05 15:43:20 · 3480 阅读 · 0 评论 -
墨卡托经纬度坐标转换
在GIS中,常会遇到不同投影坐标系之间的转换,学习了解下面的方法进行实现。 public static double[] Mercator2LonLat(double X, double Y) { double[] d = new double[2]; double x = X / 20037508.34 * 180; double y = Y / 20037508.34 * 180;转载 2021-06-01 16:25:39 · 1016 阅读 · 0 评论 -
VMware 虚拟机如何连接网络
ps:本教程是针对虚拟机NAT模式连接网络一、首先查看自己的虚拟机服务有没有开启,选择电脑里面的服务查看;1.计算机点击右键选择管理 2.进入管理选择VM开头的服务如果没有开启的话就右键开启 二、虚拟机服务开启后就查看本地网络虚拟机的网卡启动没有1.电脑右下角网络标志右键进入网络和共享中心2.点击更改适配器,查看虚拟机的虚拟网卡启动没有,没有启动的话右键点击启动 3.网卡开启后设置ip地址原创 2017-01-04 00:31:40 · 149733 阅读 · 20 评论 -
@reference、@resource、@Autowired的区别
1.@Autowiredorg.springframework.beans.factory.annotation.Autowired2.@resourcejavax.annotation.Resource3.@reference@Reference是dubbo的注解,也是注入,他一般注入的是分布式的远程服务的对象,需要dubbo配置使用。总结:@Reference注入的是分布式中的远程服务对象,@Resource和@Autowired注入的是本地spring容器中的对象。...原创 2021-05-31 14:56:01 · 185 阅读 · 0 评论 -
Cannot resolve method println(java.lang.String)
问题描述:IDEA报错 Cannot resolve method println(java.lang.String)不能解析,且不能自动补全解决方法:File -> Invalidate Caches / Restart…清空缓存就可以了原创 2021-05-31 14:27:31 · 2782 阅读 · 1 评论