![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
java-后端语法相关
java后端语法逻辑遇到的问题以及解决办法
睁开眼睛去看这个世界
每天都有进步每天都有意义,勿做井底之蛙
展开
-
【java-电子签章功能实现】
本文主要描述如何对已有的word文档进行字段填充后,进行电子签章(CA证书)生成pdf文件废话不多数,上代码(涉及的工具类较多,有不全的评论即可,看到会及时补充)原创 2024-06-24 10:08:01 · 204 阅读 · 1 评论 -
【问题解决】@Retryable和@Recover的使用踩坑记录
最开始的时候没有触发到托底操作,也就是@Recover方法的一直没有被执行,后面发现几次系统中的全局捕捉异常会抓到系统异常,由于日志加的不全,没有怀疑是托底操作的原因,后面发现是由于@Recover修饰的方法的返回值类型与@Retryable修饰方法的返回值类型不一致导致。在项目中有调用第三方公司数据接口,因为调用该接口的时候存在不稳定因素,比如网络波动、接口数据返回超时等等,代码中做了重试策略,采用了@Retryable和@Recover组合的方式进行处理。原创 2023-04-26 18:46:15 · 878 阅读 · 0 评论 -
java-@WebFillter注解使用问题
如果添加了@Component或@Configuration,又添加了@WebFilter(),那么会初始化两次Filter,并且会过滤所有路径+自己指定的路径 ,便会出现对没有指定的URL也会进行过滤原创 2021-10-12 10:20:43 · 162 阅读 · 0 评论 -
Java-无法找到jar包内文件报错 本地idea调试没问题 服务器报错
问题情景:ideajar包内放入json文件,本地读取没有问题,部署到服务器后报找不到文件的错误。解决方案:ClassPathResource resource = new ClassPathResource(path);File flowFile = resource.getFile();使用以上方式读取resource下的文件,IDEA本地测试ok的,但是打成jar包后扔到linux就读不到了,因为打成jar包后,文件在jar里面,resource.getFile()不会读取jar的压缩包,导原创 2021-09-28 10:13:08 · 613 阅读 · 0 评论 -
Java---@WebFilter中urlPatterns失效
问题描述:在项目中针对某个接口请求进行特殊处理,通过过滤器的方式进行开发,当部署后发现一些本不该过滤的请求过滤了,但是urlPatterns中未添加相关url。@Slf4j@Component@WebFilter(urlPatterns = { OpenConstant.OPEN_PATH + "/alarm_report/*"})解决方案:去掉@Component注解 在启动类中增加@ServletComponentScan参考文章:https://blog.csdn原创 2021-09-08 14:55:26 · 1463 阅读 · 0 评论 -
AOP-对切点请求参数对象的属性处理
问题情境:在web系统对应的后台查询方法中,有一些鉴权问题的处理,每次都要根据当前登陆用户来获取权限对应的数据库字段,每次都要写一堆代码,感觉封装的话每次的使用的参数也不太一致,于是想到用aop的形式进行处理,主要对切面方法的请求参数进行处理。解决方案:代码如下:@Before(value = "pointCut()") public void queryAreaIds(JoinPoint joinPoint) { Object param = joinPoint.getAr原创 2021-04-29 16:12:43 · 1028 阅读 · 0 评论 -
Mybatis-plus 枚举使用报null问题
在使用mybaits-plus 对字典项数据进行处理时,使用到了枚举类的方式,使用时出现null问题。枚举类下图所示:@Getterpublic enum GoodsFlagEnum implements IEnum { DOWN(0, "下架"), UP(1, "上架"), ; private final Integer value; private final String desc; GoodsFlagEnum(Integer value,原创 2021-04-09 17:06:42 · 1330 阅读 · 0 评论 -
java String字符串每隔两位截取后进行处理
代码示例:public enum ThroughWayTypeEunm { IN_FACE(1,"刷脸") , IN_QR(2,"扫码") , IN_CARD(3,"刷卡"), IN_FINGERPRINT(4,"指纹"), IN_IDCARD(5,"身份证"), IN_HEALTHCODE(6,"健康码"), IN_FACT_TMP(7,"人脸测温"),; private int value; private String t原创 2021-03-17 13:59:38 · 2120 阅读 · 0 评论 -
row.getCell()获取单元格为null,空指针异常
在表格上传中,某一列的内容没有填写进行文件上传,上传报空指针异常。如下图这种数据表格:解决方案:if (row.getCell(5)==null){ orderDesc = getCellValue(row.createCell(5)); }else{ orderDesc = getCellValue(row.getCell(5)); }...原创 2020-03-16 15:18:58 · 10824 阅读 · 2 评论 -
java在日期上添加时分秒方式:
第一种:Calendar c = Calendar.getInstance();c.setTime(Date);c.add(Calendar.HOUR_OF_DAY, 11);Date newDate = c.getTime();第二种:SimpleDateFormat formatter = new SimpleDateFormat(“yyyy-MM-dd”);SimpleDate...原创 2019-07-16 17:32:44 · 9538 阅读 · 0 评论 -
关于json树的处理(mui的三级联动需要的是json树形式的数据)
原文代码连接阿里fastjson将集合转为树形结构package com.etoak.test;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject;import java.util.ArrayList;impo...转载 2019-06-20 17:15:45 · 1289 阅读 · 0 评论 -
反射的理解(newInstance()方法)
有一个判断题目:constructor只能在new对象的时候被使用,正确还是错误? 答案是错误;证明:反射中有个newInstance()方法会调用无参构造方法。反射目前的理解:得到class对象后,反向的获取目标对象的各种信息。反射就是把java类中的各种成分映射成一个个的Java对象1、获取Class对象的三种方式1.1 Object ——> getClass();1.2...原创 2019-05-16 11:49:03 · 6008 阅读 · 0 评论 -
常见的运行时异常
常见的运行时异常ArithmeticException => 算术异常 NegativeArraySizeException => 负数数组大小异常ArrayIndexOutOfBoundsException => 数组索引值超出边界异常StringIndexOutOfBoundsException => 字符串索引值超出边界异常IndexOutOfBounds...原创 2019-04-29 10:35:44 · 234 阅读 · 0 评论 -
Java中接口和抽象类的区别----整合
一.设计层面上的区别设计层面不同,抽象类作为很多子类的父类,它是一种模板式设计。而接口是一种行为规范,它是一种辐射式设计二.具体区别:(一) 继承方面:(1) 抽象类只能单继承;接口可以多实现(二) 成员属性方面:(1) 抽象类中可以有普通属性,也可以有常量(2) 接口中的成员变量全部默认是常量,使用public static final修饰,这个可以省略不写(三) 代码块方面:...转载 2019-04-29 10:23:46 · 129 阅读 · 0 评论 -
Quartz整合spring时两种获取spring ioc容器的方法----------day11
第一种:第一步在Spring的配置文件中加入:value的值是一个key并且定义service <bean id="scheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> ...原创 2019-04-22 19:36:01 · 362 阅读 · 0 评论 -
uncategorized SQLException; SQL state [99999]; error code [17059]; 无法转换为内部表示; nested exception is j
查询String为主键的sql 赋值到Ztree上,uncategorized SQLException; SQL state [99999]; error code [17059]; 无法转换为内部表示; nested exception is java.sql.SQLException: 无法转换为内部表示这个报错经过查找原因,结果是因为自己将String类型的结果值强加到类型为int类型...原创 2019-12-11 17:44:41 · 7421 阅读 · 0 评论 -
发送邮件:com.sun.mail.smtp.SMTPSendFailedException: 554 DT:SPM 163 报错
**com.sun.mail.smtp.SMTPSendFailedException: 554 DT:SPM 163 报错**官方解释为: •554 DT:SPM 发送的邮件内容包含了未被许可的信息,或被系统识别为垃圾邮件。请检查是否有用户发送病毒或者垃圾邮件;看了很多文章,主要的解决办法一般有两种:一.抄送给自己邮箱一份(我没有用这个方法解决)二.电脑的网络环境有问题。自己电脑...原创 2019-04-17 19:12:51 · 13336 阅读 · 5 评论 -
CXF中 the namespace on the "definitions" element, is not a valid SOAP version报错!
org.apache.cxf.binding.soap.SoapFault: "http://schemas.xmlsoap.org/wsdl/", the namespace on the "definitions" element, is not a valid SOAP version.遇到以上中报错,将axWsServerFactoryBean factory=new JaxWsS...转载 2019-04-15 15:08:02 · 4473 阅读 · 0 评论 -
org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML报错
dubbo整合SpringMVC项目出现如下错误原因是没有导入duboo的jar包!!!<dependency> <groupId>com.alibaba.spring</groupId> <artifactId>spring-context-support</artifac...原创 2019-04-12 11:52:38 · 347 阅读 · 0 评论 -
SpringMVC简单的文件上传
第一步:引入maven依赖<dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.3</...原创 2019-04-08 21:46:01 · 163 阅读 · 0 评论 -
@Controller和@RestController的区别?
@Controller和@RestController的区别?知识点:@RestController注解相当于@ResponseBody + @Controller合在一起的作用。如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,或者html,配置的视图解析器 InternalResourceViewResolver不起作...转载 2019-04-24 11:31:13 · 431 阅读 · 0 评论 -
REST --URL定位资源
URL定位资源,用HTTP动词(GET,POST,DELETE,DETC)描述操作REpresentational State Transfer 直接翻译:表现层状态转移使用Rest前,首先说一说Rest请求方式的好处,首先就是面向资源URI,即http请求的路径,Rest规定中要求URI各层只能用名词不用动词,这样相比传统的get请求有利于传输数据的稳定性,数据的操作流程不会被人轻易看破,也...转载 2019-04-09 22:56:20 · 681 阅读 · 0 评论 -
Token高并发解决方案
Token高并发解决方案一:作为token使用的第三方 客户端模式使用token可以采用单例模式或定义一个全局变量isRefresh 标志,加同步锁Synchronized来保证token过期的那个时间点,刷新token方法只被调用一次。二:作为token服务器端:后端方案:利用 Redis 缓存当同时发起多个请求时,第一个接口刷新了 Token,后面的请求仍然能通过请求,且不造成 Token 重复刷新。那么,后端在用户第一次登录时,需要将生成的 Token 数据(token 和 createTi原创 2021-01-05 15:57:48 · 2384 阅读 · 1 评论 -
Maven:父子模块项目,子模块配置不引用父模块某个依赖
问题发生情景:由于项目原因,微服务项目下,某个模块的代码是单独部署启动的,有些依赖引用父模块的依赖,但是不引用Eureka模块的依赖,没有对其配置之前,出现下图所示错误。报错:DiscoveryClient_UNKNOWN/192.168.86.108:8202 - was unable to send heartbeat!通过设置子模块不在引用父模块的eureka依赖解决该问题。子类重写,定义scope为test,打包则不会出现,亲测可用参考以下文章:https://www.oschi原创 2021-02-20 11:57:55 · 3445 阅读 · 1 评论 -
base64图片转换工具类以及base转图片工具
import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import org.apache.commons.codec.binary.Base64;/** * 将图片转换为Base64<br> * 将base64编码字符串解码成img图片 *原创 2020-11-20 16:53:44 · 1368 阅读 · 0 评论 -
VUE-两层for循环 外层长度会变化时,外层i--
for (let i =this.dataForm.roleList.length-1; i>=0; i--) { let obj = this.dataForm.roleList[i] let deptTabId = obj.id debugger if (obj.type === '组织') { if (common.commonDeptRoles.length < 1) { thi原创 2020-11-04 20:36:07 · 208 阅读 · 0 评论 -
Oracle复制一份数据库到本地
问题情境:需要将服务器上的数据库导一份到本地数据库,想到的处理方案有两种,方案一:导出一份sql脚本,在本地执行(无奈navcat和plsql等工具使用起来遇到了各种各样的问题,遂采用方案二)方案二:服务器为linux数据库:imp 账号/密码@ip:11521/orcl full=y file= E:\20200508qys.dmp ignore=yexp 账号/密码@ip:11521/orcl file= E:\20200722qys.dmp owner=qys...原创 2020-07-28 14:55:45 · 461 阅读 · 0 评论 -
java后端代码模拟前端发送websocket请求
怎么调用websocket作为通道发送数据1.现有多个线程查询不同的设备获取不同的数据。2.当网页打开后自动产生一个websocket连接。上面12两点已经完成,但是现在对我来说查询线程和websocket它们相互独立,怎么才能在查询线程中调用websocket的send方法把数据传到前台网页呢。解决方案:package com.quantfn.strategy.atrfuture.test;import org.java_websocket.client.WebSocketClient;i原创 2020-07-28 14:51:06 · 6342 阅读 · 1 评论 -
jdk8 stream的分组功能list.stream().collect(Collectors.groupingBy(对象Vo::分组标志字段))
list.stream().collect(Collectors.groupingBy(对象Vo::分组标志字段));业务场景:表结构大概这个样子:前端返回样式{1:[{ key:value,key:value,…},{ key:value,key:value,…},…],2:[{ key:value,key:value,…},{ key:value,key:value,…},…],}SQL 写起来的话 group by 自己经验还不太够,就想着如何原创 2020-06-22 15:57:01 · 18085 阅读 · 1 评论 -
Json数据处理 And 对象接收数据库查询结果字段为null时,空指针异常
<问题一>Integer 和Int 区别Integer的默认值是null,int的默认值是0<问题二>用navcat对某一个表新增一列后查询提示无效的列情景:用navcat在某个表中新家了一个字段,字段是小写的,不被识别,加上双引号就可以使用,将字段改为大写后问题得以解决。<问题三>JsonObject的非空判断jsonObject.isNull()1.从map中取出不存在的键值对时不会报异常,会返回null。2.在JSONObject中取不存在的键值对时原创 2020-06-16 14:31:00 · 862 阅读 · 0 评论