web后端
ws加油你是最胖的
一个整天看段子的CODER
展开
-
解决Mybatis-Plus的联合主键问题
使用mybatis-plus时,设置联合主键进行实体类的操作原创 2022-03-11 10:26:39 · 27153 阅读 · 3 评论 -
报异常时,getMessage返回null
有次在查看项目日志的时候发现getMessage()返回值是null,以为是代码写的有问题,后来发现空指针异常时返回值就是null,虽然问题原因找到,但是感觉在日志中单单输出null对我们查看日志不够友好,想找到一种更好的方式。原因翻阅了API后发现getMessage()是Throwable类提供的方法getMessagepublic String getMessage()Returns the detail message string of this throwable.Returns:原创 2021-06-17 15:06:41 · 2384 阅读 · 1 评论 -
mysql的group_concat()长度限制问题
问题:使用group_concat拼接字符串,发现拼接的数量和查询的行数不同原因:GROUP_CONCAT有个最大长度的限制,超过最大长度就会被截断掉,你可以通过下面的语句获得: SELECT @@global.group_concat_max_len; show variables like "group_concat_max_len";解决:1.在MySQL配置文件中my.conf或my.ini中添加: #[mysqld] group_concat_max_len=原创 2021-05-14 15:30:57 · 886 阅读 · 0 评论 -
xxl-job配置
一、xxl-job数据库脚本## XXL-JOB v2.3.0# Copyright (c) 2015-present, xuxueli.CREATE database if NOT EXISTS `xxl_job` default character set utf8mb4 collate utf8mb4_unicode_ci;use `xxl_job`;SET NAMES utf8mb4;CREATE TABLE `xxl_job_info` ( `id` int(11) NOT原创 2021-04-06 16:19:17 · 825 阅读 · 1 评论 -
jenkins定时构建
1.定时构建语法*号等同于H,表示任意一个合理的数* * * * *第一个*表示分钟,取值0~59,若其他值不做设定,则表示每个设定的分钟都会构建5 * * * * ,表示每个小时的第5分钟都会构建一次第二个*表示小时,取值0~23, 若其他值不做设定,则表示每个设定小时的每分钟都会构建* 5 * * * ,表示在每天5点的时候,一小时内每一分钟都会构建一次第三个*表示一个月的第几天,取值1~31,若其他值不做设定,则表示每个月的那一天每分钟都会构建一次* * 5 * *,表示在每个月原创 2021-03-09 17:41:33 · 265 阅读 · 0 评论 -
记PageHelper分页后对list操作导致分页无效
用PageHelper进行分页,对产生的原生List a对象进行了操作后,将其中的对象包装到List b中,导致返回给前端的列表总数量不正确,下边博文总结的很好,特此记录传送门:https://blog.csdn.net/qq_35080796/article/details/105508744...转载 2021-02-07 17:34:59 · 373 阅读 · 1 评论 -
Aspose.Words 使用模板导出后会出现段后行距变化问题解决
使用aspose将数据导入word中发现布局有些乱,出现了不居中的情况,如下图 琢磨了半天,发现是aspose将段后间距改变了,如上图阴影,在网上找了一些处理方案Aspose.Words.Document doc = new Document("c:/test.docx");//新建一个空白的文档Aspose.Words.DocumentBuilder builder = new Aspose.Words.DocumentBuilder(doc);//文档主体内容设置段...原创 2021-01-26 17:24:55 · 1654 阅读 · 4 评论 -
swagger查询结果中注释不显示问题
基本的注解不多说了,大家都会,注意点就是controller层的返回结果,如果包装了泛型,需要明确指出,如下图红框注:如果红框中直接写为Object 返回值什么都正常,但是字段注解不会显示原创 2020-12-01 23:09:28 · 3741 阅读 · 0 评论 -
Parameter metadata not available for these statement Query
今天用spring boot jdbc 报了这么一个错,数据库连接地址加参数或是网上其它的方法都未解决,最终发现是个小马虎:占位符和实际参数不匹配,特此记录下:如: String a = "test"; String b = "test"; String c = "test";sql = " insert into table(a,b,c) values(?,?) ";...原创 2020-03-24 18:09:44 · 486 阅读 · 1 评论 -
@Transactional注解的方法之间调用,事务是否生效的问题
1、@Transactional只有加在public 声明的方法时才起作用。2、@Tansactional声明的方法调用A,调用无@Tansactional声明的方法B时,在A方法执行时,B也会有事务回滚的特性。3、无@Tansactional声明的方法A,调用@Tansactional声明的方法B,事务将不起作用...原创 2019-11-01 15:07:06 · 2491 阅读 · 1 评论 -
JAVABEAN何时需要实现Serializable?
众所周知如果一个对象需要进行网络传输,那么该对象就需要实现Serializable接口,为了防止反序列失败,该对象需提供一个默认的serialVersionUID(该值在反序列化的时候会进行校验校验失败并抛出InvalidClassException异常)。提出疑问现在需要将一个对象返回给前端,那么该对象是否需要实现 Serializable接口,并提供一个默认的serialVersi...原创 2019-08-15 13:48:47 · 1191 阅读 · 0 评论 -
chrome访问网页出现“您的连接不是私密连接”
试了网上说的各种方法,均不起作用,最后将浏览器的设置重置解决,且不会删除浏览记录等。原创 2019-05-15 18:29:35 · 6967 阅读 · 2 评论 -
Invalid bound statement (not found)
写了个mapper,后台一直报找不到里面的一个方法,确定namespace等都没写错,最后发现了一个最一针见血的方法。1.首先直接进入生成的target目录查看目录结构2.看对应的dao包下有没有xml3.如果有,你就不会来找个问题了,肯定是没有的,老老实实的把xml的包逐级新建,不要直接在resources目录下直接新建com.xxx.xxx.dao,要先建立com,然后在com下建...原创 2019-04-23 17:03:51 · 126 阅读 · 0 评论 -
@RequestBody、@RequestParam、@PathVariable区别与使用场景
由于项目是前后端分离,因此后台使用的是spring boot,做成微服务,只暴露接口。接口设计风格为restful的风格,在get请求下,后台接收参数的注解为RequestBody时会报错;在post请求下,后台接收参数的注解为RequestParam时也会报错。问题原因: 由于spring的RequestParam注解接收的参数是来自于requestHeader中,即...原创 2019-03-10 17:22:22 · 1287 阅读 · 0 评论 -
Idea中Maven项目中target目录无配置文件
今天项目中一个maven的子模块怎么都跑不起来,提示某些xml配置文件和日志配置文件找不到,检查半天也没有地方出错,折腾半天发现是因为生成的target目录中无配置文件。导致原因:我的资源目录是自己创建的起名为resource,并且将之指定为了资源目录,但是这个是有规范的,虽然能随意指定资源目录,必须将其命名为resources才能正常使用。解决方法:将存放配置文件的目录改名为resour...原创 2018-12-22 17:30:28 · 10858 阅读 · 6 评论 -
依赖的scope作用域详解
Maven的一个哲学是惯例优于配置(Convention Over Configuration), Maven默认的依赖配置项中,scope的默认值是compile,项目中经常傻傻的分不清,直接默认了。今天梳理一下maven的scope。scope的分类compile默认就是compile,什么都不配置也就是意味着compile。compile表示被依赖项目需要参与当前项目的编译,当然后续...原创 2018-12-19 16:05:39 · 268 阅读 · 0 评论 -
EL表达式之requestScope
平时写项目很多的在后台遇见request.getAttribute(),偶然在看一个项目的时候,看到了这个EL表达式(jsp注释处是我自己改写的试了试)<div><spring:message code="Message"></spring:message><font color="purple" size="12">${requestS原创 2018-05-01 17:20:44 · 1127 阅读 · 0 评论 -
Hibernate Validator (从配置到国际化)
最近在改一个SSM项目,需要用到框架的校验,之前没有用过,从实现校验到检验提示的国际化,也是废了一番功夫,话不多说教程发上!第一步,下载Hibernate-validator包,可百度进入官方下载页面,我下载的是6.0.9第二步,将改压缩包中的相关JAR包导入到你的工程中去(此处留意一下工程中有没有重复JAR包)第三步,在你的项目中配置 Validator(此处贴出相关配置文件)springmvc...原创 2018-05-09 17:48:07 · 7660 阅读 · 4 评论 -
Struts中文乱码的解决方法
在进行struts开发的过程中。总也是出现非常多的乱码问题。但归根究竟,也仅仅是下面三种情况: ㈠页面显示中文乱码 ㈡传递參数中文乱码 ㈢国际化资源文件乱码 以下就这三中情况介绍怎么在详细项目中处理这些乱码问题。而对于总体的处理思想。是要统一编码为: UTF-8.(以myeclipse6支持的struts1.3为准) ㈠页面显示中文乱码 对于在页面中显示出现乱码,这个问题比較简单,便是...原创 2018-07-10 09:37:46 · 344 阅读 · 0 评论 -
javax.servlet.jsp.JspException: Cannot retrieve mapping for action:xxxxxx
出现这个错误的原因是一个表单的action没有与之对应的mapping相匹配,注意找找jsp和struts-config看每个细节是否写错给出一个简单的例子hello.jsp页面<%@ page language="java" contentType="text/html;" pageEncoding="UTF-8"%><%@ taglib uri="http://st...原创 2018-07-10 09:44:58 · 1096 阅读 · 0 评论 -
properties配置文件修改后读取不到的解决方法【终极方案】
相信很多人也都遇到过这个问题了,最近又一次遇到了,不是读不到内容就是报IllegalArgumentException: Malformed \uxxxx encoding.这次小结一下之前的解决方法。1.将工程clean一下,然后继续跑,如果解决就OK,不行看第二条。2.终极方案:更换编码,不一致的编码也会导致key读取不到对应的value(读取properties的文件和properties文...原创 2018-07-10 11:03:54 · 5830 阅读 · 0 评论 -
表格提交后获取到的中文数据乱码解决方法
<% request.setCharacterEncoding("UTF-8");%> 这里是设置字符编码的方法,编码具体可以自行设定。 这段代码一定要加到获取表单数据(如request.getXXX或者<jsp:useBean>标签)的前面,建议直接加到代码段最顶端,免得出错,这个小问题让我又是改数据库的编码又是改网页编码,最后发现是因为这个小问题。 ...原创 2018-07-04 15:52:08 · 481 阅读 · 0 评论 -
脏读、幻读、不可重复读和丢失更新
前两天整理之前的学习笔记时,发现对事务并发产生的问题——脏读、幻读、不可重复读和丢失更新这些概念有点模糊,于是又重新温习了一遍,现在把自己的一些理解归纳整理如下,方便大家学习。 锁就是防止其他事务访问指定资源的手段。锁是实现并发控制的主要方法,是多个用户能够同时操纵同一个数据库中的数据而不发生数据不一致现象的重要保障。 一般来说,锁可以防止脏读、不可重复读和幻读。1.脏读(Di...原创 2018-10-17 18:39:17 · 794 阅读 · 0 评论 -
tomcat与IDEA集成&创建一个web项目
最近使用IDEA跑J2EE,顺便写一些入门教程,方便学习使用IDEA。一、配置Tomcat到Idea中 首先点击run--Edit... 然后展开defaults 然后点击Tomcat Server--Local--Configure,选择你Tomcat的安装目录(我的此处爆红,是因为之间配置过,然后删掉了)二、创建J2ee项目点击F...原创 2018-11-01 13:30:41 · 401 阅读 · 0 评论 -
Jsp页面中地址栏参数传入中文的乱码问题
最近写一些东西,使用超链接在地址栏里传入中文后,遇见了一些乱码问题,查了一些资料,做一些总结。一、Get提交方式产生的乱码原因:浏览器首先会将这些中文字符进行编码然后再发送给服务器,地址栏中所输入的URL包含中文字符时,浏览器会将它们转 换为 application/x-www-form-urlencoded MIME 字符串,即一堆%xx%xx的字符串。解决方法: ①js或超链接...原创 2018-11-11 19:45:13 · 1153 阅读 · 0 评论 -
Uri和Url区别
网上天花乱坠的回答一大堆,抽出来一部分说的比较精髓的,和自己的理解。首先,原来URI包括URL和URN,即URL是URI的子集,后来URN没流行起来,关系可以参考下图。URN就不讨论了,可以看出URI比较宽泛,而URL则比较细,连协议类型都指定了。或者你就这么简单的理解一下- -URI :树URL:杨树--or--URI :花URL:桂花...原创 2018-11-11 20:27:22 · 237 阅读 · 0 评论 -
解决IDEA中的operator is not allowed for source level below 1.7
<>operator is not allowed for source level below 1.7不难看出报错的原因是编译版本低于1.7时,’<>’这种省略类型的泛型语法不可用。搜索该错误,得到的答案大约为两种: 大部分复制粘贴的答案都是在eclipse中遇见的该错误,解决方案是设置项目的java编译版本和jdk版本为1.7及以上。检查了我的idea的相关设...原创 2018-11-08 20:54:18 · 4256 阅读 · 0 评论 -
ofType和javaType的区别(Mybatis)
JavaType和ofType都是用来指定对象类型的,但是JavaType是用来指定pojo中属性的类型,而ofType指定的是映射到list集合属性中pojo的类型。pojo类: publicclass User { privateint id; privateString username; privateString mobile; privateL...原创 2018-12-03 20:51:23 · 2348 阅读 · 0 评论 -
在jsp中的request
今天在知乎看到一个小问题,可能这也是前期我们都有疑问的,答主的解答比较好,于是就干脆收录过来,自己消化,别方便大家理解。原问题:在jsp界面用request.setAttribute("aaa","bbb")提交到servlet后,在servlet中用request.getAttribute("aaa");语句却为什么接受不到任何值啊!解答(以下附上了作者信息):作者:chainho...原创 2018-05-01 16:58:06 · 526 阅读 · 0 评论