![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
张小帅和刘美美
慢慢来,一步一个脚印。保持热情
展开
-
记一次Jar冲突解决
背景:一个老的Boot项目引入微服务,所以打算使用feign1.微服务的feign接口打包2.引入POM<dependency> <groupId>com.xxx</groupId> <artifactId>xxx-api</artifactId> <version&...原创 2020-04-27 17:29:28 · 203 阅读 · 0 评论 -
NATAPP错误:显示已经连接成功了,但端口尚未提供服务
natapp默认按教程安装好后,发现请求时出错解决:购买隧道的后台,修改端口我的默认是80,但是tomcat是8080。我在后台修改为8080重启客户端就好了。2.服务链接使用的web服务未启动(需注意,natapp每次重启地址会变动,要查看服务配置的地址是否正确)...原创 2019-12-11 09:36:58 · 7066 阅读 · 4 评论 -
Could not create connection to database server. Attempted reconnect 3 times. Giving up.
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up. at sun.reflect.NativeConstructorAccessor...原创 2019-12-10 16:38:08 · 291 阅读 · 0 评论 -
JDK源码之——AbstractStringBuilder
部分方法没有解释,有疑问或错误的地方,欢迎评论指出import sun.misc.FloatingDecimal;import java.util.Arrays;ort javtil.Arrays;/** * StringBuilder 抽象类 */abstract class AbstractStringBuilder implements Appendable, Cha...原创 2019-03-21 09:17:08 · 165 阅读 · 0 评论 -
JDK源码之——String
部分方法没有解释,有疑问或错误的地方,欢迎评论指出/** * 1、字符串的值创建之后是无法改变的 * 2、String buffers 支持可变字符串。 * 3、因为String对象是不可变的,所以可以共享它们。 * * String str = "abc" ==> char data [] = {'a','b','c'}; String str = new String (...原创 2019-03-11 16:47:43 · 533 阅读 · 0 评论 -
浅析String、StringBuffer、StringBuilder
一、String对象不可变,也就是String对象不能被操作 final修饰表示value对象初始化后 就不能被修改了 String 在构造器中给value赋值所以String对象是不能被修改的。普及常识(String str...原创 2018-12-24 18:08:57 · 129 阅读 · 0 评论 -
JAVA String字符串判空
正确的写法:"".equals(str) 或str == null || str.equals("") 推荐使用:str == null || str.isEmpty()错误的写法:str.equals("") 原因:null不是对象,null没有分配内存空间null表示这个字符串不指向任何的东西,那么没有是否为空的问题,因为引用的实例对象都没有。这时候...原创 2018-12-24 16:47:37 · 6615 阅读 · 0 评论 -
JAVA 获取零时区时间
/** * 得到指定时间的UTC0时间 * @param beforeDate * @param dataFormat 格式为"yyyy-MM-dd HH:mm:ss" * @return */public static String getUTCTimeStr(Date beforeDate, String dataFormat) { SimpleDateFormat sim...原创 2018-11-02 17:59:10 · 7380 阅读 · 1 评论 -
BigDecimal比较大小,BigDecimal判断是否为0
在做项目时,经常用到BigDecimal类型的数据,需要比较大小:声明BigDescimal: BigDescimal bd = new BigDescimal(str1);Integer a = bd1.compareTo(bd2);a = -1,表示bd1小于bd2;a = 0,表示bd1等于bd2;a = 1,表示bd1大于bd2;所以判断 BigDecimal判断是否为...原创 2018-10-26 18:30:52 · 30779 阅读 · 1 评论 -
JAVA --下载文件 点击链接直接下载 而不是打开文件
1- html、jsp 设置a标签属性。我这里就不说了.....(<a href="imges/1.jpg" download="图片"><img src="imges/1.jpgf" alt="图片"></a>)2- PHP<? $file_name = "xxx.rar"; //下载文件名原创 2018-10-29 19:24:36 · 6636 阅读 · 0 评论 -
JAVA -- 生成CSV并上传到 FTP 不生成本地文件
直接上代码POM.XML这里只是主要的jar<dependency> <groupId>net.sf.supercsv</groupId> <artifactId>super-csv</artifactId> <version>2.4.0</version></dependency>...原创 2018-10-29 19:01:33 · 3589 阅读 · 7 评论 -
JAVA -- 生成Excel 并上传到 FTP 不生成本地文件
直接上代码POM.XML这里只是主要的jar<!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml --><dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml<...原创 2018-10-29 18:51:34 · 7460 阅读 · 2 评论 -
java.lang.IllegalStateException: Illegal access: this web application instance has been stopped alr
java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load []. The following stack trace is thrown for debugging purposes as well as to att...原创 2018-09-07 18:31:02 · 49012 阅读 · 10 评论 -
Map的clear踩坑
自己太蠢代码如下:List<Map<String, Object>> listMap = new ArrayList<Map<String, Object>>();Map<String, Object> map = new HashMap<String, Object>();map.put("key",原创 2018-09-07 15:52:19 · 4491 阅读 · 1 评论 -
JDK源码之——StringBuilder
部分方法没有解释,有疑问或错误的地方,欢迎评论指出观看本文章之前,建议观看JDK源码之——AbstractStringBuilderimport java.util.stream.IntStream;/** * StringBuilder主要继承 抽象类AbstractStringBuilder 类 * 很多实现方法在AbstractStringBuilder中,关于详解 ...原创 2019-03-29 16:00:55 · 151 阅读 · 0 评论 -
JDK源码之——StringBuffer
部分方法没有解释,有疑问或错误的地方,欢迎评论指出package java.lang;import java.util.Arrays;/** * StringBuffer 主要继承 抽象类AbstractStringBuilder 类 * 很多实现方法在AbstractStringBuilder中,关于详解 点击下面链接 */public final class Strin...原创 2019-03-29 16:27:31 · 243 阅读 · 0 评论 -
Result Maps collection already contains value for xx.xx.xx.mapper
Spring 整合 Mybatis:原因:第一次生成Mapper后, 更改了字段的名字的类型, 使用逆向生成mybatis的Mapper文件。报错如下:解决:由 图可见提示BaseResultMap重复。我检查了一下发现,是整个mapper的内容都重复了,所以重复逆向生成mapper文件一定要注意。(我重复生成时删除了之前的文件,不知道为什么重新生成,内容还是会重复)找到重复的...原创 2019-09-07 18:02:08 · 159 阅读 · 0 评论 -
JAVA 处理带"AM" 或 "PM"的时间
直接了当:SimpleDateFormat formatTime = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss aa", Locale.ENGLISH);注意:hh:mm:ss 不能是HH:mm:ss如果是HH:正确的结果应该是:2019-03-03 07:10:10 PM反过来解析我们解析需要注意:解析时需要使用 ...原创 2019-07-02 14:08:18 · 8100 阅读 · 2 评论 -
SimpleDateFormat 线程不安全引起的血灾
遇到一个大数据的Excel导入,我的导入方法是:分割数组将多个较小的数组,使用多线程分别导入。其中需要格式化日期,所以用到了SimpleDateFormat。刚开始为了不频繁的 new,减小jvm内存。所以将此实例化放置在使用方法之外,作为类的成员变量使用。但是我发现导入后的数据中的日期 和 Excel中对应不上。后来才知道是这个问题引起的。所以基础很重要啊!,哈哈SimpleDat...原创 2019-07-02 13:18:49 · 200 阅读 · 0 评论 -
JAVA 数组分割为多个数组
/** * 分隔数组 根据段数分段 <多出部分在最后一个数组> * * @param data 被分隔的数组 * @param segments 需要分隔的段数 * @return */ public List<List<T>> subListBySegment(List<...原创 2019-07-02 13:06:12 · 25810 阅读 · 0 评论 -
Map.clear();踩坑
public static void main(String[] args) throws SQLException { List<Object> result1 = new ArrayList<>(); Object a = 1; result1.add(a); a = null; ...原创 2019-07-01 20:00:23 · 2136 阅读 · 0 评论 -
三元表达式踩坑
直接看代码:public static void main(String[] args) throws SQLException { Integer a = 1; Integer b = 1; Integer c = null; Integer d = false ? a * b : c;}这个代码是否有问题?答案:是有的,空指针异常NP...原创 2019-07-01 19:18:13 · 648 阅读 · 0 评论 -
JAVA导入Excel后,时间变为数字,转日期方法
一、先说一下通常的Excel 导入: Excel 导入后,获取时间数据: <在这里 format 就是时间格式> private static String getCellStringVal(Cell cell, String format) { CellType cellType = cell.getCellTypeEnum();...原创 2019-05-28 10:01:42 · 28661 阅读 · 2 评论 -
JAVA——开启异步任务
通过JAVA8提供的 CompletableFuture 来实现 异步操作用法 新建一个抽象类AsynAbstract即可import java.util.concurrent.CompletableFuture;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;imp...原创 2019-04-12 16:18:21 · 2247 阅读 · 0 评论 -
JDK源码之——ArrayList
部分方法没有解释,有疑问或错误的地方,欢迎评论指出package java.util;import java.util.function.Consumer;import java.util.function.Predicate;import java.util.function.UnaryOperator;/** * E - Element (在集合中使用,因为集合中存放的...原创 2019-04-04 16:30:47 · 113 阅读 · 0 评论 -
JDK源码之——Iterable
部分方法没有解释,有疑问或错误的地方,欢迎评论指出import java.util.Iterator;import java.util.Objects;import java.util.Spliterator;import java.util.Spliterators;import java.util.function.Consumer;/** * 实现此接口允许对象使用 “f...原创 2019-03-30 12:04:27 · 146 阅读 · 0 评论 -
基于JDK的几个String工具方法
判断字符串是否为空对象转字符串字符串截取字符串倒序每隔 n 位添加一个 字符(symbol)package com.jdk.copy;/** * @Auther: liuzaihuan * @Date: 2019/3/29 16:31 * @Description: 字符串工具类 */public class StringUtil { /** ...原创 2019-03-30 11:34:09 · 244 阅读 · 0 评论 -
JAVA设计模式之策略模式
Head Fisrt读后而写JAVA代码复用是我们程序员的快速开发的方法,我们下面进入一个案例:描述猫和狗的行为特性:都吃肉,都有毛,都会叫我们可以把这些共同的属性抽象出来:一、AbstractAnimal.java类package com.strategy.pattern;public abstract class AbstractAnimal { public ...原创 2018-09-12 13:16:58 · 121 阅读 · 0 评论 -
JAVA提高之路--Netty
Linux 中的零拷贝技术一、Netty入门教程——认识NettyNetty入门教程2——动手搭建HttpServerNetty入门教程3——Decoder和EncoderNetty入门教程4——如何实现长连接二、Netty原理和使用三、Netty四、 小白科普:Netty有什么用?五、nio框架netty在项目中的应用六、谈谈如何使...原创 2018-08-30 13:53:22 · 892 阅读 · 0 评论 -
后端开发常用Linux命令
clear --- 清屏cd ~ ---回到根目录rz -y ---上传文件 (常用替换class文件,需切换到class所在对应目录)cd /data/server/tomcat_8010/logs/ ---切到日志目录tail -f catalina.out ---查看日志Crtl + C ---退出 ps -ef|grep 8010 -...原创 2018-08-30 10:22:10 · 1324 阅读 · 0 评论 -
JQ 和 JAVA 终止循环 和 跳过循环
JQ : 跳过循环 : $.each(data , function( i, cls){ retuern true;}) 终止循环 :$.each(data , function( i, cls){ retuern false;})JAVA : 跳过循环 :for(int i = 0; i < data.length; i++){ cont...原创 2018-04-13 16:31:51 · 1184 阅读 · 0 评论 -
FORM表单巧操作
巧加载数据$('#text_form').form('load',data);其中data[JSON]:{"input_name1":"service_value1","input_name2":"service_value2"...} input_name:form表单中的input的name,必须要保持一致。 service_value: 后台服务返回数据 ...原创 2018-04-05 16:27:20 · 196 阅读 · 0 评论 -
新安装的MyEclipse需要哪些环境配置?
将workspace的编码设置为utf-8将工作空间的编码设置为utf-8,该工作空间下的所有工程的编码就都是utf-8编码,即每个工程下的所有文件的都是utf-8编码。下面根据图来配置,如下所示:Window->Preferences->General->Workspace->Textfile encoding,将编码设置为UTF-8将...原创 2018-04-05 14:30:38 · 17125 阅读 · 14 评论 -
RocketMQ 源码分析 —— Message 存储
摘要: 原创出处 http://www.iocoder.cn/RocketMQ/message-store/1、概述本文接《RocketMQ 源码分析 —— Message 发送与接收》。 主要解析 CommitLog 存储消息部分。2、CommitLog 结构CommitLog、MappedFileQueue、MappedFile 的关系如下:CommitLog : MappedFileQueu...转载 2018-03-27 15:45:47 · 625 阅读 · 0 评论 -
浅析JAVA反射
浅析JAVA反射废话不多说,直切进入正题。先来一张反射机制的图-->认识反射首先反射我们通过“反”来理解,既然有“反”就一定有“正”,在正常情况下,我们认为一定是先有类再有对象。如下: import java.util.Date;//先有类 public class ReflectTest1 { public static void main(String[] args) ...原创 2018-03-27 15:26:00 · 208 阅读 · 0 评论 -
JAVA - mongodb 聚合查询方式三
三、BasicDBObject+脚本语句java代码实现:BasicDBObject groupIndex = new BasicDBObject();BasicDBObject distinctQuery = new BasicDBObject();distinctQuery.put("userId", new BasicDBObject("$in", userIds));//UserIds...原创 2018-03-26 13:52:07 · 266 阅读 · 0 评论 -
JAVA - mongodb 聚合查询二扩展
二、DBObject接着上一篇JAVA - mongodb 聚合查询方式二进行扩展DBObject match = (DBObject) JSON.parse("{$match:{'status':{$in:['0','1']},type:{$ne:11},'time':{$gte:'"+beginDay+"',$lte:'"+endDay+"'}}}");//status 为0或者为1 ; t...原创 2018-03-26 11:35:10 · 191 阅读 · 0 评论 -
JAVA - mongodb 聚合查询方式二
二、DBObject不多说,如果大家觉得上一篇文章特别长篇大论,那么下面我给大家带来一种代码更简洁的聚合查询:直接上代码吧。1.注意导入的包:import com.mongodb.DBObject;import com.mongodb.util.JSON;2.$macth: (beginDay-查询开始日期;endDay-查询结束日期)DBObject match = (DBObject) ...原创 2018-03-26 11:20:45 · 367 阅读 · 4 评论 -
JAVA - mongodb 聚合查询方式一
一、BasicDBObject整个聚合查询是统计用户的各种状态下的用户数量为场景:1.筛选条件: date为查询日期:BasicDBObject Query = new BasicDBObject();Query.put("time",new BasicDBObject("$gte", date + " 00:00:00").append("$lte", date + " 23:59:59...原创 2018-03-26 11:05:27 · 1998 阅读 · 0 评论 -
JAVA的mongodb查询之OR和排序
JAVA - mongodb OR查询import org.springframework.data.mongodb.core.query.Query;Criteria criteria = new Criteria();criteria.orOperator(Criteria.where("status").is(0), Criteria.where("status").is(1));...原创 2018-03-26 10:35:36 · 4902 阅读 · 0 评论