Java
猪猪侠在冒险
邮箱是634828354@qq.com 有需要可以沟通
展开
-
java计算算术表达式
直接上代码String str = "((1+0.3)*2-1)/2";ScriptEngineManager manager = new ScriptEngineManager();ScriptEngine engine = manager.getEngineByName("javascript");Object d = engine.eval(str);System.out.println(d.toString());执行结果为 0.8我看网上有很多都是利用栈来处理,过于繁琐了。原创 2022-04-07 16:51:25 · 1627 阅读 · 0 评论 -
@Scheduled并行执行
设置定时任务并行执行@Configurationpublic class ScheduleConfig implements SchedulingConfigurer { @Override public void configureTasks(ScheduledTaskRegistrar scheduledTaskRegistrar) { TaskScheduler taskScheduler = taskScheduler(); schedule原创 2020-06-30 14:19:31 · 1446 阅读 · 0 评论 -
easyExcel引入到boot项目中
一、导出1、引入依赖<dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.2.2</version></dependency>2、control...原创 2020-05-08 12:17:00 · 734 阅读 · 0 评论 -
mapStruct引入到boot项目中
1、引入相关依赖和插件<org.mapstruct.version>1.3.1.Final</org.mapstruct.version><dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-jdk8</artifac...原创 2020-05-08 12:15:55 · 2355 阅读 · 0 评论 -
常用多线程工具类
1、自定义线程池public class ThreadPoolTaskUtils { private static int CAPACITY = 10000; // 线程池核心线程数 public static int CORE_POOL_SIZE = 10; // 线程池最大线程数 private static int MAXIMUM_POOL_...原创 2019-12-24 17:08:33 · 1871 阅读 · 0 评论 -
常用异步编程工具类
1、使用juc报下的CompletableFuture工具类 //没有返回值 CompletableFuture.runAsync(() -> { //dosth }); //带有返回值 CompletableFuture<String> future = Comple...原创 2019-12-24 17:22:05 · 258 阅读 · 0 评论 -
java.math.BigDecimal cannot be cast to java.lang.String
背景:使用聚合函数统计的时候报错java.math.BigDecimal cannot be cast to java.lang.String原来代码:String yes = (String)map.get("yes");修改如下:String yes = map.get("yes").toString();或者:String yes = String.valueOf...原创 2019-09-23 14:46:46 · 2914 阅读 · 0 评论 -
readResolve避免序列化反序列化获取单例异常
对一个单例类进行序列化和反序列化过程发现的问题。单例类public class SerSingleTon implements Serializable { private SerSingleTon() { } private static SerSingleTon serSingleTon = new SerSingleTon(); public s...原创 2019-07-05 17:02:25 · 403 阅读 · 0 评论 -
linux yum安装jdk
1、去除原始jdk包(1)查找java包rpm -qa|grep java (2)删除原始jdkrpm -e --allmatches --nodeps 包名2、查询yum源关于java的包yum install java-1.8.0-openjdk.x86_643、修改配置文件/etc/profile#set java environmentJAVA_HOME=...原创 2019-07-07 22:10:58 · 124 阅读 · 0 评论 -
List去重
1、List转为SetList<Integer> integers = new ArrayList<>(Arrays.asList(8, 9, 4, 5, 3, 2, 1, 3, 2, 5, 7, 9, 2, 4, 6));LinkedHashSet set = new LinkedHashSet(integers);integers.clear();integ...原创 2019-06-20 21:02:45 · 136 阅读 · 0 评论 -
Java类加载
1、ClassLoader基本功能是根据指定的类的名称,加载指定的字节码代码,实例化Class。2、JVM类加载器的树状层次引导类bootstrap :加载rt包 扩展类extensions :加载jre下面的ext下jar包 系统类system:加载classpath下的类 自定义加载器custom :继承ClassLoader的加载器3、双亲委派机制某个特定的类加载器在...原创 2019-03-11 17:30:10 · 106 阅读 · 0 评论 -
HashSet 与TreeSet和LinkedHashSet的区别
转自:https://www.cnblogs.com/wl0000-03/p/6019627.html1、Set接口Set不允许包含相同的元素,如果试图把两个相同元素加入同一个集合中,add方法返回false。Set判断两个对象相同不是使用==运算符,而是根据equals方法。也就是说,只要两个对象用equals方法比较返回true,Set就不会接受这两个对象。HashSet和Tre...原创 2019-03-11 22:22:31 · 1383 阅读 · 0 评论 -
HashMap、Hashtable、ConcurrentHashMap区别
转自:https://www.cnblogs.com/heyonggang/p/9112731.html1、HashMap底层数组+链表,可以存储null键和null值,线程不安全 初始size为16,扩容:newsize = oldsize*2,size一定为2的n次幂 扩容针对整个Map,每次扩容时,原来数组中的元素依次重新计算存放位置,并重新插入 插入元素后才判断该不该扩容,有...原创 2019-03-11 22:54:52 · 807 阅读 · 0 评论 -
linux解压安装jdk
1、下载linux版本的jdk包jdk-8u121-linux-x64.tar.gz2、将gz包传输至linux服务器,可使用scp命令或者其他工具 scp 包路径/XX.tar.gz root@ip地址:/data3、在linux服务器上解压jdk-8u121-linux-x64.tar.gz tar -zxvf jdk-8u121-linux-x64.tar.gz4、...原创 2019-05-26 16:42:31 · 4930 阅读 · 0 评论 -
Java机试题
整理自https://cloud.tencent.com/developer/article/12376411、回文数public static boolean palindrom(Integer integer) { String str1 = String.valueOf(integer); String str2 = new StringBuilde...原创 2019-03-22 12:17:34 · 16329 阅读 · 1 评论 -
Java的静态代理和动态代理
整理自https://blog.csdn.net/h_xiao_x/article/details/725528191、代理模式(1)概念代理模式:代理模式是为另一个对象提供一个替身来控制对这个对象的访问。代理类负责为这个对象预处理消息,过滤消息并转发消息,以及进行消息被该对象执行后的后续处理。对于程序来说,代理对象就可以拦截下许多目标对象不需要或者不想知道的信息,代理类也可以再转...原创 2019-03-02 14:36:22 · 164 阅读 · 0 评论