life is wonderful

世界上并没有完美的程序,但我们并不因此而沮丧,因为写程序本来就是一个不断追求完美的过程。...

Redis命令SETNX的使用(包含Java分布式锁实现)

Redis命令SETNX的使用(包含Java分布式锁实现) 可以参考Redis官网对SETNX命令的介绍: https://redis.io/commands/setnx SETNX命令简介 命令格式 SETNX key value 将 key 的值设为 value,当且仅当 ...

2018-11-20 18:14:41

阅读数:8

评论数:0

怎么解决java.lang.NoClassDefFoundError错误

前言在日常Java开发中,我们经常碰到java.lang.NoClassDefFoundError这样的错误,需要花费很多时间去找错误的原因,具体是哪个类不见了?类明明还在,为什么找不到?而且我们很容易把java.lang.NoClassDefFoundError和java.lang.ClassN...

2018-06-24 17:22:35

阅读数:481

评论数:0

解决java.lang.NoClassDefFoundError: Could not initialize class方案

解决java.lang.NoClassDefFoundError: Could not initialize class方案问题描述:昨天上午来了,同事反应有个页面数据显示为空,最终在上午10点的这个节点查找两个相关微服务的日志,最终定位在assetserver微服务上,下面贴出的是服务器上的错误...

2018-06-13 18:40:09

阅读数:3338

评论数:0

Java将List集合的某一个对象的属性或枚举对应的值转换为数组解决方案

Java中List集合和枚举转换为数组解决方案最近在做项目的时候,经常遇到将将一个List集合中的对象的某个属性字段取出,然后组装成该字段属性对应类型的数组,也遇到了将一个枚举中每个元素对应的值取出,组装成该枚举元素的值对应的数据类型的数组。因此特此来总结一下JDK8之前和JDK8 Stream ...

2018-05-27 20:33:48

阅读数:1851

评论数:0

JDK8 Stream API使用心得

自己最近封装的年化收益相关工具类package com.huajin.tradeserver.service.util; import java.math.BigDecimal; import java.util.ArrayList; import java.util.HashMap; impo...

2018-05-19 16:36:35

阅读数:280

评论数:0

遍历移除List中符合条件的元素的解决方案

代码只有经过多线程、效率和安全的考研,才算是优秀的代码JDK环境:JDK8遍历移除List中符合条件的元素可能产生问题:1、删除元素后List的元素数量会发生变化,随之索引也会发生变化2、对List进行删除操作可能会产生并发问题,遍历List的时候不允许并发操作本次需求:从已有的List列表中移除...

2018-04-01 20:55:16

阅读数:846

评论数:0

使用Set集合对List集合进行去重

使用Set集合对List集合进行去重前段时间正好遇到这样一个需求:我们的支付系统从对方系统得到存储明细对象的List集合,存储的明细对象对象的明细类简化为如下TradeDetail类,需求是这样的,我要对称List集合进行去重,这里的去重的意思是只要对象对象中的accountNo账号是相同的,就认...

2018-03-22 23:00:21

阅读数:1453

评论数:0

JDK8新特性:函数式接口@FunctionalInterface的使用说明

原文地址:http://blog.csdn.net/aitangyong/article/details/54137067我们常用的一些接口Callable、Runnable、Comparator等在JDK8中都添加了@FunctionalInterface注解。通过JDK8源码javadoc,可...

2017-11-15 23:41:10

阅读数:215

评论数:0

Java 枚举(enum) 详解7种常见的用法

JDK1.5引入了新的类型——枚举。在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便。大师兄我又加上自己的理解,来帮助各位理解一下。用法一:常量在JDK1.5 之前,我们定义常量都是: public static fianl.... 。现在好了,有了枚举,可以把相关的常量分组到一...

2017-08-10 20:54:59

阅读数:820

评论数:0

项目代码优化:使用Java枚举常量代替类常量

项目代码优化:每页显示商品记录数在代码中原来是定义的一个类常量,因为在代码中多次使用到,因此在这个实现类中定义了一个类常量。使用和这样的代码运行是没有任何问题的,但是对于以后的代码维护和程序的灵活扩展都是不好的,就算是定义了类常量,也是属于硬编码问题。这里我们可以使用Java推荐使用的枚举。那么J...

2017-08-10 20:51:57

阅读数:4341

评论数:2

老调重弹:JDBC系列 之 <JDBC层次结构和基本构成>

前言        最近在研究Mybatis框架,由于该框架基于JDBC,想要很好地理解和学习Mybatis,必须要对JDBC有较深入的了解。所以便把JDBC 这个东东翻出来,老调重弹,好好总结一番,作为自己的笔记,也是给读者一个参考~~~本篇博文是我的上篇博文 老调重弹:JDBC系列 ...

2017-04-18 22:59:47

阅读数:741

评论数:0

老调重弹:JDBC系列 之 <驱动加载原理全面解析>

前言          最近在研究Mybatis框架,由于该框架基于JDBC,想要很好地理解和学习Mybatis,必须要对JDBC有较深入的了解。所以便把JDBC 这个东东翻出来,好好总结一番,作为自己的笔记,也是给读者一个参考~~~以下是本文的组织结构,读者可以点击上面的目录查看: ...

2017-04-18 22:56:04

阅读数:1164

评论数:0

Java注解(Annotation)原理详解

序言 注解在Java中到底是什么样的东西?具体是如何实现的?  本文将一层一层深入探究注解的实现原理。为了尽可能的将分析的过程呈现出来,所以文章包含了大量的截图和代码。(ps:如果图片看不清楚,请将网页放大来看,chrome可以通过ctrl+鼠标滚轮放大) 前期准备 知识方面 ...

2017-04-12 21:08:27

阅读数:477

评论数:0

子类可以继承到父类上的注解吗--有结论了

不了解注解基础知识的请先看《JDK 5 Annotation\注解\注释\自定义注解》   子类可以继承到父类上的注解吗? ----------------------------------------------------------------- 我们知道在编写自定...

2017-04-12 18:49:12

阅读数:4510

评论数:0

JVM(三):类加载机制(类加载过程和类加载器)

一、为什么要使用类加载器? Java语言里,类加载都是在程序运行期间完成的,这种策略虽然会令类加载时稍微增加一些性能开销,但是会给java应用程序提供高度的灵活性。例如: 1.编写一个面向接口的应用程序,可能等到运行时再指定其实现的子类; 2.用户可以自定义一个类加载器,让程序在运行时从网络...

2017-04-12 16:38:23

阅读数:569

评论数:0

JVM(一):体系结构 && 内存模型

在分析JVM体系结构之前,先看下Dalvik-JVM和Java-DVM的区别: 1.DVM基于寄存器JVM基于内存 Dalvik 基于寄存器,而 JVM 基于栈。基于寄存器的虚拟机对于更大的程序来说,在它们编译的时候,花费的时间更短。   2.字节码区别 VM字节码由.c...

2017-04-12 16:34:26

阅读数:793

评论数:0

玩转Eclipse开发工具(七)

十四编译器              (1)编译器的相关设置        编译级别        类文件产生        (2)构建时        通用        构建路径问题        输出文件夹        (3)错误与警告的设置       ...

2016-06-28 18:36:32

阅读数:2657

评论数:0

玩转Eclipse开发工具(六)

九构建路径        (1)构建的概念        Build:项目的编译,测试,打包,产生文档这一系列操作。Eclipse中Java项目的构建一般只有编译。默认情况 下是自动构建,在菜单栏上找到Project,在下拉列表中有一项是Build Automatically,它的前面是默认...

2016-06-28 17:52:43

阅读数:2506

评论数:0

玩转Eclipse开发工具(五)

我们继续接着上一篇的重构来看。           八重构         (3)Eclipse中的重构操作2         2)尽可能使用父类型         我们在RefactoringDemo2类中的main方法中声明一个RefactoringDemo2类的实例对象demo,我们...

2016-06-25 15:33:41

阅读数:2842

评论数:0

玩转Eclipse开发工具(四)

八重构        (1)重构的概念        Refactoring,是指在程序功能不变的情况下,通过调整程序代码改善软件的质量、性能,使其程序的设计模式和 框架更趋合理,提高软件的扩展性和维护性。        (2)Eclipse中的重构操作1        1)重命名  ...

2016-06-25 14:54:57

阅读数:2649

评论数:0

提示
确定要删除当前文章?
取消 删除