Java
Org丶bug
尊重原创
展开
-
Linux重启后自动部署java项目
目录开机启动脚本1.创建文件夹2.编写sh脚本3.给脚本添加执行权限4.给/etc/rc.d/rc.local文件添加执行权限5.编辑/etc/rc.d/rc.local文件开机启动脚本1.创建文件夹 mkdir /home/wonders/bin 2.编写sh脚本新编辑文件点击保存自动生成 vim /home/wonders/bin/start.sh #开机、重启需要执行的命令 export JAVA_HO..原创 2020-05-15 16:04:38 · 372 阅读 · 0 评论 -
Mybatis查询结果部分字段为null,返回类型resultMap与resultType区别
场景描述: Mapper中ResultMap已经其他对象定义,在使用ResultType作为对象类型时,发现返回的结果中部分字段为null Mapper中对应的SQL: <select id="queryEmpAndDept" resultType="com.wonder.hsbp.mdm.emp.domain.PubEmpAndDept">...原创 2020-04-15 13:48:27 · 2042 阅读 · 1 评论 -
Shiro记住我无效,被拦截;
Shiro记住我无效,被拦截场景描述: Shiro的记住我功能就是登录的时候,选择了记住当前用户的选项来登录,关闭浏览器之后,在登录信息存活期间再次访问项目里的某个页面可以直接访问。可以在程序中对某些敏感操作进行判断是否为通过记住我登录的用户,从而进行其他一系列限制操作。 在按照网上的配置配置完之后,发现记住我之后再次访问其他功能时,会被拦截,并且不会通过项目中...原创 2018-07-29 01:22:41 · 3124 阅读 · 3 评论 -
JavaWeb项目,每个JSP页面参数互不影响;设置页面JavaScript的全局参数;ajax传递JSON;
场景描述: 诸如管理员查看其它用户的页面。起初后台中是将查看的用户的数据保存在session中,前台使用EL标签获取并展示。导致的问题是一次只能查看一个用户的信息,当同时查看两个用户的页面时,则会导致新打开的用户页面的数据串到之前打开的用户页面中。后来想到,使用request来避免页面数据乱套的问题,虽然前台只需要使用EL标签来获取,但是后台需要设置很多的request.setAtt...原创 2018-07-14 02:04:56 · 470 阅读 · 0 评论 -
Solr---Group分组查询
场景描述:JAVA部分代码: ...// 创建solrQuery对象 SolrQuery query = new SolrQuery(); query.set("q", "*:*" ); /*分组*/ //是否分组 query.setParam("group", true); //分组的字段,不可以是多值字段 query.s...原创 2018-06-28 22:43:33 · 2823 阅读 · 3 评论 -
Solr---查询不出结果,异常:org.apache.solr.client.solrj.SolrServerException: IOException occured when
原地址:https://www.cnblogs.com/mecca/p/3922455.html场景描述: 在按照我自己的遇到的问题在网上找解决办法时,偶然发现一篇很有意义的文章,并且按照他的描述非常符合实际效果。Solrj的query(SolrParams params)方法,查询按照默认的GET方法,可以在debug中查看到确实是按照GET方法将参数放到后缀中,解决办法是使用qu...转载 2018-07-10 23:53:00 · 4187 阅读 · 0 评论 -
Solr---Facet分面查询中时间区间分面的坑
场景描述: 上一篇分面查询文章中,我们提到了时间区间分面,但是在使用的过程中,遇到了很坑的事情,那就是时区。 如果忽视时区,直接设置时间,时间分面查询的结果。很自然的你会设置起始时间都为该月1号00:00:00,但是因为时区的问题,在Solrj处理之后发送给服务器查询时,你可以通过debug看到他的查询条件处理成减了8小时。也就变成了上个月最后一天的16:00:00,如...原创 2018-06-28 00:10:44 · 777 阅读 · 0 评论 -
SpringBoot 导出表格为Excel、CSV、PDF文件
Controller层: //导出处理 @RequestMapping("export.do") public void export(HttpServletResponse response){ //文件名 String fileName="搜索结果"+System.currentTimeMillis()+".xls"; //sheet名 String sheetName="...原创 2018-06-26 23:28:57 · 1148 阅读 · 0 评论 -
Java解析JSON字符串时,如果value中有“[]”,则会在解析后的JSON对象中将此value多加一对双引号解决办法;Java遍历JSON
场景描述: 前台传送过来的JSON字符串为:{"AGE":"[0 TO 1]"},在Java中解析为JSON之后,在控制台输出为:{"AGE":"\"[0 TO 1]\""};而当传送的字符串为{"AGE":"{1 TO 14]"}时,转换成JSON之后,在控制台输出为{"AGE":"{1 TO 14]"};推断:原创 2018-06-26 20:25:02 · 3690 阅读 · 0 评论 -
Java中,JSON对象与JSON字符串之间的转换;JSON对象操作;
说在前面: JSONObject的形式是:{"a":"火龙果","b":"火龙果","c":"火龙果"}。JSONArray形式是:[1,"b","c"]。 其中JSONObject中可以有JSONArray,形如:{"a":["香蕉","草莓"]};JSONAr原创 2018-07-15 18:24:48 · 6239 阅读 · 0 评论 -
Solr---多个过滤查询条件的并集
场景描述: 一开始使用如下代码,使用多个过滤条件限制搜索条件,查询出的结果会是过滤条件的交集。因为业务需求,需要solr查询返回多个过滤条件的并集。SolrQuery query = new SolrQuery();...query.addFilterQuery( "FILE_TYPE:*"); 在网上找了很久,只找到一篇讲到过滤条件并集的,但是并不适...原创 2018-01-18 15:39:18 · 8291 阅读 · 3 评论 -
Solr---Sort排序
场景描述: 按照业务需求需要进行结果排序,当对数值排序时遇到一些问题。若存的是数字字符串,则进行首字母排序,如2比12大这种情况,所以在创建索引的时候需要制定需要排序的字段为int,如下:<field name="EMR_ORD" type="int" indexed="true" stored="false" multiValued="false"/>原创 2018-08-10 00:21:55 · 3905 阅读 · 0 评论 -
项目访问报错: org.springframework.dao.DataAccessResourceFailureException: Connection reset
问题描述: 项目使用一段时间后,发现每次访问的时候,有时候会出现Connection reset这样的错误问题原因: 当数据库连接池中的连接被创建而长时间不使用的情况下,该连接会自动回收并失效,但客户端并不知道,在进行数据库操作时仍然使用的是无效的数据库连接,这样,就导致客户端程序报“ java.sql.SQLException: Io 异常: Connect...转载 2019-01-31 16:02:46 · 13425 阅读 · 0 评论 -
Cache 'redisCache' does not allow 'null' values;设置值为空时不存入Redis;设置unless无效;
[2019-03-05 23:16:46.695] - 20388 严重 [http-nio-8089-exec-5] --- org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/xxx].[dispatcherServlet]: Servlet.service() for servlet [dispatcherServle...原创 2019-03-05 23:20:54 · 7670 阅读 · 5 评论 -
Java工具类拼接SQL;MessageFormat.format拼接SQL;
场景描述: 最近领导要求将某些数据录入到某个表里,但是这些数据太多了,如果是手动敲SQL语句能类似,那不符合我的脾气,所以自己写了个工具类,类生成SQL语句。第一次使用了字符串拼接,但是这种方式可读性非常差,稍有不注意就会少个东西或者多个东西,偶然看到一篇文章的时候,有个MessageFormat.format方法,出于好奇百度了一下才知道它的用处,然后想到了我这里能用上就做了尝...原创 2019-03-31 00:27:18 · 2618 阅读 · 0 评论 -
Mybatis插入数据返回主键;Mybatis参数为实体加其他参数;
场景描述: 之前遇到两个问题,刚好今天两个问题同时出现,就做个记录了。开发过程中,需要在插入的一条数据时,返回该条记录的主键用于后面的操作; 传入的参数为:实体和基本数据类型;Mapper部分: 只需要实体和基本数据类型都加上@Param,并和xml中的值对应上即可。 int insert(@Param("orgNo")Integer orgNo,@...原创 2019-04-02 00:23:22 · 580 阅读 · 0 评论 -
Hadoop相关问题记录
Eclipse Maven Missing artifact jdk.tools:jdk.tools:jar:1.6问题描述: 以前的项目,只是为了解决问题而解决问题,没有去考虑原因,现在由于重装了系统导致之前的配置报错了,遂找了找原因。Eclipse Maven Missing artifact jdk.tools:jdk.tools:jar:1.6原因: ...原创 2019-04-02 00:40:28 · 1310 阅读 · 0 评论 -
MyBatis if判断解析Integer为0的属性不成立;MyBatis动态SQL表达式的“坑”;=与==;
说在前面: 遇到问题时在网上看到两篇文章,虽然都能解决问题,但是第一篇的原因解释有问题,第二篇解释对了,但是太累赘,所以整合了一下。已放入原作者地址,若觉得不详细可以去原作者那里继续研究。参考地址:https://www.cnblogs.com/chenhao-/p/7206482.html场景描述: 使用Mybatis时,常常会判断属性是否为空,当type为...转载 2019-03-28 22:25:23 · 553 阅读 · 0 评论 -
SpringBoot项目无法启动,端口被占用Address already in use;The port may already be in use ;
参考文章:https://blog.csdn.net/define_LIN/article/details/84033733场景描述: 项目以前都是正常启动,今天突然启动不了了,并提示如下错误,由于端口号等已经报给大框架的负责人,修改端口号好像不太合适,怕修改配置文件,再上传又会有什么冲突的问题,我的解决办法是去结束占用这个端口号的进程。 Description: ...转载 2019-04-18 23:37:09 · 2625 阅读 · 0 评论 -
JavaWeb项目中得到访问者的真实ip
原地址:https://blog.csdn.net/github_36301064/article/details/68066741Web项目中得到访问者的真实ip描述:最近要实现个功能是要记录管理员登录的真实ip,但在项目中如果直接使用request.getRemoteAddr()获得ip的话,获得的可能不是真实ip,是因为使用代理的一些原因,所以我们要自己找个方法,具体方法如下:public ...转载 2018-06-19 22:40:14 · 708 阅读 · 0 评论 -
Java退出两层for循环
原地址:https://blog.csdn.net/zengdeqing2012/article/details/72289797方法一:使用标号(可以随便命名)Out: for(int i=0;i<10000;i++){ In: for(int j=99999;j>0;j--){ //break Out; ...转载 2018-07-01 11:19:22 · 1161 阅读 · 0 评论 -
Java与JavaScript的split方法区别;JS中将字符串切分成两部分;
场景描述: Java中可以使用两个参数,将字符串切分成固定的几部分,后面的部分则不关心内部是否有切分的表达式;但是JavaScript中传入的两个参数达不到这样的效果,JavaScript中是将整个全部按照要切分的参数切分好,返回指定个数。Java中方法: public String[] split(String regex, int limit)regex -- 正则表达式...原创 2018-06-26 13:20:46 · 1765 阅读 · 0 评论 -
数组或集合调用前,判断是否为空;&&与||的判断条件细节,避免空指针异常;
首先,了解一下null和.length、.size的区别:null就是意思只定义没有创建对象,如 Object o;如果调用o.length会报错,因为它没有任何.xxx功能。.length则是判断这个数组的元素个数,.size类似。然后,写好的程序中如果我们没有稍加判断,在调用的时候,如果为空或长度小于零,这时候会报错,我们应该提前规避掉这种错误。错误写法:if(xxx.length&g...原创 2018-03-26 22:22:13 · 1217 阅读 · 0 评论 -
@Autowired注解和静态方法
参考地址:https://www.cnblogs.com/chenfeng1122/p/6270217.html 项目中使用jstl的fns自定义标签,在jsp页面中调用工具类(不了解的可以先百度了解下fns自定义标签)<c:forEach items="${fns:assayListUtil('${sessionScope.patient.name}')}" var="e" ...原创 2018-03-26 00:39:08 · 2987 阅读 · 3 评论 -
JSONObject put,accumulate,element的区别
网上看到几个但是感觉都太乱,所以自己整理一份,希望可以帮助需要的人JSON相关包下载地址:百度云地址 密码:q697put:(会覆盖) JSONObject json = new JSONObject(); json.put("a", "苹果"); json.put("b", "香蕉"); json.put("c", "草莓"); json.put("a&原创 2018-03-26 00:09:30 · 1517 阅读 · 1 评论 -
按照solr字段分面查询的查询结果顺序,添加到json后从后台发送前端
描述:solr分面功能查询结果默认是按照计数降序排列的list,内容格式为FacetField的list,而FacetField内容又为:字段+具体分面结果排序list。在遍历FacetField中,以为可以按照取的顺序添加到json中,然而在把json传递给前端页面时发现原本排好序的顺序乱了。问题:问题出在json格式为:{字段:{字段内容:计数}...};原因:找了大量文章发现,json内的...原创 2018-03-08 17:32:22 · 920 阅读 · 2 评论 -
spring+maven项目添加log4j和slf4j日志
1 Pom.xml添加依赖包slf4j-log4j12这个包依赖了slf4j和log4j,所以使用slf4j+log4j的组合只要配置上面这一个依赖就够了 <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId&...原创 2018-02-05 11:22:47 · 2670 阅读 · 1 评论 -
java解析WebService发来的xml内容
WebService的接口交换中是以xml为标准进行交互,一开始不明白到底是怎么交互,以xml对象为参数?传送xml文件?还是以xml字符串进行交互?最后看了对方给的文档才发现是以xml字符串进行交互,对方发送xml格式的字符串过来,这边只需要解析xml格式的字符串就可以了。那么问题来了,如何高效解析xml字符串。需要强调的一点是节点的名字不能直接为数字,所以我将01改成了E01。在网上发现有原创 2018-01-24 17:20:15 · 5685 阅读 · 0 评论 -
java获取ajax传过来的javascript中的数组
ajax部分代码:获取name为categories的checkbox的内容var categories=new Array();//遍历多选框$("input[name='categories']").each(function(i,item){ if(item.checked){ categories.push($(this).val()); }});原创 2018-01-11 14:57:35 · 2468 阅读 · 0 评论 -
Maven项目导入jstl注意事项
Maven项目导入jstl注意事项;missing artifact...;The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application;原创 2017-10-26 11:08:55 · 1328 阅读 · 0 评论 -
Java、Oracle、JSP中的时间转换、获取与操作
Java中的时间格式转换: 声明: parse方法是将时间字符串转换成时间对象;format方法是将时间对象转换成时间字符串; 时间字符串一般有以下几种:一般样式: "yyyy-MM-dd HH:mm:ss"、"yyyy年MM月dd日 HH时mm分ss秒"带有时区样式: "yyyy-MM-dd'T'HH:mm:ss'Z'"系统默认样式: "EEE...原创 2018-05-25 00:13:04 · 1012 阅读 · 0 评论 -
Solr---Facet分面查询
Solr具有分面查询的功能,其中包含字段分面、查询分面、区间分面,也可以在分面中添加fq过滤条件。网上讲的都是字段分面,区间分面少之又少,而且通过solrj从java查询的文章也少的可怜,所以在这里讲一下我是如何操作的。设置查询条件://设置分面query.setFacet(true); // 设置使用facetquery.setFacetMinCount(1); // 设置facet...原创 2018-03-15 10:01:25 · 1471 阅读 · 0 评论 -
mybatis xml中特殊字符处理,转义字符
原地址:http://yaobenzhang.blog.163.com/blog/static/214395113201561523017861/1,CDATA区: 它的全称为character data,以"<![CDATA[ "开始,以" ]]>" 结束,在两者之间嵌入不想被解析程序解析的原始数据,解析器不对CDATA区中的内容进行解析,而是将这些数据原封不动地交给下游程序处理。2...转载 2018-06-18 23:29:17 · 916 阅读 · 0 评论 -
Mybatis与miniui的分页结合,Mybatis排序、miniui分页查询、miniui加载等问题
场景描述: 在项目使用miniui查询数据展示的时候,进行分页展示。但是在分页查询的过程中,发现miniui的ajax传到后台的参数有pageIndex、pageSize、sortField、sortOrder参数,而在每次查询的时候,数据总数是该次分页查询的总数,数据量少的时候完全没什么压力,但是当数据量很多的时候会很卡,完全违背了分页查询提高查询效率的出发点。 我的...原创 2018-06-14 00:13:00 · 2234 阅读 · 0 评论 -
java中指定位数,不足的在前面补“0”,用于拼接RowKey;以及java中去掉小数点后面多余的“0”;
问题描述:查询Hbase时,使用RowKey查询效率会很高,但有时候在已知RowKey由哪几部分字段组成时,会有拼接字符串为RowKey到hbase查询的场景。但是RowKey设计为每段位固定的长高度,不足的需要补“0”。所以,在java程序中,需要调用函数设置固定位数,并用“0”补足。比如将一位的int“2”,处理成四位的“0002”字符串: public static void main(St...原创 2018-05-29 23:02:48 · 1608 阅读 · 0 评论 -
SpringMVC后缀
别人看到我的项目是.do后缀,问我以前是不是用的Struts,还保留着Struts的习惯,我说是的(其实我没用过。。。),目测是以前教我的老师是Struts用多了。然后问同学,他们都是什么后缀都不加,现在的主流应该都是不加后缀的。 通过网上查找发下有一篇这样写,原地址:https://www.cnblogs.com/humeng126/p/3614472.html ...转载 2018-05-23 22:36:25 · 1463 阅读 · 0 评论 -
Solr---删除索引数据,两种较为直接的方法
第一种:最为方便参考地址:https://blog.csdn.net/lbf5210/article/details/51207043在solr管理页面,访问你的索引库 documents type 选择 XML documents 输入下面语句<delete><query>*:*</query></delete><comm...原创 2018-05-22 22:08:13 · 6230 阅读 · 0 评论 -
Maven项目从Eclipse导入到IDEA找不到配置文件cannot resolve file applicationContext.xml
项目在Eclipse下可以完美的运行,可是放到IDEA下,web.xml下却出现如下问题,但是不管他直接发布却也没问题然而在测试junit时,却提示如下错误:问题:java.io.FileNotFoundException: class path resource [spring/applicationContext_*.xml]网上找了很多都不能解决我的问题,怎么找都是报这个错误,确认了路径无误...原创 2018-05-22 21:48:23 · 9845 阅读 · 5 评论 -
Maven项目从Eclipse导入到IDEA
同事以及朋友都在用IDEA,他们说这个功能强大,减少开发,所以打算从Eclipse转IDEA,但是两者有很多地方不相同,所以还是需要花时间去熟悉。在把Maven项目从Eclipse导入到IDEA的时候出现了不少问题,网上可以知道很多,但是对于我这种第一次接触IDEA来说真的有些地方跨度大了,所以在这里记录一下,尽量用图文的方式更容易接受,也希望可以帮到其他人。安装IDEA需要注意的...原创 2018-05-22 21:32:15 · 4167 阅读 · 0 评论 -
Junit下读取HDFS文件内容时异常The client is stopped
在使用junit的test功能时,对要运行的方法加上@Test,方法中调用另外一个线程类来读取分布式系统HDFS上的文件,由于在线程里调用FSDataInputStream类的open方法来读取分布式系统上文件的内容,但是在调用的时候抛出The client is stopped的异常,一开始以为是包的问题,导入很多相关包,但还是这个问题。有文档说是因为FileSystem被关闭了原创 2017-11-09 09:22:34 · 1052 阅读 · 0 评论