随笔分类 - Java
摘要:/** * 重写对象toString方法 * * @return String [field=value]... */ public String toString() { return ToStringBuilder.reflectionToString(this, ToStringStyle.J
阅读全文
摘要:Mybatis对应的java和数据库的数据类型,最后有图片 Mybatis java SQL integer int OR Integer INTEGER long long OR java.lang.Long BIGINT short short OR java.lang.Short SMALLI
阅读全文
摘要:方式一 1. distinct()不提供按照属性对对象列表进行去重的直接实现。它是基于hashCode()和equals()工作的。如果我们想要按照对象的属性,对对象列表进行去重,我们可以通过其它方法来实现 public static <T> Predicate<T> distinctByKey(F
阅读全文
摘要:1.对象与字符串之间的互转 将对象转换成为json字符串 String str = JSON.toJSONString(infoDo); json字符串转换成为对象 InfoDo infoDo = JSON.parseObject(strInfoDo, InfoDo.class); 2.对象集合与字
阅读全文
摘要:一、正确的方式: @Select("select * from `test`.loan_link where link_name like concat('%',#{linkName},'%') order by add_time desc") List<LoanLinkEntity> queryB
阅读全文
摘要:java自定义比较器,常用的有两种实现方式Comparable和Comparator Comparable和Comparator的主要区别在于:(1). Comparator 和 Comparable都是Java中的内部比较器接口,都是用来实现对一个自定义的类进行排序(2). 不同的是实现Compa
阅读全文
摘要:一、json 字符串转 map集合,主要是通过迭代器遍历json,然后再把 键值对逐个put() 进map 集合 1. 先导入maven依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <
阅读全文
摘要:cron表达式通过特定的规则指定时间,用于定时任务,本文简单记录它的部分语法和实例,并不完全,能覆盖日常大部分需求。 1. 整体结构 cron表达式是一个字符串,分为6或7个域,每两个域之间用空格分隔,其语法格式为: "秒域 分域 时域 日域 月域 周域 年域" 其中,年域可以省略,省略时表示每年。
阅读全文
摘要:GC原理图,Jdk1.6及以下版本 永久代 永久代是Hotspot虚拟机特有的概念,是方法区的一种实现,别的JVM都没有这个东西。在Java 8中,永久代被彻底移除,取而代之的是另一块与堆不相连的本地内存——元空间。 永久代或者“Perm Gen”包含了JVM需要的应用元数据,这些元数据描述了在应用
阅读全文
摘要:enum类自定义属性 这就是enum比static静态变量好用的地方了,可以赋予每一个枚举值若干个属性,例如 实例1: 实例2: 以上两种都能实现,根据个人喜好选择,个人更倾向于实例1,代码结构更优美
阅读全文
摘要:获取指定日期的时间戳 当前时间往前或往后推迟minute分钟,返回格式:yyyy-MM-dd HH:mm:ss 获取当前时间往前(正数)或往后(负数)推millisecond毫秒,返回格式:yyyy-MM-dd HH:mm:ss 将日期字符串解析成Date
阅读全文
摘要:多附件上传实例: 调用方法 请求类型表:查看 基本步骤: 1.设置上传的模式; setMode(HttpMultipartMode mode),其中mode主要有BROWSER_COMPATIBLE,RFC6532,STRICT三种,默认值是STRICT。2.创建MultipartEntityBui
阅读全文
摘要:httpclient 单附件上传实例 (扩展多附件上传实例,点我) 调用方法 请求类型表:查看 基本步骤: 1.设置上传的模式; setMode(HttpMultipartMode mode),其中mode主要有BROWSER_COMPATIBLE,RFC6532,STRICT三种,默认值是STRI
阅读全文
摘要:@Retention定义了该Annotation被保留的时间长短: 1.某些Annotation仅出现在源代码中,而被编译器丢弃; 2.另一些却被编译在class文件中,注解保留在class文件中,在加载到JVM虚拟机时丢弃,这是默认行为,所以没有用Retention注解的注解,都会采用这种策略 3
阅读全文
摘要:@Documented 注解表明这个注解应该被 javadoc工具记录. 默认情况下,javadoc是不包括注解的. 但如果声明注解时指定了 @Documented,则它会被 javadoc 之类的工具处理, 所以注解类型信息也会被包括在生成的文档中,是一个标记注解,没有成员。 源码 使用方法
阅读全文
摘要:@Target: @Target说明了Annotation所修饰的对象范围:Annotation可被用于 packages、types(类、接口、枚举、Annotation类型)、类型成员(方法、构造方法、成员变量、枚举值)、方法参数和本地变量(如循环变量、catch参数)。在Annotation类
阅读全文
摘要:@SuppressWarnings注解用法
阅读全文
摘要:在Java中操作时间的时候,需要计算某段时间开始到结束的区间日期,常用的时间工具 Date date = new Date();//获取当前时间 Calendar calendar = Calendar.getInstance(); //创建Calendar 的实例 calendar.add(Cal
阅读全文
摘要:1 e.getMessage() ; 只会获得异常的名称。比如说NullPoint 空指针,就告诉你说是空指针 2.e.toString(): 获得异常种类和错误信息 3.e.printStackTrace(); 在控制台打印打印出详细的异常信息,异常名称。便于调试 3 如果异常是用无参构造器构造后
阅读全文
摘要:Java使用Thread类代表线程,所有的线程对象都必须是Thread类或其子类的实例。Java可以用三种方式来创建线程,如下所示: 1)继承Thread类创建线程 2)实现Runnable接口创建线程 3)使用Callable和Future创建线程 下面让我们分别来看看这三种创建线程的方法。 继承
阅读全文