摘要: **interrupt() 方法只是改变中断状态而已,它不会中断一个正在运行的线程。**如果线程被Object.wait, Thread.join和Thread.sleep三种方法之一阻塞,此时调用该线程的interrupt()方法,那么该线程将抛出一个 InterruptedException中断 阅读全文
posted @ 2022-04-12 14:46 aixueforever 阅读(213) 评论(0) 推荐(0)
摘要: 在java中,PipedOutputStream和PipedInputStream分别是管道输出流和管道输入流。它们的作用是让多线程可以通过管道进行线程间的通讯。在使用管道通信时,必须将PipedOutputStream和PipedInputStream配套使用。 使用管道通信时,大致的流程是:我们 阅读全文
posted @ 2022-04-08 14:15 aixueforever 阅读(127) 评论(0) 推荐(0)
摘要: 伪共享FalseShare 什么是共享 下图是计算的基本结构。L1、L2、L3分别表示一级缓存、二级缓存、三级缓存,越靠近CPU的缓存,速度越快,容量也越小。所以L1缓存很小但很快,并且紧靠着在使用它的CPU内核;L2大一些,也慢一些,并且仍然只能被一个单独的CPU核使用;L3更大、更慢,并且被单个 阅读全文
posted @ 2022-04-07 11:22 aixueforever 阅读(130) 评论(0) 推荐(0)
摘要: Java io与装饰器模式 装饰器模式 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。 定义:装饰模式是在不必改变原类文件和使用继承的情况下,动态的扩展一个对象的功能。它是通过创建一 阅读全文
posted @ 2022-04-02 17:19 aixueforever 阅读(157) 评论(0) 推荐(0)
摘要: Java io 处理流 节点流和处理流概述 Java流可以分节点流和处理流两类。 节点流是面向各种物理节点的流,比如面向读写文件的FileInputStream和FileOutputStream;面向对象的ObjectInputStream和ObjectOutputStream等等。 处理流则需要依 阅读全文
posted @ 2022-04-02 15:54 aixueforever 阅读(169) 评论(0) 推荐(0)
摘要: 输入/输出流 按操作 数据单位不同分为:流 字节流(8 bit) ,字符流(16 bit) 按数据流的 流向不同分为: 输入流,输出流 按流的 角色的不同分为:节点流,处理流 ![image-20220401104313960]( ) 字节流 字节输出流OutputStream java.io 阅读全文
posted @ 2022-04-02 15:49 aixueforever 阅读(190) 评论(0) 推荐(0)
摘要: java.io.File类 文件和文件目录路径的抽象表示形式,与平台无关 File 能新建、删除、重命名文件和目录,但 File 不能访问文件内容本身。 如果需要访问文件内容本身,则需要使用输入/输出流。想要在Java程序中表示一个真实存在的文件或目录,那么必须有一个File对象,但是Java程序中 阅读全文
posted @ 2022-04-02 15:48 aixueforever 阅读(48) 评论(0) 推荐(0)
摘要: Fix协议报文手动对照对手方的API查看十分繁琐,尤其是在开发的过程中。 于是我写了一个Fix协议报文解析插件,在idea插件应用市场搜索"Fix Protocol Parser",安装即可。 Is_Standard列"Y"表示该字段值是标准FIX协议字段值,"N"表示对手方传过来的自定义字段值。 阅读全文
posted @ 2022-03-18 16:40 aixueforever 阅读(618) 评论(0) 推荐(0)
摘要: 指标监控 未来每一个微服务在运算部署以后,我们都需要对其进行监控、追踪、审计和控制等等。Springboot就抽取了Actuator场景,使得我们每个微服务快速引用即可获得生产级别的应用监控、审计等功能。 导入启动器 <dependency> <groupId>org.springframework 阅读全文
posted @ 2022-01-06 11:04 aixueforever 阅读(195) 评论(0) 推荐(0)
摘要: 单元测试 Spring Boot 2.2.0 版本开始引入 JUnit 5 作为单元测试默认库,使用@SpringBootTest注解会以springboot的环境启动 JUnit5常用注解 **@Test 😗*表示方法是测试方法。但是与JUnit4的@Test不同,他的职责非常单一不能声明任何属 阅读全文
posted @ 2022-01-06 11:03 aixueforever 阅读(214) 评论(0) 推荐(0)
摘要: springboot数据访问 springboot整合JDBC JdbcTemplate是Spring对JDBC的封装,目的是使JDBC更加易于使用。JdbcTemplate是Spring的一部分。JdbcTemplate处理了资源的建立和释放。他帮助我们避免一些常见的错误,比如忘了总要关闭连接。他 阅读全文
posted @ 2022-01-06 10:59 aixueforever 阅读(201) 评论(0) 推荐(0)
摘要: 面向切面编程AOP AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是Spring框架中的一个重要内容,它通过对既有程序定义一个切入点,然后在其前后切入不同的执行内容,比如常见的有:打开数 阅读全文
posted @ 2022-01-06 10:51 aixueforever 阅读(204) 评论(0) 推荐(0)
摘要: Springboot常用注解总结 • 项目配置注解 1、@SpringBootApplication 注解 @SpringBootApplication是一个复合注解,包含了@SpringBootConfiguration,@EnableAutoConfiguration,@ComponentSca 阅读全文
posted @ 2022-01-06 10:45 aixueforever 阅读(228) 评论(0) 推荐(0)
摘要: 使用Javaweb原生组件 Javaweb的三大组件:servlet,Filter,Listener,Servlet 3.0 提供了以下 3 个注解: @WebServlet:用于声明一个 Servlet; @WebFilter:用于声明一个 Filter; @WebListener:用于声明一个 阅读全文
posted @ 2022-01-06 10:43 aixueforever 阅读(274) 评论(0) 推荐(0)
摘要: 文件上传 springboot可以直接使用 org.springframework.web.multipart.MultipartFile实现文件上传功能。 1.创建form表单: <!DOCTYPE html> <html lang="en" xmlns:th="http://www.w3.org 阅读全文
posted @ 2021-12-21 14:33 aixueforever 阅读(404) 评论(0) 推荐(0)
摘要: 过滤器 拦截器 过滤器 过滤器拦截的是URL Spring中自定义过滤器(Filter)一般只有一个方法,返回值是void,当请求到达web容器时,会探测当前请求地址是否配置有过滤器,有则调用该过滤器的方法(可能会有多个过滤器),然后才调用真实的业务逻辑,至此过滤器任务完成。过滤器并没有定义业务逻辑 阅读全文
posted @ 2021-12-21 14:30 aixueforever 阅读(442) 评论(0) 推荐(0)
摘要: Rest的使用和原理 Rest风格支持(使用HTTP请求方式动词来表示对资源的操作) • 以前:/getUser 获取用户 /deleteUser 删除用户 /editUser 修改用户 /saveUser 保存用户 • 现在: /user GET-获取用户 DELETE-删除用户 PUT-修改用户 阅读全文
posted @ 2021-12-21 14:28 aixueforever 阅读(1027) 评论(0) 推荐(0)
摘要: 静态资源访问 静态资源目录 请求进来,先去找Controller看能不能处理。不能处理的所有请求又都交给静态资源处理器。静态资源也找不到则响应404页面。如果静态目录中存在a.png,访问localhost:8080/a.png也不会访问到a.png,而是会得到字符串"student"。因为请求进来 阅读全文
posted @ 2021-12-21 14:24 aixueforever 阅读(173) 评论(0) 推荐(0)
摘要: @Autowired和@Resource的区别 @Resource 有两个常用属性name、type,所以分4种情况 指定name和type:通过name找到唯一的bean,找不到抛出异常;如果type和字段类型不一致,也会抛出异常 指定name:通过name找到唯一的bean,找不到抛出异常 指定 阅读全文
posted @ 2021-12-21 14:19 aixueforever 阅读(291) 评论(0) 推荐(0)
摘要: @Conditional @Conditional是Spring4新提供的注解,它的作用是按照一定的条件进行判断,满足条件给容器注册bean。 创建ConfigConditional类和测试类ConfigConditionalTest @Configuration public class Conf 阅读全文
posted @ 2021-12-21 14:15 aixueforever 阅读(424) 评论(0) 推荐(0)
摘要: IOC容器就是具有依赖注入功能的容器,IOC容器负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。应用程序无需直接在代码中new相关的对象,应用程序由IOC容器进行组装。 查看ioc容器中的组件 public static void main(String[] args) { //1、返 阅读全文
posted @ 2021-12-21 14:12 aixueforever 阅读(327) 评论(0) 推荐(0)
摘要: springboot版本控制器 SpringBoot应用的pom.xml中引入了一个父项目parent:spring-boot-starter-parent,spring-boot-starter-parent的父项目为spring-boot-dependencies。spring-boot-dep 阅读全文
posted @ 2021-12-21 14:02 aixueforever 阅读(311) 评论(0) 推荐(0)
摘要: 公钥私钥与数字签名数字证书 英文文章原文:http://www.youdzone.com/signature.html,在此文章基础上做了一些扩充 公钥加密,私钥解密;私钥签名,公钥验签。 私钥对摘要(某明文的hash值)进行加密,加密后产生数字签名。 Bob 有两把钥匙。Bob 的密钥之一称为公钥 阅读全文
posted @ 2021-09-26 14:19 aixueforever 阅读(1536) 评论(0) 推荐(0)
摘要: 设计模式六大基本原则链接:用现实生活中实例解释说明设计模式六大基本原则 后续会在这个例子上扩展,包含其余结构型模式和行为型模式,后续代码会上传GitHub。 创建型模式 这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用 new 运算符直接实例化对象。这使得程序在判断针对某个给定实 阅读全文
posted @ 2021-09-17 18:46 aixueforever 阅读(907) 评论(0) 推荐(1)
摘要: Shell脚本“syntax error: unexpected end of file” 出现"syntax error: unexpected end of file"的情况 假设文件名为a 第一种:格式问题 window下编写的shell脚本, 放到linux下运行会出现这种报错, 因为win 阅读全文
posted @ 2021-09-17 17:20 aixueforever 阅读(888) 评论(0) 推荐(1)
摘要: 设计模式分类 创建型模式 用于描述“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”。GoF(四人组)书中提供了单例、原型、工厂方法、抽象工厂、建造者等 5 种创建型模式。 结构型模式 用于描述如何将类或对象按某种布局组成更大的结构,GoF(四人组)书中提供了代理、适配器、桥接、装饰、外观、 阅读全文
posted @ 2021-09-14 17:23 aixueforever 阅读(956) 评论(0) 推荐(3)
摘要: JDK1.8源码阅读笔记(2) AtomicInteger AtomicLong AtomicBoolean原子类 Unsafe Java中无法直接操作一块内存区域,不能像C中那样可以自己申请内存和释放内存。Java中的Unsafe类为我们提供了类似C手动管理内存的能力。Unsafe类是"final 阅读全文
posted @ 2021-09-08 19:18 aixueforever 阅读(255) 评论(0) 推荐(1)
摘要: 通过定义两个类加载器加载同一字节码文件来证明Class实例为什么不是全局唯一的 1.将一个名为Demo(没有后缀)的字节码文件放在D盘根目录 2.定义两个类加载器 自定义ClassLoader三要素: 继承自ClassLoader,重写findClass() 获取字节码二进制流 defineClas 阅读全文
posted @ 2021-09-08 08:53 aixueforever 阅读(365) 评论(0) 推荐(1)
摘要: JDK1.8源码阅读笔记(1)Object类 ​ Object 类属于 java.lang 包,此包下的所有类在使⽤时⽆需⼿动导⼊,系统会在程序编译期间⾃动 导⼊。Object 类是所有类的基类,当⼀个类没有直接继承某个类时,默认继承Object类,也就是说任何 类都直接或间接继承此类,Object 阅读全文
posted @ 2021-09-07 12:28 aixueforever 阅读(461) 评论(0) 推荐(0)
摘要: 基本数据类型引用数据类型特点 1、基本数据类型的特点:直接存储在栈(stack)中的数据 2、引用数据类型的特点:存储的是该对象在栈中引用,真实的数据存放在堆内存里 引用数据类型在栈中存储了指针,该指针指向堆中该实体的起始地址。当解释器寻找引用值时,会首先检索其在栈中的地址,取得地址后从堆中获得实体 阅读全文
posted @ 2021-09-07 11:33 aixueforever 阅读(2401) 评论(0) 推荐(0)