java基础
hq091117
这个作者很懒,什么都没留下…
展开
-
shiro入门
shiro学习,动态加权限,session共享,单点登录。原创 2023-10-19 09:00:40 · 436 阅读 · 0 评论 -
Runtime.getRuntime().addShutdownHook(new Thread())
最近在跟着一个大神专栏在学习手敲spring,看到这个Runtime.getRuntime().addShutdownHook以前还真不知道,记录下来。百度知识点原文:https://www.cnblogs.com/shihaiming/p/11398371.html钩子函数:Runtime.getRuntime().addShutdownHook,作用:当我们程序在运行完之后,如果需要做清理内存,清理线程,或者做业务上的清理工作的话,就可以用这个钩子函数。执行时间:jvm关闭前其中原创 2021-09-05 17:43:59 · 585 阅读 · 0 评论 -
Date时间处理
public static SimpleDateFormat yyyyMMddHHmmss = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); public static DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); public static LocalDateTime strToLocalDateTime(String dateStr){.原创 2021-07-21 14:42:12 · 163 阅读 · 0 评论 -
集合之手敲map的put过程
map的源码,相信很多人都看过很多遍,也知道原理,过程,我也是,但是一直没有跟着手动敲一次,今天跟着一步步走,一步步敲下来,又有重新的认识。package com.study.webapp.map;import java.io.Serializable;import java.util.LinkedHashMap;import java.util.Map;import java.util.Objects;/** * 找到一个详细的博客:https://blog.csdn.net/FL.原创 2020-07-12 23:12:41 · 1692 阅读 · 0 评论 -
反射常见问题
收集到一些反射知识点,都忘了https://blog.csdn.net/qq_37875585/article/details/893404951,什么是反射反射是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法,对于任意一个对象,都能够调用它的任意一个方法和属性,这种动态获取的信息以及动态调用对象的方法的功能叫做反射机制2,哪里用到反射机制1)jdbc中利用反射动态加载了数据库驱动程序2)web服务器中利用反射调用了sevlet的服务方法3)eclipse等.转载 2020-06-08 23:24:36 · 700 阅读 · 0 评论 -
http方式去请求webservice
package com.souche.sts.common.util;import org.apache.commons.lang.StringEscapeUtils;import org.apache.http.HttpEntity;import org.apache.http.client.config.RequestConfig;import org.apache.http.cl...原创 2019-08-02 10:11:30 · 2057 阅读 · 0 评论 -
Java中的24种设计模式与7大原则
https://www.cnblogs.com/lspz/p/6859991.html转载 2019-09-19 17:57:18 · 104 阅读 · 0 评论 -
去掉if else,策略模式
今天看到一篇文章,讲的是怎么使用策略模式,刚好工作上有类型的情况,就试着学了一把,记录一下文章地址:https://mp.weixin.qq.com/s/O5EFXWTC5a61mqJ9Nzty0w以下是我自己的因为有业务代码需要根据type的不同进行不同的接口调用逻辑,一堆if else,有点烦,if (“1”.equals(type)) { OrdinaryInvoi...原创 2019-09-20 14:41:33 · 579 阅读 · 0 评论 -
并发编程的艺术 (学习笔记)-锁
5.1 lock锁5.2 队列同步器(AbstractQueuedSynchronizer)同步器的主要使用方式是继承,子类通过继承同步器并实现它的抽象方法来管理同步状态同步器是实现锁的关键,在锁的实现中聚合同步器,利用同步器实现锁的语义,可以这样理解二者之间的关系:锁是面向使用者的,他定义了使用者与锁交互的接口,隐藏了实现细节,同步器面向的是锁的实现者,他简化了锁的实现方式,屏蔽了同步状...原创 2019-09-26 16:23:21 · 139 阅读 · 0 评论 -
并发编程艺术(学习笔记)- StampedLock
StampedLock这个锁是1.8新增的,所以书中是没有的,但是目前1.8已经是主流了,所以还是要学习一下的,在网上找了一篇个人觉得还是挺详细的,记录一下,https://segmentfault.com/a/1190000015808032?utm_source=tag-newest...转载 2019-09-26 17:13:01 · 124 阅读 · 0 评论 -
2019-07-12 关于变量在for循环内new,还是先在循环外定义
今天跟同事讨论一个问题,在for循环的时候,难免要在循环里new对象,那是在循环里new好呢,还是先定义一个,然后在new??百度了一下,一般说法是先定义再new,如方法for2()这样,public class test { public static void main(String[] args) { System.out.println(for1());...原创 2019-07-12 14:51:48 · 1495 阅读 · 1 评论 -
最近积累的一些工具方法(2019-09-24)
/** * 获取当前时间往前往后推几天 * **/ public Map<String,Date> getDate() { Map<String,Date> map = new HashMap<>(2); try { //获取当前日期 SimpleDateFormat s...原创 2019-06-12 10:25:21 · 181 阅读 · 0 评论 -
SHA256加密
package com.ucmed.hospital.u001.common.util;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;import org.apache.log4j.Logger;public class SHA256Util原创 2018-01-15 15:39:31 · 1289 阅读 · 0 评论 -
学习微信公众号之java1.8的lambda
最近在看一个微信公众号,有很多文章写的还是挺好的,其中有java1.8的几篇文章,自己也记录一下,new Thread(() -> System.out.println("this is java1.8")).start();这就是1.8的写法,(入参) -> 出参(param,param) -> {你的代码}/返回结果原创 2018-01-26 14:41:29 · 194 阅读 · 0 评论 -
java中BufferedReader读取文件中有特殊符号的方法
今天被问到一个问题,BufferedReader中的readLine()方法是否是每一次读取文件中一行,所以才要用while,之前一直只知道这样用,还真没去仔细看过源码,毕竟流这块怎么说呢,用的不是很多,而且一般情况也没人会问流的问题。今天工作上遇到就查下,记录一下。1:BufferedReader是否是一次性吧文件读入内存中,那一个几十兆的文件呢,防止内存溢出方法就是分块读取,网上例子:原创 2018-02-06 17:16:41 · 4536 阅读 · 0 评论 -
《Head First 设计模式》笔记
1,策略模式定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。oo基础:抽象,封装,多态,继承oo原则:封装变化,多用组合,少用继承,针对接口编程,不针对实现编程oo模式:策略模式。2,观察者模式(Observer)定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,他的所有依赖者都会收到通知并自动更新。优点:松耦合...原创 2018-07-27 14:54:26 · 531 阅读 · 0 评论 -
Head First 设计模式
1,策略模式定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。oo基础:抽象,封装,多态,继承oo原则:封装变化,多用组合,少用继承,针对接口编程,不针对实现编程oo模式:策略模式。2,观察者模式(Observer)定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,他的所有依赖者都会收到通知并自动更新。优点:松耦合...原创 2018-08-14 17:49:00 · 3139 阅读 · 0 评论 -
过滤器Filter,监听器Listener,拦截器Interceptor
过滤器Filter概念:Servlet过滤器是在java servlet规范2.3中定义的,他能够对servlet容器的请求和响应对象进行检查和修改。Servlet过滤器本身并不产生请求和响应对象,他只能提供过滤作用,servlet过滤能够在servlet被调用之前检查request对象,修改request的header和request内容,在调用后检查response对象,修改res...转载 2018-08-15 16:30:26 · 5535 阅读 · 1 评论 -
jsoup 包解析html
这两天碰到需要请求别人网站接口,然后接口返回来的是一个html的网页形式,所以需要解析网页,所以选择用jsoup来解析,这是一个挺好用的工具包吧,反正看了挺多人用的,先贴代码吧。我这里用的不多的,我是自己用httpclient请求得到数据,然后再用jsoup解析,不过也可以直接用jsoup去请求,直接得到解析对象,不过jsoup底层也是用Httpclient先请求的,没差 re...原创 2018-08-13 13:54:45 · 1485 阅读 · 0 评论 -
java 代码静态块读取配置常用方法
第一种:通过Properties读取package study.utils; import java.io.IOException;import java.util.Properties; public class PropertyUntil{ private static Properties properties; private static void...原创 2018-10-30 14:20:18 · 1226 阅读 · 0 评论 -
java并发编程博客收集
海子的并发系列:https://www.cnblogs.com/dolphin0520/category/602384.html死磕java并发系列:http://cmsblogs.com/?cat=151&paged=2深入理解并发:https://segmentfault.com/blog/ressmix_multithread?page=3个人觉得这两个系列写的很好,...转载 2018-12-05 10:26:59 · 294 阅读 · 0 评论 -
java并发(1):进程线程
1,什么是进程什么是线程进程:我的理解是进程就是一个程序,windons打开任务管理器就可以看到,java.exe或者javaw.exe就是java程序在windons里的一个进程。线程:个人理解,程序里的多个并行的任务线,比如java里除了main主线程,还有你可以起几个task定时的线程用于处理其他事项。2,线程java方式:extends Thread类和implements...原创 2018-12-05 14:07:03 · 136 阅读 · 0 评论 -
java8:Interface接口新特性
我们知道在接口里的方法都是不能实现的,interface是完全抽象的,只能声明方法,而且只能声明pulic的方法,不能声明private及protected的方法,不能定义方法体,也不能声明实例变量。但是在1.8版本中却有不同。在1.8中Interface可以实现方法,但是需要使用default或者static的关键字,使用default意思是,默认实现default方法,这样需要在接口添加方...转载 2018-12-25 13:45:46 · 934 阅读 · 0 评论 -
java并发(2):synchronized 的理解
synchronized可以保证方法或者代码块在运行时,同一时刻只有一个方法可以进入临界区,同时他还可以保证共享变量的内存可见性。synchronized同步关键字,主要用法有同步方法,同步代码块,主要理解几句话:1)当一个线程正在访问一个对象的synchronized方法,那么其他线程不能访问该对象的其他synchronized方法,因为一个对象只有一个锁,当一个线程获取了该对象的锁...原创 2018-01-15 15:32:16 · 171 阅读 · 0 评论