java
职场爱学习
职场爱学习,让你35岁没有中年危机。关注“职场爱学习”,快速提升。
展开
-
在两个数之间取随机数,包含min和max
/**在两个数之间取随机数。(int) (Math.random() * (rate.getMax() + 1 - rate.getMin())) 表示取值[min, max],也就是得到的随机数,大于等于min,小于等于max。必须+1,因为不+1,取值是[min, max),也就是,大于等于min,小于max,不包括max。*/return (int) (Math.random() * (rate.getMax() + 1 - rate.getMin())) + rate.getMin()原创 2020-07-02 09:44:39 · 1324 阅读 · 0 评论 -
计算除法,出错。Non-terminating decimal expansion; no exact representable decimal result.
java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.原因:计算除法,出错。解决方法:把BigDecimal的.divide(new BigDecimal(orderNum + “”))改成.divide(new BigDecimal(orderNum + “”), 4, BigDecimal.ROUND_UP)...原创 2020-07-02 09:43:13 · 1104 阅读 · 0 评论 -
mysql 8会提示这个警告,Loading class `com.mysql.jdbc.Driver‘. This is deprecated.
Loading class com.mysql.jdbc.Driver'. This is deprecated. The new driver class iscom.mysql.cj.jdbc.Driver’. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.原因:mysql 8会提示这个警告,不影响使用。解决方法:原创 2020-07-02 09:42:17 · 390 阅读 · 0 评论 -
druid错误,sessionStatMap is full
ERROR [2020-03-16 13:39:07:096][com.alibaba.druid.support.http.stat.WebAppStat-getSessionStat] sessionStatMap is full原因:这是个提示信息,告诉你监控的session个数达到了1000了,后续不会增长了(加入新的,删除老的)。解决方法:方法一、不需要处理。方法二、如果用了其它监控工具,可以配置一下,忽略sessionStatMap is full的报警。方法三、如果有强迫症,可以在原创 2020-07-02 09:41:30 · 7348 阅读 · 0 评论 -
redisson在释放锁时,报错。
java.lang.IllegalMonitorStateException: attempt to unlock lock, not locked by current thread by node id: cf33cced-5530-4f0a-a41b-5366a3d430a7 thread-id: 142原因:redisson在释放锁时,报错。解决方法:把public void releaseLock(RLock rLock) {if(rLock != null) {//如果锁被当前线程原创 2020-07-02 09:40:30 · 4143 阅读 · 0 评论 -
org.springframework.web.servlet.NoHandlerFoundException: No handler found for GET /favicon.ico
org.springframework.web.servlet.NoHandlerFoundException: No handler found for GET /favicon.ico原因:服务器经常有这个报错。可能是Chrome谷歌浏览器,默认不访问在项目中配置的:<%-- 设置网页标题图标 --%>解决方法:方式一(全局修改):如果是tomcat服务器,可以在tomcat的/webapps/ROOT目录,放入自定义的favicon.ico文件。可能会被误删。方式二(局部修原创 2020-07-02 09:39:46 · 6403 阅读 · 0 评论 -
Mybatis druid批量更新, java.sql.SQLException: sql injection violation, multi-statement not allow
Caused by: java.sql.SQLException: sql injection violation, multi-statement not allow原因:Mybatis druid批量更新,不允许单次执行多条sql语句。Mybatis druid批量更新效率最高是第1种。1、insert + ON DUPLICATE KEY UPDATE2、update + foreach3、update + case when更新1000条数据,对比:第1种 1505ms第2种原创 2020-07-02 09:38:34 · 2803 阅读 · 0 评论 -
Unable to send command! Try to increase nettyThreads and/or connection pool size
Unable to send command! Try to increase ‘nettyThreads’ and/or connection pool size settings Node source原因:可能是redis连接池太小,默认连接池最大是64。解决方法:正式环境设置大一点,测试环境设置小一点。正式环境:cluster.redis.masterConnectionPoolSize=500cluster.redis.slaveConnectionPoolSize=500测试环境原创 2020-07-02 09:34:38 · 11937 阅读 · 0 评论 -
sql日志太多,磁盘爆满,java.io.IOException: No space left on device
java.io.IOException: No space left on device原因:磁盘满了。导致所有的接口都报错。因为定时器写了5秒钟执行一次,打印了很多日志。只是一天的时间,tomcat的logs日志就达到了80GB大小。解决方法:首先,把定时器,从5秒钟改成5分钟。然后,把sql的日志级别调高一点,避免频繁打印。 从debug级别改成ERROR级别 ...原创 2020-07-02 09:32:43 · 495 阅读 · 0 评论 -
[org.redisson.client.handler.CommandDecoder-decodeCommand] Unable to decode data.
ERROR [2019-09-03 10:33:01:742][org.redisson.client.handler.CommandDecoder-decodeCommand] Unable to decode data.假设,使用同一个redis服务器,把数据存储到key等于test_student中。A项目,有一个Student实体类,只有一个成员属性name。B项目,有一个Student实体类,有两个成员属性name和age。(Student是从A项目复制过去的,但是被修改了)如果不指定编码原创 2020-07-01 10:50:57 · 8403 阅读 · 0 评论 -
上传文件,报错显示the 413 (Request Entity Too Large)
上传文件,报错显示the 413 (Request Entity Too Large)原因:nginx默认上传文件限制是1M,不修改配置参数超过1M的文件无法上传成功解决方法:测试环境、正式环境,两台机器的nginx都修改配置,两个都重启,问题解决。vi /etc/nginx/nginx.conf–放在server里面的server_name下面一行,发现不行。–放在http里面的default_type下面一行,就可以了–文件上传大小改成10MBclient_max_body_size原创 2020-07-01 10:50:12 · 437 阅读 · 0 评论 -
Class java.util.ArrayList$SubList does not implement Serializable or externalizable
java.lang.IllegalArgumentException: java.io.IOException: java.lang.RuntimeException: Class java.util.ArrayList$SubList does not implement Serializable or externalizable原因:把数据放入redis报错。这是因为,subList()方法返回的List是’RandomAccessSubList’的一个不可序列化的实例。因此,您需要从subL原创 2020-07-01 10:48:54 · 2490 阅读 · 0 评论 -
swagger2打开API文档特别慢,严重影响使用,java.lang.NumberFormatException: For input string: ““
WARN [2019-08-17 11:28:55:334][io.swagger.models.parameters.AbstractSerializableParameter-getExample] Illegal DefaultValue null for parameter type integerjava.lang.NumberFormatException: For input string: “”原因:打开API文档的时候,控制台一直在打印报错日志,导致打开API文档特别慢,严重影响使用原创 2020-07-01 10:42:54 · 4046 阅读 · 1 评论 -
maven打war包,jar包打不进去
maven打war包,jar包打不进去原因:pom.xml文件配置错误。解决方法:org.apache.maven.pluginsmaven-war-plugin3.2.3 ${project.basedir}/doc/lib WEB-INF/lib/原创 2020-07-01 10:41:21 · 476 阅读 · 0 评论 -
tomcat缓存的问题,nginx的代理分发
tomcat缓存的问题原因:这个问题遇到3次了,每次打包是正式环境的,结果重启tomcat,变成了测试环境的数据。检查压缩文件,是正确的。暂时找不到问题,先用maven clean清理本地项目,再打包。然后在部署项目时,先把服务器同名的压缩文件改一下名字,再上传。解决方法:真正的问题是nginx配置了代理分发,导致关闭正式环境的tomcat,接口就请求到测试环境去了。注释掉nginx的代理分发,就解决了。...原创 2020-07-01 10:40:38 · 2394 阅读 · 0 评论 -
this web application instance has been stopped already.
16-Aug-2019 11:44:03.299 INFO [redisson-netty-2-7] org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading Illegal access: this web application instance has been stopped already. Could not load [io.netty.channel.nio.NioEventLoop]. The原创 2020-07-01 10:38:12 · 611 阅读 · 0 评论 -
Caused by: org.redisson.client.RedisException: ERR This instance has cluster support disabled.
Caused by: org.redisson.client.RedisException: ERR This instance has cluster support disabled. channel: [id: 0xf3d69ef0, L:/192.168.1.14:55063 - R:192.23.19.1/192.23.19.1:6379] command: (CLUSTER NODES), params: []原因:自己安装的redis服务器,不是集群的。解决方法:使用阿里云的redis原创 2020-07-01 10:36:02 · 4088 阅读 · 0 评论 -
[Err] 1093 - You can‘t specify target table ‘product‘ for update in FROM clause
[Err] 1093 - You can’t specify target table ‘product’ for update in FROM clause原因:不能先select再update。update product set putaway = ‘已上架’ where id in(select t.idfrom product twhere t.putSet = ‘定时上架’and t.putaway = ‘待上架’and t.putTime <= NOW())解决方法原创 2020-07-01 10:34:04 · 194 阅读 · 0 评论 -
在mybatis框架中,如果不分页查询,当数据超过100的时候,接口返回的数据会自动变成两个数组。
在mybatis框架中,如果不分页查询,当数据超过100的时候,接口返回的数据会自动变成两个数组。解决方法:改成分页查询。原创 2020-06-30 11:11:17 · 613 阅读 · 0 评论 -
使用vue的axios组件,执行post和get请求时,把token参数放入header,被nginx拦截,导致请求失败。
使用vue的axios组件,执行post和get请求时,把token参数放入header,被nginx拦截,导致请求失败。在本地开发,是正常的。尝试配置nginx,试了很多次,都不行。最后放弃了。原因:页面的数据是对象嵌套List,需要转换成json字符串,再提交到后台。这是spring mvc的机制,必须这样处理,否则参数无法提交到后台。后台用@RequestBody接收。解决方法:把token参数拼接在url的后面即可。...原创 2020-06-30 11:10:46 · 1564 阅读 · 0 评论 -
ueditor百度编辑器,在vue项目无法使用。
ueditor百度编辑器,在vue项目无法使用。解决方法:前端、后端分离,vue专门写界面,调用后台的接口。在使用的时候,出现跨域,导致js报错。在本地开发,vue可以配置跨域,功能没问题。上线之后,一直报错,提示跨域错误。配置了nginx,还是不行,最后的解决方案是,修改ueditor.all.js文件的源码,把请求config配置的代码、simpleupload单个图片上传的代码,全都修改。终于可以了。主要修改了ueditor.all.js和ueditor.config.js文件。参考d原创 2020-06-30 11:09:38 · 354 阅读 · 0 评论 -
SEC7120: 在 Access-Control-Allow-Origin 标头中未找到源
SEC7120: 在 Access-Control-Allow-Origin 标头中未找到源 https://b.test.com。SCRIPT7002: XMLHttpRequest: 网络错误 0x80070005, 拒绝访问。SEC7119: https://api.test.com/api/product/single/queryPageRecommendProductPop?typeId=图文 的 XMLHttpRequest 需要飞行前 CORS。SEC7118: https://api.原创 2020-06-30 11:08:44 · 7838 阅读 · 0 评论 -
spring mvc后台返回json数据,IE浏览器提示下载文件。
spring mvc后台返回json数据,IE浏览器提示下载文件。原因:IE8、IE9、IE10不支持json数据。解决方法:把@RequestMapping(value = “/upload”, produces = “application/json; charset=utf-8”)改成@RequestMapping(value = “/upload”, produces = “text/plain; charset=utf-8”)...原创 2020-06-30 11:06:44 · 296 阅读 · 0 评论 -
JSON parse error: Cannot construct instance of
JSON parse error: Cannot construct instance of原因:页面提交json字符串到后台,使用spring mvc接收,出错。解决方法:添加无参数的构造方法就可以了。原创 2020-06-30 11:05:57 · 15932 阅读 · 2 评论 -
java.sql.SQLException: Connection is read-only. Queries leading to data modification are not allowed
java.sql.SQLException: Connection is read-only. Queries leading to data modification are not allowed原因:service类的query()方法,是只读事务,不能修改数据库的数据。解决方法:修改service类的方法名字,改成以save开头即可。...原创 2020-06-30 11:05:18 · 337 阅读 · 0 评论 -
maven打包出错:com.sun.image.codec.jpeg不存在
maven打包出错:[ERROR] /G:/ijworkspace/shopPrj/src/main/java/com/cfsm/common/file/image/ImageUtils.java:[4,32] 程序包com.sun.image.codec.jpeg不存在 org.apache.maven.plugins maven-compiler-plugin 3.8.0 ${maven.compiler.source} ${maven.compiler.target}原创 2020-06-30 11:04:27 · 267 阅读 · 0 评论 -
Caused by: java.sql.SQLException: Incorrect string value: \xF0\x9F\x98\x8A ... for column
Caused by: java.sql.SQLException: Incorrect string value: ‘\xF0\x9F\x98\x8A …’ for column ‘userName’ at row 1原因:包含特殊字符,emoji表情等。解决方法:将这个字段的“字符集”改成utf8mb4,“排序规则”改成utf8mb4_general_ci就可以了。...原创 2020-06-30 11:03:30 · 1027 阅读 · 0 评论 -
Caused by: redis.clients.jedis.exceptions.JedisConnectionException: Failed connecting to host
Caused by: redis.clients.jedis.exceptions.JedisConnectionException: Failed connecting to host 192.168.1.4:6379原因:不能远程其它机器的redis,需要配置允许访问。解决方法:启动本地redis测试。原创 2020-06-29 10:20:14 · 3164 阅读 · 1 评论 -
Caused by: java.lang.ClassNotFoundException: redis.clients.util.Pool
Caused by: java.lang.ClassNotFoundException: redis.clients.util.Pool解决方法:把maven的jedis的版本从3.0.1降低为2.10.2原创 2020-06-29 10:18:26 · 4071 阅读 · 0 评论 -
${pageContext.request.contextPath} 无法解析
<jsp:include page="${pageContext.request.contextPath}/static/jsp/header.iview.jsp"></jsp:include>在Tomcat配置之后,出现${pageContext.request.contextPath} 无法解析尝试了以下的两个方法,都是不行。只能暂时把path="/shop"改成path="/"了。解决方法1:在jsp文件的最上面添加:<%@page isELIgnored=“f原创 2020-06-29 10:17:46 · 470 阅读 · 0 评论 -
druid + log4j2,打印sql。log4j2打印两遍日志。
druid + log4j2,打印sql。log4j2打印两遍日志。解决方法:需要配置两个地方,1、statementExecutableSqlLogEnable参数,设置为true2、log4j2打印两遍日志,需要添加additivity=“false”,而且要把元素放在元素的前面。官网有相关配置的说明:http://logging.apache.org/log4j/2.x/manual/configuration.html完整配置如下:<Root level="INFO"&原创 2020-06-29 10:16:52 · 1778 阅读 · 0 评论 -
Uncaught TypeError: Cannot read property getRange of undefined
Uncaught TypeError: Cannot read property ‘getRange’ of undefined原因:ueditor设置已保存的html出错。解决方法:把ueIntroduction.execCommand(‘inserthtml’, itemDto.introduction);改成//编辑器赋值ueIntroduction.ready(function () {ueIntroduction.execCommand(‘inserthtml’, itemDto原创 2020-06-29 10:15:32 · 1510 阅读 · 0 评论 -
Caused by: java.lang.RuntimeException: JavaBeansDataExchange could not instantiate result class.
Caused by: java.lang.RuntimeException: JavaBeansDataExchange could not instantiate result class. Cause: java.lang.InstantiationException: java.util.Map原因:ibatis查询出错。ibatis中Map作为resultClass时,必须指定具体的实现类,比如java.util.HashMap,否则会报错解决方法:把select * from Spe原创 2020-06-29 10:14:42 · 1029 阅读 · 0 评论 -
com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Every derived table must have its own alias
com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Every derived table must have its own alias解决方法:多表查询,必须设置别名。在ibatis框架中,“as t”必须写,例如:select * from(select a.id,b.name from table_a a,table_b b where a.id=b.code) as t...原创 2020-06-29 10:13:29 · 474 阅读 · 0 评论 -
spring mvc框架中,ServletFileUpload获取上传的文件是空的
ServletFileUpload upload = new ServletFileUpload(factory);upload.parseRequest(request);spring mvc框架中,获取上传的文件是空的原因:因为spring mvc对上传的文件进行了读取,把文件存入MultipartFile中,所以,再次使用upload.parseRequest(request);读取文件,肯定是空的了。文件流只能读取一次。解决方法:spring mvc框架中,不能使用upload.par原创 2020-06-29 10:12:54 · 446 阅读 · 0 评论 -
@ResponseBody返回String数据,显示中文乱码
@ResponseBody返回String数据,显示中文乱码失败的尝试:加上response.setCharacterEncoding(“UTF-8”);response.setContentType(“application/json; charset=utf-8”);完全没用。解决方法:加上produces参数即可。把@ResponseBody@RequestMapping("/upload")public String upload(HttpServletRequest requ原创 2020-06-29 10:12:05 · 1066 阅读 · 0 评论 -
$.ajaxSetup is not a function
$.ajaxSetup is not a function解决方法:把$.ajaxSetup({…});改成$(document).ajaxSetup原创 2020-06-28 11:53:45 · 951 阅读 · 1 评论 -
json数组在后台解析失败Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException
Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize instance of java.util.ArrayList out of START_OBJECT token原因:json数组在后台解析失败解决方法:json数组,在后台接收时,必须把List集合放入另一个java对象中。也就是说,后台不能接收json数组[],只能接收json对象{}。把public Glo原创 2020-06-28 11:51:55 · 8128 阅读 · 1 评论 -
Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException
Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize instance of java.util.ArrayList out of VALUE_STRING token原因:页面传参json数组字符串,导致后台spring无法解析,例如:[{“name”: “1”}, {“name”: “2”}]解决方法:把json字符串,转换为json对象。把{attributes:原创 2020-06-28 11:50:57 · 19452 阅读 · 0 评论 -
java.lang.IllegalArgumentException: Invalid character found in the request target.
java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986原因:参数是中括号时,报错http://localhost:8081/auto/builder/formSetting?attributes=[]解决方法:使用js提供的encodeURI方法对url的参数的值转义..原创 2020-06-28 11:50:19 · 1686 阅读 · 0 评论