Java
chenkaibsw
加油
展开
-
在Java中使用CRC32
CRC32转载 2022-08-09 22:04:28 · 2693 阅读 · 0 评论 -
浏览器下载文件
下载文件原创 2022-08-03 10:45:44 · 202 阅读 · 0 评论 -
读取文件内容并解析
读取文件并解析原创 2022-07-12 22:08:08 · 121 阅读 · 0 评论 -
@ConfigurationProperties修饰的类中是静态属性
@ConfigurationProperties原创 2022-07-08 09:09:04 · 1060 阅读 · 1 评论 -
mybatis中使用Java8的日期LocalDate、LocalDateTime
LocalDate LocalDateTime的使用转载 2022-06-29 10:42:48 · 4607 阅读 · 0 评论 -
IDEA Database 查询中文乱码的解决方法
IDEA使用转载 2022-06-22 19:27:19 · 828 阅读 · 0 评论 -
内部类学习
1.内部类的好处:1)内部类提供了更好的封装,只能让外部 类直接访问,不允许同一个包中的其他类直接访问。2)内部类可以直接访问外部类的私有属性,内部类被当成其外部类的成员,但外部类不能访问内部类的内部属性。2.内部类分为:1)成员内部类 就像是外部类的一个成员一样,又分为: 静态内部类:静态内部类不可以访问 外部类的普通的属性和静态方法,但是可以访问外部的类的静态属性和静态...原创 2018-04-12 10:52:52 · 217 阅读 · 0 评论 -
时间函数整理
1.SimpleDate函数parse 将字符串解析为Date类型format 将Date类型转为字符串1)format函数: SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date now = new Date(); String nowString = sdf.format(now)...原创 2019-09-26 10:29:47 · 290 阅读 · 1 评论 -
Java如何理解多态
多态到底是啥,就是当子类继承父类的方法时,对其继承下来的方法按照自己的方式重新定义(覆盖重写),我用父类引用指向子类对象,可以实现每个该引用体现出不同继承同一个父类的子类表达自己的方法内容。提到多态肯定很多人会想到向上转型和向下转型,那今天就聊聊什么是向上转型和向下转型。1.向上转型之前继承有提到过。父类引用指向子类对象。这时的引用只能调用子类覆盖重写了的方法,不能调用子类特有方法。自动转换public class Main { public static void main(Str...转载 2022-04-30 21:08:01 · 95 阅读 · 0 评论 -
Integer.valueOf和new Integer的区别
Integer currentVersion = new Integer(1);此时sonar报错,并建议使用Integer.valueOf()方法:Constructors forString,BigInteger,BigDecimaland the objects used to wrap primitives should never be used. Doing so is less clear and uses more memory than simply using the...原创 2022-02-16 13:19:49 · 6278 阅读 · 0 评论 -
使用函数式编程优化代码
原来的代码逻辑:@Component@Slf4j@JobHandler(value = "wechatSettlementHandler")public class WechatSettlementHandler extends IJobHandler { @Autowired private SettlementBatchResource settlementBatchResource; @Override public ReturnT<String&原创 2022-02-07 17:07:10 · 367 阅读 · 0 评论 -
判空的写法优化
1.代码编写过程中经常遇到获取对象某个属性的情况,此时常见的写法如下: Person person = new Person(); String name = ""; if(person != null){ name = person.getName(); } System.out.println(name);上面的写法并不优雅,此时使用Oplitonal可以让代码更加简洁 P原创 2021-06-26 16:28:35 · 511 阅读 · 0 评论 -
JoinPoint的用法
JoinPoint 对象JoinPoint对象封装了SpringAop中切面方法的信息,在切面方法中添加JoinPoint参数,就可以获取到封装了该方法信息的JoinPoint对象.常用api:方法名 功能 Signature getSignature(); 获取封装了署名信息的对象,在该对象中可以获取到目标方法名,所属类的Class等信息 Object[] getArgs(); 获取传入目标方法的参数对象 Object getTarget(); 获取被代理的对.转载 2021-06-16 21:31:08 · 3777 阅读 · 0 评论 -
variable used in lambda expression should be final or effectively final 报错解决
public static void main(String[] args) { List<String> numList = Arrays.asList("1", "2", "3"); Holder holder = new Holder(0); int i = 0; numList.forEach(e -> { if("1".equals(e)){ i...原创 2021-06-11 11:27:14 · 1993 阅读 · 4 评论 -
Rest风格
Rest用来规定URL定制。旧的URL方式写法,对图书操作:查找: getBook?id=10更新: updateBook?id=10删除: deleteBook?id=10添加: addBook?id=10Rest风格的URL方式写法:查找: book/10 GET方式 更新: book/10 PUT方式删除: book/10 Delete方式添加: book POST方式...原创 2020-10-18 09:41:34 · 89 阅读 · 0 评论 -
Collections.emptyList(),Collections.EMPTY, Collections.EMPTY_LIST, new ArrayList
Collections.EMPTY_LIST:public class Collections { public static final List EMPTY_LIST = new EmptyList<>();} private static class EmptyList<E> extends AbstractList<E> implements RandomAccess, Serializable { .原创 2020-09-09 06:57:23 · 724 阅读 · 0 评论 -
intellij idea 使用 git stash 初探
这篇文章的出现来源于最近的工作,在工作的过程中,有同事需要我帮他合并一下代码,但我本地也写了一些代码,没有来得及测试不想 提交到服务器上。当时不知如何是好,只能把自己的复制一份。重新回到当前版本。后来有同事说git的stash功能可以解决这个问题,抱着试一试的 态度,我在intellij上使用了git的这个功能。下面整理一下,如有不足,还请各位同仁指出。1,当代码从服务器pull下来后。我们本...转载 2020-01-12 14:45:22 · 492 阅读 · 0 评论 -
mysql的5种时间类型的比较
msql的5种时间类型:DATETIME、TIMESTAMP、DATE、TIME、YEAR。比较如下:DATETIMEDATETIME 用于表示 年月日 时分秒,是 DATE 和 TIME 的组合,并且记录的年份(见上表)比较长久。如果实际应用中有这样的需求,就可以使用 DATETIME 类型。1、DATETIME列可以设置为多个,默认可为null,可以手动设置其值。...转载 2020-01-07 21:17:37 · 344 阅读 · 0 评论 -
linux cpu占用100%排查
某服务器上部署了若干tomcat实例,即若干垂直切分的Java站点服务,以及若干Java微服务,突然收到运维的CPU异常告警。问:如何定位是哪个服务进程导致CPU过载,哪个线程导致CPU过载,哪段代码导致CPU过载?步骤一、找到最耗CPU的进程工具:top方法: 执行top -c ,显示进程运行信息列表 键入P (大写p),进程按照CPU使用率排序 图示:...转载 2019-11-30 21:58:18 · 345 阅读 · 0 评论 -
ANT下载和配置 IDEA
1、下载地址大全:http://archive.apache.org/dist/ant/binaries/jdk与ant版本有对应关系,目前知道:jdk1.7与ant1.10不兼容,1.7必须用1.10以下的ant版本才行所以本人下载1,93版本:2、配置环境变量在环境变量中配置变量ANT_HOME,值为D:\config\apache-ant-1.9.3-bi...转载 2019-11-26 13:41:22 · 2689 阅读 · 0 评论 -
mybatis自动生成Mapper文件和xml文件
一、简介mybatis-geneator是一款mybatis自动代码生成工具,可以通过配置,快速生成mapper和xml文件。二、配置方法在项目的pom文件中添加插件配置<plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-gener...转载 2019-11-20 21:19:57 · 6507 阅读 · 0 评论 -
java多态实现的JVM调用过程
多态同一个类的不同表现形态,不同的形态是通过其不同的子类体现 java通过将子类对象引用赋值给超类对象变量, 来实现动态方法调用。面向对象的三个特征与含义下面看例子:public class A{ public String name = "父类name"; public void move(){ System.out...转载 2018-05-22 10:56:06 · 1198 阅读 · 0 评论 -
泛型小结
1、泛型使用的原因: 安全:放入会自动检查,如果类型错误编译器会报错List<String> list = new ArrayList<>();list.add("abc");list.add(1); //报错无法放入整数 省心:取出的时候自动转为想要的类型String strGet = list.get(0); //取出就是String类型否则需要强制转换...原创 2018-05-13 18:57:17 · 133 阅读 · 0 评论 -
补码和位运算
1.为什么使用补码为什么使用补码:使用补码的好处:1)没有歧义的去表示0,因为使用源码表示0会有歧义,如下图,0既不是正数,也不是负数,所以符号位是使用0还是使用1不确定,而使用补码表示时将0看成正数或者看成负数,结果都一样2)使用补码的第二个好处就是方便二进制的计算。-6+5使用补码表示的话,只需要简单将两者相加就行了。(注意这过程中符号位参与运算)2.位运算常见...原创 2018-05-13 18:55:58 · 2338 阅读 · 0 评论 -
Comparable接口和Comparator接口的常见的使用方法
1.创建对象的时候让对象具有可比较的性质,例如让Person实现Comparable接口示例代码:让Person通过继承Comparable接口使其具有可比较属性—本例中先根据名称字符串从小到大比较,如果名字字符串相同再根据年龄从小到大比较。class HelloWorld{ public static void main(String[] args) { TreeSet<Pers...原创 2018-05-06 16:28:51 · 303 阅读 · 0 评论 -
HttpURLConnection中的乱码问题
1.现象:使用HttpURLConnection获取数据中的中文乱码:<title>鐧惧害涓?涓嬶紝浣犲氨鐭ラ亾</title>1)分析:这是因为eclipse默认的使用的是GBK格式,而通过HttpURLConnection获取的数据是utf-8格式,这时有两种解决办法2.解决办法1)第一种解决办法—将eclipse改成utf-8格式:windows->Perfer...原创 2018-05-04 20:09:26 · 10746 阅读 · 1 评论 -
Java基础做题记录
1.接口中的方法只能使用public 和abstract修饰A:接口中不能有方法体B:接口中方法只能用public和abstract修饰总结: 接口中的方法默认public abstract 修饰接口中的变量默认public final修饰2.关于构造方法 识别合法的构造方法; 1:构造方法可以被重载,一个构造方法可以通过this关键字调用另一个构造...原创 2018-06-23 10:21:59 · 507 阅读 · 0 评论 -
apache common包 CollectionUtils 使用 详解
CollectionUtils:集合判断:例1: 判断集合是否为空:CollectionUtils.isEmpty(null): trueCollectionUtils.isEmpty(new ArrayList()): trueCollectionUtils.isEmpty({a,b}): false例2: 判断集合是否不为空:CollectionUtils.isNotEmpt...转载 2019-04-26 17:35:22 · 2439 阅读 · 0 评论 -
Split按空白划分-----区分一个或多个空格
rs12564807 1734462AArs3131972 1 752721 GGrs148828841 1 760998 CCrs12124819 1 776546 AA在解析文本txt的时候 会遇到这种格式但是格式并不标准 有些是空格 有些是tab 总之就是有空白部分那我们怎么解析呢我们可以使用split("\\s+")split("\\s+") 按空格,制表符,等...转载 2019-04-17 16:43:32 · 4868 阅读 · 0 评论 -
java 字节流与字符流的区别
java 字节流与字符流的区别(转载)转自:https://blog.csdn.net/sunhuaqiang1/article/details/52756999 字节流与和字符流的使用非常相似,两者除了操作代码上的不同之外,是否还有其他的不同呢? 实际上字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的,而字符流在操作时使用了缓冲区,通过缓冲区再操作文件,如下图所示。...转载 2018-08-12 15:18:33 · 26269 阅读 · 0 评论 -
Java继承关系是否合理的判别
当一个类继承自另一个类时,我们会说这个子类去继承父类。若想知道某物是否应该要继承另一物时,可以用IS-A(是一个)测试检验。例子:三角形是一个多边形.........OK 外科医生是一个医生..........OK 澡盆是一个浴室..................NO 浴室与澡盆确实有关联,但不是继承上的关系。浴室与澡盆发生的是HAS-A(有一个)的关系。浴室有一个澡盆成立原创 2017-11-27 16:39:48 · 822 阅读 · 0 评论 -
终止线程的方式
1.通过设置标志位方式停止线程如下面代码所示,通过将标志为设置为false可以停止线程。class myThread extends Thread{ boolean flag = true; public void run() { while(flag) { System.out.println("一直执行"); } } public void set(...原创 2018-05-11 10:58:59 · 505 阅读 · 0 评论