
java
余生很长、何必慌张
一名学生 xaut.wb2014@gmail.com
展开
-
反射获取泛型信息
反射获取泛型信息package com.example.demo;import java.lang.reflect.Method;import java.lang.reflect.ParameterizedType;import java.lang.reflect.Type;import java.util.List;import java.util.Map;/** * Created with IntelliJ IDEA. * * @Description: * @create:原创 2020-12-08 23:40:13 · 262 阅读 · 0 评论 -
idea项目生成骨架archetype并通过骨架生成新项目
在本地需要打骨架的项目下执行:$ mvn archetype:create-from-project[INFO] ------------------------------------------------------------------------[INFO] BUILD SUCCESS[INFO] ------------------------------------------------------------------------[INFO] Total time: .原创 2020-06-29 16:11:28 · 734 阅读 · 0 评论 -
通过packageName递归查找包下的文件
** * Created with IntelliJ IDEA. * 通过packagename 递归查找 包下的文件 * @Description: * @author: bowang * @create: 2020-06-26 下午 **/public class SearchPath { public static void main(String[] args) { SearchPath searchPath = new SearchPath(); .原创 2020-06-27 21:58:42 · 941 阅读 · 0 评论 -
Spring简介
Spring Framework 维基百科Spring框架是 Java 平台的一个开源的全栈(Full-stack)应用程序框架和控制反转容器实现,一般被直接称为 Spring。该框架的一些核心功能理论上可用于任何 Java 应用,但 Spring 还为基于Java企业版平台构建的 Web 应用提供了大量的拓展支持。虽然 Spring 没有直接实现任何的编程模型,但它已经在 Java 社区中广为...原创 2019-10-18 12:33:54 · 554 阅读 · 0 评论 -
Guava Cache
摘要: 学习Google内部使用的工具包Guava,在Java项目中轻松地增加缓存,提高程序获取数据的效率; 业务实现上需要用到本地缓存来解决一些数据量相对较小但是频繁访问的数据Guava Cache适用场景:你愿意消耗一部分内存来提升速度;你已经预料某些值会被多次调用;缓存数据不会超过内存总量;Guava Cache是一个全内存的本地缓存实现,它提供了线程安全的实现机制。整体上来说...原创 2019-05-28 16:19:10 · 464 阅读 · 0 评论 -
JVM 参数配置及详解
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制.32位系统 下,一般限制在1.5G~2G;64为操作系统对内存无限制.我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m.典型设置:java -Xmx3550m -Xms3550m -...转载 2019-05-17 08:31:00 · 587 阅读 · 0 评论 -
transient和volatile小结
transient和volatile两个关键字一个用于对象序列化,一个用于线程同步,都是Java中比较高阶的话题,简单总结一下。transienttransient是类型修饰符,只能用来修饰字段。在对象序列化的过程中,标记为transient的变量不会被序列化。示例:class Test {transient int a; // 不会被持久化int b; // 持久化}当...转载 2019-05-16 16:05:35 · 698 阅读 · 0 评论 -
java 线程池使用
/** 1.如果运行的线程少于corePoolSize,则Executor始终首选添加新的线程,而不进行排队。 2.如果运行的线程等于或多于corePoolSize,则Executor始终首选将请求加入队列,而不添加新的线程。 如果无法将请求加入队列,则创建新的线程,除非创建此线程超出maximumPoolSize,在这种情况下,任务将被拒绝(抛出RejectedExecutionExcep...原创 2019-05-20 11:44:52 · 246 阅读 · 0 评论 -
Java小数点位数保留
DecimalFormat df = new DecimalFormat("0.00");DecimalFormat df1 = new DecimalFormat("0.0#");DecimalFormat df2 = new DecimalFormat("0.##");DecimalFormat df3 = new DecimalFormat("#.##");double a = ...原创 2019-03-21 17:37:35 · 2666 阅读 · 0 评论 -
List、Set、Array、Map相关转换
List<String> list = new ArrayList<>();list.add("1");list.add("2");System.out.println("list: " + list);Set<String> set = new HashSet<>();set.add("a");set原创 2019-02-20 22:27:11 · 203 阅读 · 0 评论 -
java 多态应用
MIS后台统一流程处理已添加操作为例子说明:接口的定义:public interface IMisTemplateIdService {/** * 功能描述: 〈添加模板的数据信息〉 * * @param schemaDataInfo * @return: com.missfresh.mis.admin.domain.bean.SchemaDataInfo * @a...原创 2018-12-21 15:09:42 · 418 阅读 · 0 评论 -
Java中的instanceof和isInstance
1. instanceof 是一个操作符if(a instanceof B){}表示:a 是不是 B 这种类型2. isInstance是Class类的一个方法if(B.Class.isInstance(a)){};表示:a 是否能强转为 B 类型 3. 代码 package com.wangbo.java_demo;/** * Created ...原创 2018-12-26 14:58:42 · 1881 阅读 · 0 评论 -
多个线程并发执行完成后再执行主线程-java
@Testpublic void threadTest() throws Exception { int count = 10; List<Thread> threads = new ArrayList<>(); for(int i = 0; i < count; i++) { Thread thread = new Thr...原创 2018-08-16 11:10:56 · 1497 阅读 · 0 评论 -
Java8 Lambda表达式教程
什么是λ表达式λ表达式本质上是一个匿名方法。让我们来看下面这个例子: public int add(int x, int y) { return x + y; }转成λ表达式后是这个样子: (int x, int y) -> x + y;参数类型也可以省略,Java编译器会根据上下文推断出来: (x, y) -> x + y; //返回两数...转载 2018-06-21 17:49:03 · 355 阅读 · 0 评论