摘要: Rest的使用和原理 Rest风格支持(使用HTTP请求方式动词来表示对资源的操作) • 以前:/getUser 获取用户 /deleteUser 删除用户 /editUser 修改用户 /saveUser 保存用户 • 现在: /user GET-获取用户 DELETE-删除用户 PUT-修改用户 阅读全文
posted @ 2021-12-21 14:28 aixueforever 阅读(977) 评论(0) 推荐(0)
摘要: 静态资源访问 静态资源目录 请求进来,先去找Controller看能不能处理。不能处理的所有请求又都交给静态资源处理器。静态资源也找不到则响应404页面。如果静态目录中存在a.png,访问localhost:8080/a.png也不会访问到a.png,而是会得到字符串"student"。因为请求进来 阅读全文
posted @ 2021-12-21 14:24 aixueforever 阅读(143) 评论(0) 推荐(0)
摘要: @Autowired和@Resource的区别 @Resource 有两个常用属性name、type,所以分4种情况 指定name和type:通过name找到唯一的bean,找不到抛出异常;如果type和字段类型不一致,也会抛出异常 指定name:通过name找到唯一的bean,找不到抛出异常 指定 阅读全文
posted @ 2021-12-21 14:19 aixueforever 阅读(277) 评论(0) 推荐(0)
摘要: @Conditional @Conditional是Spring4新提供的注解,它的作用是按照一定的条件进行判断,满足条件给容器注册bean。 创建ConfigConditional类和测试类ConfigConditionalTest @Configuration public class Conf 阅读全文
posted @ 2021-12-21 14:15 aixueforever 阅读(393) 评论(0) 推荐(0)
摘要: IOC容器就是具有依赖注入功能的容器,IOC容器负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。应用程序无需直接在代码中new相关的对象,应用程序由IOC容器进行组装。 查看ioc容器中的组件 public static void main(String[] args) { //1、返 阅读全文
posted @ 2021-12-21 14:12 aixueforever 阅读(299) 评论(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 阅读(275) 评论(0) 推荐(0)
摘要: 公钥私钥与数字签名数字证书 英文文章原文:http://www.youdzone.com/signature.html,在此文章基础上做了一些扩充 公钥加密,私钥解密;私钥签名,公钥验签。 私钥对摘要(某明文的hash值)进行加密,加密后产生数字签名。 Bob 有两把钥匙。Bob 的密钥之一称为公钥 阅读全文
posted @ 2021-09-26 14:19 aixueforever 阅读(1477) 评论(0) 推荐(0)
摘要: 设计模式六大基本原则链接:用现实生活中实例解释说明设计模式六大基本原则 后续会在这个例子上扩展,包含其余结构型模式和行为型模式,后续代码会上传GitHub。 创建型模式 这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用 new 运算符直接实例化对象。这使得程序在判断针对某个给定实 阅读全文
posted @ 2021-09-17 18:46 aixueforever 阅读(882) 评论(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 阅读(866) 评论(0) 推荐(1)
摘要: 设计模式分类 创建型模式 用于描述“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”。GoF(四人组)书中提供了单例、原型、工厂方法、抽象工厂、建造者等 5 种创建型模式。 结构型模式 用于描述如何将类或对象按某种布局组成更大的结构,GoF(四人组)书中提供了代理、适配器、桥接、装饰、外观、 阅读全文
posted @ 2021-09-14 17:23 aixueforever 阅读(927) 评论(0) 推荐(3)
摘要: JDK1.8源码阅读笔记(2) AtomicInteger AtomicLong AtomicBoolean原子类 Unsafe Java中无法直接操作一块内存区域,不能像C中那样可以自己申请内存和释放内存。Java中的Unsafe类为我们提供了类似C手动管理内存的能力。Unsafe类是"final 阅读全文
posted @ 2021-09-08 19:18 aixueforever 阅读(226) 评论(0) 推荐(1)
摘要: 通过定义两个类加载器加载同一字节码文件来证明Class实例为什么不是全局唯一的 1.将一个名为Demo(没有后缀)的字节码文件放在D盘根目录 2.定义两个类加载器 自定义ClassLoader三要素: 继承自ClassLoader,重写findClass() 获取字节码二进制流 defineClas 阅读全文
posted @ 2021-09-08 08:53 aixueforever 阅读(346) 评论(0) 推荐(1)
摘要: JDK1.8源码阅读笔记(1)Object类 ​ Object 类属于 java.lang 包,此包下的所有类在使⽤时⽆需⼿动导⼊,系统会在程序编译期间⾃动 导⼊。Object 类是所有类的基类,当⼀个类没有直接继承某个类时,默认继承Object类,也就是说任何 类都直接或间接继承此类,Object 阅读全文
posted @ 2021-09-07 12:28 aixueforever 阅读(440) 评论(0) 推荐(0)
摘要: 基本数据类型引用数据类型特点 1、基本数据类型的特点:直接存储在栈(stack)中的数据 2、引用数据类型的特点:存储的是该对象在栈中引用,真实的数据存放在堆内存里 引用数据类型在栈中存储了指针,该指针指向堆中该实体的起始地址。当解释器寻找引用值时,会首先检索其在栈中的地址,取得地址后从堆中获得实体 阅读全文
posted @ 2021-09-07 11:33 aixueforever 阅读(2360) 评论(0) 推荐(0)
摘要: 哲学家就餐问题-Java语言实现死锁避免 我死锁预防是至少破坏死锁产生的四个必要条件之一,带来的问题就是系统资源利用率低且不符合开发习惯,而死锁避免不是事先釆取某种限制措施破坏死锁的必要条件,只是注意避免死锁的最终发生。 哲学家就餐问题 5 个沉默寡言的哲学家围坐在圆桌前,每人面前一盘意面。叉子放在 阅读全文
posted @ 2021-09-01 18:35 aixueforever 阅读(573) 评论(0) 推荐(0)
摘要: PyQT5:信号和槽 信号和槽 Qt的主要特征之一是它使用信号和插槽在对象之间进行通信。 当潜在的事件发生时,会发出一个信号。插槽是可调用的Python,如果将信号连接到插槽,则在发出信号时将调用该插槽。如果没有连接信号,则什么也不会发生。 信号/插槽机制具有以下功能。 信号可能连接到许多插槽。 一 阅读全文
posted @ 2021-09-01 09:49 aixueforever 阅读(408) 评论(0) 推荐(0)
摘要: Java并发编程工具类 CountDownLatch CyclicBarrier Semaphore使用Demo CountDownLatch countDownLatch这个类使一个线程等待其他线程各自执行完毕后再执行。 是通过一个计数器来实现的,计数器的初始值是线程的数量。每当一个线程执行完毕后 阅读全文
posted @ 2021-08-27 17:14 aixueforever 阅读(524) 评论(0) 推荐(0)
摘要: Java实现一个死锁 有一个藏宝图(treasureMapFragment)分成两份jack持有treasureMapFragment1残片1,json持有残片2。jack要求必须先看到json的残图才给json看自己的残图,而json要求必须先看到jack的残图才给jack看自己的残图。双方都在请 阅读全文
posted @ 2021-08-23 16:12 aixueforever 阅读(630) 评论(0) 推荐(0)
摘要: JUC原子操作类与乐观锁CAS ​ 硬件中存在并发操作的原语,从而在硬件层面提升效率。在intel的CPU中,使用cmpxchg指令。在Java发展初期,java语言是不能够利用硬件提供的这些便利来提升系统的性能的。而随着java不断的发展,Java本地方法(JNI)的出现,使得java程序越过JV 阅读全文
posted @ 2021-08-11 12:24 aixueforever 阅读(536) 评论(0) 推荐(0)
摘要: AtomicStampedReference AtomicReference解决CAS机制中ABA问题 AtomicStampedReference AtomicStampedReference它内部不仅维护了对象值,还维护了一个版本号(可以是任何一个整数,它使用整数来表示状态值)。当AtomicS 阅读全文
posted @ 2021-08-11 08:51 aixueforever 阅读(496) 评论(0) 推荐(0)
摘要: Mybatis-plus<三> MybatisPlus条件构造器 Demo GitHub下载地址:https://github.com/RJvon/Mybatis_plus_demo Mybatis-plus条件构造器: https://mp.baomidou.com/guide/wrapper.h 阅读全文
posted @ 2021-08-01 22:18 aixueforever 阅读(497) 评论(0) 推荐(0)
摘要: Mybatis-plus<二>通用CRUD,分页 与博客Mybatis-plus<一>为同一个Springboot项目。 Demo GitHub下载地址:https://github.com/RJvon/Mybatis_plus_demo(包含数据库建表sql,数据库数据与源代码) Mybatis- 阅读全文
posted @ 2021-08-01 15:59 aixueforever 阅读(555) 评论(0) 推荐(0)
摘要: Mybatis-plus<一> Springboot框架使用MybatisPlus代码自动生成器 Mybatis-plus官网: https://mp.baomidou.com/ Demo GitHub下载地址(包含数据库建表sql,数据库数据与源代码):https://github.com/RJv 阅读全文
posted @ 2021-08-01 10:58 aixueforever 阅读(690) 评论(0) 推荐(0)
摘要: Java并发之锁升级:无锁->偏向锁->轻量级锁->重量级锁 对象头markword 在lock_bits为01的大前提下,只有当是否偏向锁位值为1的时候,才表明当前对象处于偏向锁定状态;为0时,表明该对象被hash计算了 如果线程获得该偏向锁,则对象头是否偏向锁置1,标志位为01。 锁的升级过程— 阅读全文
posted @ 2021-07-28 18:57 aixueforever 阅读(991) 评论(0) 推荐(0)
摘要: 博客园添加GitHub角标 点击角标样式 选择其中一个样式 在博客园->设置->页首 HTML 代码 中添加角标样式 将引号中的部分替换为自己的GitHub地址即可 阅读全文
posted @ 2021-07-26 11:03 aixueforever 阅读(427) 评论(0) 推荐(0)
摘要: JVM双亲委派模型及其优点 什么是双亲委派模型? 双亲委派模型: ​ 如果一个类加载器收到了类加载请求,它并不会自己先去加载,而是把这个请求委托给父类的加载器去执行,如果父类加载器还存在其父类加载器,则进一步向上委托,依次递归,请求最终将到达顶层的启动类加载器,如果父类加载器可以完成类加载任务,就成 阅读全文
posted @ 2021-07-25 19:14 aixueforever 阅读(486) 评论(0) 推荐(0)
摘要: idea字节码插件JClassLib——阅读JVM字节码 生成字节码文件并查看 查看字节码文件的方式:javac 文件名.java 即可生成.class文件,但是这种方式不方便 java:是运行字节码文件;由java虚拟机对字节码进行解释和运行。 javac:是编译命令,将java源文件编译成.cl 阅读全文
posted @ 2021-07-23 21:13 aixueforever 阅读(281) 评论(0) 推荐(0)
摘要: Typora代码块配色和标题自带序号的实现代码 先打开主题文件夹 文件>偏好设置>外观>打开主题文件夹 然后编辑base.user.css(如果没有就新建一个)文件 /*标题自动添加序号*/ .sidebar-content { ``counter-reset``: h``1 } .outline- 阅读全文
posted @ 2021-07-23 16:51 aixueforever 阅读(853) 评论(0) 推荐(0)
摘要: MySQL主主互备不同步 首先在服务器上执行show slave satus;可以看到很多同步的参数: Master_Log_File: SLAVE中的I/O线程当前正在读取的主服务器二进制日志文件的名称 Read_Master_Log_Pos: 在当前的主服务器二进制日志中,SLAVE中的I/O线 阅读全文
posted @ 2021-07-23 16:24 aixueforever 阅读(1897) 评论(0) 推荐(1)
摘要: Executors创建四种线程池: CachedThreadPool:可缓存的线程池,该线程池中没有核心线程,非核心线程的数量为Integer.max_value,当有需要时创建线程来执行任务,没有需要时回收线程,适用于耗时少,任务量大的情况。 ScheduledThreadPool:周期性执行任务 阅读全文
posted @ 2021-07-23 16:22 aixueforever 阅读(734) 评论(0) 推荐(0)