随笔分类 -  Java

摘要:之前一篇介绍了使用setnx命令实现分布式锁,但是使用这种方式不是那么严谨,需要我们自行做一些额外操作(setnx + lua方式)来保证锁的健壮性。redisson为此就做了一些封装,使得我们使用分布式锁时应用就可以简单许多。 1、Maven依赖 <parent> <groupId>org.spr 阅读全文
posted @ 2022-01-13 16:21 ƃuədnxıəʍ 阅读(241) 评论(0) 推荐(0) 编辑
摘要:文章目录1 线程池七大参数2 RejectedExecutionHandler 四种拒绝策略(官方提供)3 threadFactory 线程工厂相关的注意事项4 如何自己new一个线程池 简单结合了一下我们的项目5 实际工作中不允许使用Executors创建线程池的原因6 如何合理配置最大线程数1 阅读全文
posted @ 2022-01-11 21:52 ƃuədnxıəʍ 阅读(469) 评论(0) 推荐(0) 编辑
摘要:classpath:和classpath*:的含义classpath: :表示从类路径中加载资源,classpath:和classpath:/是等价的,都是相对于类的根路径。资源文件库标准的在文件系统中,也可以在JAR或ZIP的类包中。classpath*::假设多个JAR包或文件系统类路径都有一个 阅读全文
posted @ 2021-12-09 16:16 ƃuədnxıəʍ 阅读(1371) 评论(0) 推荐(0) 编辑
摘要:【引言】 在项目开发过程中,会遇到将某个已有若干属性值的Bean复制给另一个具有相同属性名的Bean,除了一个一个属性去set方法之外,其实可以通过调用一些工具类下的方法直接copy,这样就避免了一个一个去set属性值,在简化了代码的基础上,也能快速地实现功能。 而实现这种功能的工具类并不只有一种, 阅读全文
posted @ 2020-07-16 19:32 ƃuədnxıəʍ 阅读(390) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。
posted @ 2019-03-05 14:29 ƃuədnxıəʍ 阅读(2) 评论(0) 推荐(0) 编辑
摘要:当一个共享变量被volatile修饰时,它会保证修改的值立即被更新到主存, 这里的”保证“ 是如何做到的?和 JIT的具体编译后的CPU指令相关吧? volatile特性 内存可见性:通俗来说就是,线程A对一个volatile变量的修改,对于其它线程来说是可见的,即线程每次获取volatile变量的 阅读全文
posted @ 2019-03-04 10:38 ƃuədnxıəʍ 阅读(142) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。
posted @ 2019-03-04 10:32 ƃuədnxıəʍ 阅读(3) 评论(0) 推荐(0) 编辑
摘要:JAR (Java Archive file) 包含内容:class、properties文件,是文件封装的最小单元;包含Java类的普通库、资源(resources)、辅助文件(auxiliary files)等部署文件 : application-client.xml容器: 应用服务器(appl 阅读全文
posted @ 2019-03-02 03:12 ƃuədnxıəʍ 阅读(244) 评论(0) 推荐(0) 编辑
摘要:结论:1、不管有没有出现异常,finally块中代码都会执行;2、当try和catch中有return时,finally仍然会执行;3、finally是在return后面的表达式运算后执行的(此时并没有返回运算后的值,而是先把要返回的值保存起来,不管finally中的代码怎么样,返回的值都不会改变, 阅读全文
posted @ 2018-08-21 14:16 ƃuədnxıəʍ 阅读(142) 评论(0) 推荐(0) 编辑
摘要:看到一遍不错的java开源整理,摘录一下,后续遇到好的继续更新。 构建 这里搜集了用来构建应用程序的工具。 Apache Maven:Maven使用声明进行构建并进行依赖管理,偏向于使用约定而不是配置进行构建。Maven优于Apache Ant。后者采用了一种过程化的方式进行配置,所以维护起来相当困 阅读全文
posted @ 2018-08-21 10:26 ƃuədnxıəʍ 阅读(126) 评论(0) 推荐(0) 编辑
摘要:安全问题已经成为一个越来越重要的问题,在Java中如何对重要数据进行加密解密是本文的主要内容。 一、常用的加密/解密算法 1.Base64 严格来说Base64并不是一种加密/解密算法,而是一种编码方式。Base64不生成密钥,通过Base64编码后的密文就可以直接“翻译”为明文,但是可以通过向明文 阅读全文
posted @ 2018-04-13 20:06 ƃuədnxıəʍ 阅读(272) 评论(0) 推荐(0) 编辑
摘要:java加载properties文件的六种方法总结 java加载properties文件的六中基本方式实现 java加载properties文件的方式主要分为两大类: 》一种是通过import java.util.Properties类中的load(InputStream in)方法加载; 》另一种 阅读全文
posted @ 2018-04-03 11:32 ƃuədnxıəʍ 阅读(167) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。
posted @ 2018-03-30 11:13 ƃuədnxıəʍ 阅读(6) 评论(0) 推荐(0) 编辑
摘要:GC算法 垃圾收集器 概述 垃圾收集 Garbage Collection 通常被称为“GC”,它诞生于1960年 MIT 的 Lisp 语言,经过半个多世纪,目前已经十分成熟了。 jvm 中,程序计数器、虚拟机栈、本地方法栈都是随线程而生随线程而灭,栈帧随着方法的进入和退出做入栈和出栈操作,实现了 阅读全文
posted @ 2018-03-28 10:53 ƃuədnxıəʍ 阅读(87) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。
posted @ 2018-03-28 10:52 ƃuədnxıəʍ 阅读(3) 评论(0) 推荐(0) 编辑
摘要:往往混淆了这三个函数的使用。 从操作系统的角度讲,os会维护一个ready queue(就绪的线程队列)。并且在某一时刻cpu只为ready queue中位于队列头部的线程服务。 但是当前正在被服务的线程可能觉得cpu的服务质量不够好,于是提前退出,这就是yield。 或者当前正在被服务的线程需要睡 阅读全文
posted @ 2018-03-28 10:49 ƃuədnxıəʍ 阅读(252) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。
posted @ 2018-03-27 11:22 ƃuədnxıəʍ 阅读(19) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。
posted @ 2018-03-27 10:38 ƃuədnxıəʍ 阅读(9) 评论(0) 推荐(0) 编辑
摘要:以下内容全部是网上收集: FreeMarker的模板文件并不比HTML页面复杂多少,FreeMarker模板文件主要由如下4个部分组成: 1,文本:直接输出的部分 2,注释:<#-- ... -->格式部分,不会输出 3,插值:即${...}或#{...}格式的部分,将使用数据模型中的部分替代输出 阅读全文
posted @ 2018-03-16 13:57 ƃuədnxıəʍ 阅读(156) 评论(0) 推荐(0) 编辑
摘要:Shiro Demo 准备工作 运行前申明 请看完本页面的所有细节,对你掌握这个项目来说很重要,别一上来就搞,你不爽,我也不爽。 本项目需要一定的Java功底,需要对SpringMvc,Mybatis,有基本的了解,其次对Redis有了解和使用更佳。 本项目理论上,只需要一个Redis,然后一个My 阅读全文
posted @ 2018-03-14 19:57 ƃuədnxıəʍ 阅读(562) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示