
Java
文章平均质量分 58
Java
Amos-Chen
只能永远把艰辛的劳动看作是生命的必要;即使没有收获的指望,也能心平气和的继续耕种。
展开
-
【Accessors注解】记录使用 lombook 注解姿势不对导致无法使用 BeanCopier 复制属性的问题
Accessors注解后的实体类作为目标类,在进行 BeanCopier 复制属性的时候,由于获取到的 writeMethod 方法是空,所以通过字节码生成 copy 方法是不包含类的属性的,于是乎复制无效。java.beans.PropertyDescriptor 中的方法 public synchronized Method getWriteMethod() 看不太懂,有知道的望告知。原创 2023-05-28 22:59:36 · 1414 阅读 · 0 评论 -
JMeter【1】连接不同数据库配置
. 添加jdbc connection configuration;. Variable Name:名字随意取,但是在建立JDBC Request的时候会用到;. Database URL:. JDBC Driver class:org.postgresql.Driver. Username:数据库用户名. Password:数据库密码备注:...原创 2017-07-11 18:42:23 · 4644 阅读 · 2 评论 -
Jmeter 运行告警问题解决
问题 1 - re-enable the “times” font to remove this warning这个是因为电脑上面没有 times 字体点击这里下载 times 字体,然后重现启动 Jmeter ,问题解决。问题 2 - package sun.awt.X11 not in java.desktop这个是因为 JDK 版本不是 1.8,卸载其他版本重现安装 1.8版本即可。MAC 系统查询你的 jdk 版本,终端输入:java -version如果不是 jdk 8 ,请卸载原创 2022-05-03 15:38:09 · 1977 阅读 · 1 评论 -
【Dubbo泛化调用】同一个服务器上调用不同Nacos注册中心导致 IP 打错的问题处理
dubbo/nacos 多注册中心的使用原创 2022-02-27 21:12:42 · 3777 阅读 · 2 评论 -
【Java】从零开始学设计模式:原型模式
麻烦各位低调!!!有能力请支持正版!! 话 不 说 多 了 !!!!下载:点这里 ,密码:pwfw 激活:点这里 ,密码:637p链接失效麻烦告知我 !!!...原创 2019-05-31 08:03:57 · 356 阅读 · 0 评论 -
【Java】从零开始学设计模式:单例模式
右键win10图标,管理员打开ps或者cmd面板 依次输入slmgr /ipk VK7JG-NPHTM-C97JM-9MPGT-3V66Tslmgr /skms kms.xspace.inslmgr /ato点击win+r 输入 slmgr.vbs -xpr或者右键我的电脑,选择属性...原创 2020-01-07 18:50:02 · 12224 阅读 · 3 评论 -
leetcode力扣-10.正则表达式匹配解析【递归与动态规划】
题目给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。‘.’ 匹配任意单个字符‘*’ 匹配零个或多个前面的那一个元素所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。示例 1:输入:s = “aa” p = “a”输出:false解释:“a” 无法匹配 “aa” 整个字符串。示例 2:输入:s = “aa” p = “a*”输出:true解释:因为 ‘’ 代表可以匹配零个或多个前面的那一个元素, 在这里前面的元素就是 ‘a’。原创 2021-02-28 15:19:58 · 940 阅读 · 0 评论 -
jackson - 只有一个 Map 对象的数组字符串怎么转为 List<Map>
背景有一个字符串长得像下面这个样子:[{ "success": { "description": "Welcome to JSON Viewer", "code": 200 }, "message": "this is a message"}]想将其转化为 List<Map>对象,于是乎我这么写:// json 为上面提到的字符串List<Map<String, Object>> mapList = n原创 2021-01-01 16:56:47 · 915 阅读 · 0 评论 -
错误 找不到或无法加载主类 com.xxx.yyy.Application
背景Springboot的项目下载到本地,然后maven以来加载完毕之后。点击IDEA右上角的Run按钮,console提示:错误 找不到或无法加载主类 com.xxx.yyy.Application解决原因:第一次下载代码之后,直接执行Application是没有编译的,也就是说项目内还没有生成target文件。需要先执行 mvn compile OR 点击idea maven菜单生命周期里的compile再次执行Run Application其他原因请留言。...原创 2020-12-21 10:42:27 · 6371 阅读 · 0 评论 -
Java - HashMap的链表超过8就转为红黑树吗?
抛出问题最近看了一些有关HashMap的博客,似乎一提到链表转红黑树,统一的答案都是:链表长度超过8就转,那这个答案是对的吗?下面通过代码实例简单说说这个问题。如果想了解更多HashMap的细节,推荐下面的博客:Java-HashMap工作原理及实现美团 ~ java-hashmap内部结构参考一下,下面的图片有个直观的感受图片来源源码层面先看一下 HashMap 的 treeifyBin() 方法:/** * Replaces all linked nodes in bin a原创 2020-10-09 17:16:32 · 1762 阅读 · 3 评论 -
idea jdk明明是1.8了,还是 出现Diamond types are not supported at this language level
共有三个地方:project structure中的project ,SDK选择1.8,Project language level选择8project structure中的module,选择Language level为8setting中的java compiler原创 2018-03-27 20:04:45 · 4257 阅读 · 2 评论 -
Invalid bound statement (not found)
说明可能每个人遇到这个情况不同,此方法不一定能解决您的问题。背景使用spring + mybatis + gauge来写bdd用例,表user_info用mybatis generator自动生成的mapper.xml, mapper.java, model。 自动生成的查询无法满足结果,然后自己加了一个查询方法。贴一下xml这里是自动生成的 <select ...原创 2018-03-17 17:45:14 · 9820 阅读 · 2 评论 -
【基础】Java抽象类与接口的区别与使用场合
抽象类与接口的区别最重要的区别是,接口的方法不可以有实现,并且是绝对的抽象方法。抽象类可以有实例方法用来实现默认行为。接口中的变量申明默认是final, 而抽象类中变量申明可以是非final。接口中的成员默认是public修饰,而抽象类中成员可以是private, protected等等。接口通过关键字implements被其他类实现,而抽象类则是通过extends关键字被其他类扩展....原创 2020-04-18 19:06:44 · 7655 阅读 · 1 评论 -
maven install告警Using platform encoding (UTF-8 actually) to copy filtered resources
POM文件填写以下内容解决 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <build> <plugins> ...原创 2019-10-15 11:41:16 · 479 阅读 · 0 评论 -
Java不同类型之间相互转换(持续更新)
背景java这个类型转换不好记忆,写个笔记加深记忆。double、float互转double转float看代码Object a = 1.0;float b = (Float) a;System.out.println(b);报错 &gt; java.lang.Double cannot be cast to java.lang.Float 假如有这样一个场...原创 2018-03-24 17:48:09 · 3782 阅读 · 1 评论 -
Idea执行assert false未生效问题处理
问题背景在某个方法里添加了assert false来主动抛出异常,但是很奇怪的时,执行到这段代码却没有堆栈抛出。测试assert falsepackage com.amos.learn.util;import org.junit.Test;public class AssertTest { @Test public void testAssert() { ...原创 2019-01-25 11:26:23 · 3263 阅读 · 0 评论 -
【lombok】@EqualsAndHashCode - 相等更简单:从对象的字段生成hashCode和equals实现
@EqualsAndHashCode任意类的定义都可以添加@EqualsAndHashCode注解,让lombok帮你生成equals(Object other)和hashCode()方法的实现。默认情况下会使用非静态和非transient型字段来生成,但是你也通过在字段上添加@EqualsAndHashCode.Include或者@EqualsAndHashCode.Exclude修改你...原创 2019-01-20 19:04:10 · 30858 阅读 · 0 评论 -
JAVA while同时遍历两个文件的坑
背景有两个文件,第一个文件长这样:110000,北京市110101,东城区…第二个文件长这样:沪L,上海市京M,北京市…需求:遍历两个文件,第1个文件内的城市名如果在第2个文件里找到,那么在第1个文件内行后添加上车牌号,比如:110000,北京市,京M…代码使用的是两个while循环,同时遍历每一行,若是城市名一致,则将车牌号加到一个文件行后。直到两个文件遍...原创 2019-01-25 17:30:11 · 655 阅读 · 0 评论 -
【lombok】val - final型局部变量
背景闲来无事,总是想写一些东西。感谢强大的lombok,觉得有必要写几篇文章总结一下它的用法。不可变局部变量val您可以使用val作为局部变量声明的类型,而不是实际写入类型。 执行此操作时,将从初始化表达式推断出类型。 本地变量也将成为最终变量。 此功能仅适用于局部变量和foreach循环,而不适用于类属性(field)。 初始化表达式是必需的。val实际上是一种“类型”,在...原创 2019-01-17 00:23:41 · 7032 阅读 · 3 评论 -
【lombok】var - 无忧的局部变量
可变局部变量varvar的工作原理与val完全相同,但局部变量不会标记为final。该类型仍然推断至初始化表达式,并且任何重新的赋值都是合法的(因为变量不再是final类型),但不会再查找以确定适当的类型(我个人的理解是: 已推导出某个类型,虽然又重新赋值,但不会再重新推导出另一个合适类型)。例如,var x =“Hello”; x = Color.RED; 不起作用; x的类型...原创 2019-01-17 00:22:41 · 5449 阅读 · 0 评论 -
SpringBoot 运行jar包时提示no main manifest attribute解决方法
遇到的问题情况不同,不一定能解决您的问题。方法1java -cp helloworld.jar com.xxx.Application将包含springboot的main方法的类指定,但是该方法未解决我的问题。说明:通过IDEA启动springboot项目的时候,很显然便是采用的指定Application的方式方法2在pom文件内填写<build> <pl...原创 2019-02-18 11:12:33 · 32995 阅读 · 7 评论 -
【lombok】@NoArgsConstructor/@RequirArgsConstructor/@AllArgsConstructor - 生成无参构造器,指定参数构造器或包含所有参数的构造器
这三个注解的集合接受某些字段的一个参数,简单的用于分配这个参数给这个字段。@NoArgsConstructor生成的构造器无参数。如果这是不可能的(因为有final字段),则会导致编译错误。除非使用@NoArgsConstructor(force=true),然后将所有的final字段都初始化为0/false/null。对于有约束的字段,比如@NonNull,不会生成任何检查,所以请注意直到...原创 2019-02-12 17:58:49 · 13577 阅读 · 0 评论 -
【lombok】@Data - @ToString/@EqualsAndHashCode/@Getter/@Setter/@RequiredArgsCons多注解组合注解
概述@Data是将@ToString,@EqualsAndHashCode,@Getter/@Setter和RequiredArgsConstructor功能捆绑在一起的方便快捷方式。也就是说,@Data生成通常与简单POJO(普通旧JAVA对象)和组件相关联的所有样板代码:所有字段的getter方法,所有非final字段的setter方法,涉及类字段的相应toString,equals和h...原创 2019-02-13 12:31:06 · 2267 阅读 · 0 评论 -
Java简单入门 - Part3.POST Form重定向处理(httpcomponents:fluent-hc)
背景遇到问题通过fluent-hc编写了一个HttpUtil类,该类包含post form, post json, get 等等方法。此时我需要用该util类来发送请求并保存返回对象body。可是,向某个url 发送post form后,总是会引发httpResponseException, 进入源码查看原因getStatusCode&gt;= 300 。猜测服务器端拒绝当前请求服...原创 2019-02-20 11:15:08 · 811 阅读 · 0 评论 -
Springboot设置默认访问路径方法(最新版本Springboot)
前言当使用springboot与其他框架结合编写web前后端时,可能存在这样的需求:在访问localhost:port是便默认指向某个页面。比如说我想在访问10:10:10:100时,实际上需要访问10:10:10:100/hello页面。(端口已省略,自行设置)解决搜过很多博客,里面的内容虽然可以用。但是基本上都是基于继承WebMvcConfigurerAdapter类实现的,而官方的源码...原创 2019-02-20 14:53:52 · 18811 阅读 · 13 评论 -
数据库有数据但是mybatis查询出来所有字段均是null
申明未必能解决您的问题,具体问题具体分析!修改mybatis xmlmapper 接口类public interface xxxMapper { xxx selectByIdCard(String idCard); }该接口对应的 xml文件(安装了mybatis的ieda插件,这个xml配置是自动生成的,有点问题) <select id="selectBy...原创 2019-03-12 18:10:54 · 3549 阅读 · 1 评论 -
【基础】Java数组与List相互转换以及注意事项
Ⅰ. List转数组以实际使用的代码举例,我用到apache的httpcomponents包(发送HTTP请求). 传参请求的body是Map,header是Map,构造请求client。该过程会使用到List转数组。不想看代码的话,可以直接跳过。看【具体使用】public static String postForm(String url, Map<String, String&g...原创 2019-05-31 08:13:34 · 786 阅读 · 0 评论 -
Java中boolean类型占几个字节,你知道吗?
背景最近在复盘Java基础知识,看到基础数据类型这一章节,有一张图片是这样的。比较好奇,为什么其他类型都有字节标识,唯独boolean没有,不是只占用1bit ~ 1位的吗 ?找答案出处1 ~《疯狂Java讲义(3版)》一个boolean类型占用8位 = 1字节出处2 ~ Java官网1 原始类型Primitive Data Typesboolean: The boolea...原创 2019-07-26 17:21:16 · 22821 阅读 · 2 评论 -
【lombok】@ToString - 不再需要自己覆写toString,让lombok帮你生成
@ToString任何类定义都可以用@ToString注释,让lombok生成toString()方法的实现。默认情况下,它会按顺序打印您的类名称以及每个字段,并以逗号分隔。通过将includeFieldNames参数设置为true,您可以为toString()方法的输出添加一些清晰度(但也有一些长度)。默认情况下,将打印所有非静态字段。如果要跳过某些字段,可以使用@ ToStrin...原创 2019-01-19 22:49:55 · 35278 阅读 · 0 评论 -
【lombok】@Getter @Setter 和 public Object getFoo() {return foo;} 说拜拜
@Getter @Setter您可以使用@Getter和/或@Setter注释任何字段(类属性),让lombok自动生成默认的get方法 / set方法。默认的getter返回该字段(被@Getter注释的字段),如果字段名为foo,则命名为getFoo(如果字段的类型为boolean,则命名为isFoo)默认的setter返回为void,如果字段名为foo,则命名为setFoo...原创 2019-01-19 16:25:39 · 531 阅读 · 0 评论 -
【疑问】为什么Java Calendar类的月份与实际月份少1?
问题:为什么Java Calendar类的月份与实际月份差1?这个答案搜了很多,好像也没有一个明确的回答。猜想Calendar类当初设计时的一个bug,由于已经使用开来,没法贸然的修改解决问题,先猜再查未偿不是一件好事。查源码解释下面是Calendar类中属性MONTH的注释以及定义: /** * Field number for &amp;lt;code&amp;gt;g...原创 2019-01-24 11:30:34 · 6318 阅读 · 0 评论 -
MyBatis + Springboot单数据源、多数据源、动态加载数据源不同配置方式
百度一下!到处都是mybatis跟spring结合的配置,可是我不想用spring来写测试代码!!!! 废话不多说,贴配置跟代码,以及测试方法。记录一下,也方便他人,欢迎交流。 dao类和mapper.xml都跟mybatis平常使用的一样,都可以自动生成单数据源配置文件放置在resources目录下&lt;?xml version="1.0" encoding="UT...原创 2018-05-24 15:46:38 · 3739 阅读 · 0 评论 -
String[]和List<String>区别
文章转载于《string[]和List<string>区别》String[]数组里面是存放String型的值,List<String>是存放String类型的对象。区别1.数组的容量是固定的,只能一次获取或设置一个元素的值,而List<T>的容量可根据需要自动扩充、修改、删除或插入数据。 数组可以具有多个维度,而 List<T> 始终只...转载 2018-05-26 14:31:53 · 5106 阅读 · 0 评论 -
spring boot 指定maven package命令生成的jar文件名
文章转载自:Clement-Xu&amp;amp;lt;build&amp;amp;gt; &amp;amp;lt;finalName&amp;amp;gt;my-spring-boot&amp;amp;lt;/finalName&amp;amp;gt; &amp;amp;lt;!-- 指定package生成的文件名为my-spring-boot.jar --&原创 2018-05-11 23:56:02 · 4581 阅读 · 0 评论 -
Java链式编程 - 以Beetl模版渲染为例
背景目前工作需要对已有的文件进行参数渲染,以供其他方法调用。 打个比方,我现在有一段报文如下:{ "a":"a", "b":"hello kitty", "c":"c", "d":"d", "e":"hello world"}那我需要修改某个或者某些字段的数值,如何做呢 ? 那就轮到模版渲染引擎Beetl出场,然后我们会以链式编程的方式来实现。链式编程创建模版将上面的报文已文原创 2018-04-24 22:49:31 · 702 阅读 · 0 评论 -
Java List 随机取值的多种方法
Java List 随机取值的多种方法原创 2018-04-24 16:43:40 · 42505 阅读 · 0 评论 -
ERROR:syntax error at or near "$8" in postgres
数据库 postgresql 手残的开发人员在写mybatis的xml文件时,多写了一个”}”符号。where no= #{no,jdbcType=BIGINT}}原创 2018-03-27 09:08:50 · 9161 阅读 · 0 评论 -
Java简单入门【对比Python】Part2.POST JOSN请求
Post Json例子这里我们选择postman自带的post地址,您打开postman后点击Collections,里面有很多请求的例子。url = https://postman-echo.com/post content-type = application/json body = {“a”:”123”,”b”:”456”} -> 这里您随便传均可Postman请求...原创 2018-03-05 00:16:18 · 395 阅读 · 0 评论 -
idea使用maven自动生成mybatis代码
项目目录dao 存放mapper.java文件models 存放生成的数据库表modelresources目录下的mapperXML存放生成的.xml文件配置详情maven配置properties标签内添加对应版本 <mybatis.version>3.3.0</mybatis.version> <mybatis-...原创 2018-02-05 21:41:26 · 854 阅读 · 0 评论 -
Java简单入门【对比Python】Part1.POST表单请求
啰嗦一下之所以现在学习编程越来越容易,因为咱们都是踩在巨人的肩膀上。所以咱们在学习的过程中慢慢成长为巨人,也有必要让其他人快速成长起来。Post表单例子咱们拿百度获取access token的例子,详情见这里百度文档请求URL数据格式向授权服务地址https://aip.baidubce.com/oauth/2.0/token发送请求(推荐使用POST),并在URL中带上以原创 2018-01-20 02:12:27 · 677 阅读 · 0 评论