自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 Java刷题常用API整合

零:输入、输出远程在线面试的手撕代码环节,通常需要白板上写代码。如果需要在控制台输入、输出,需要借助Scanner类。示例如下:import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); //方法1:一般用来接收数组。以空格分界 while(scanner.hasNext()

2020-10-16 11:18:13 2075 9

原创 JVM垃圾回收详解

JVM——垃圾回收机制一、垃圾回收概述垃圾回收三问:哪些内存需要回收什么时候回收如何回收1、什么是垃圾垃圾是指在运行程序中,没有任何指针指向的对象,这个对象就是需要被回收的垃圾。(没人要的野孩子)如果不及时对内存中的垃圾进行清理,那么,这些垃圾对象所占的内存空间会一直保留到应用程序结束,被保留的空间,无法被其他对象使用,甚至可能导致内存溢出。2、Java垃圾回收机制自动内存管理,无需开发人员手动参与内存的分配与回收,这样降低内存泄露和内存溢出的风险自动内存管理机制,将程序员从繁重的

2020-06-12 02:14:42 403 1

原创 Spring MVC(一)——Spring MVC入门

Spring MVCSpring MVC特性清晰的角色划分:控制器(controller)、验证器(validator)、 命令对象(command object)、表单对象(form object)、模型对象(model object)、 分发器(DispatcherServlet)、 处理器映射(handler mapping)、视图解析器(view resolver)等等。 每一个角色都可以由一个专门的对象来实现。强大而直接的配置方式:将框架类和业务类都能作为Bean配置,支持跨多个conte

2020-06-08 23:32:43 346

原创 第七章、Spring AOP

第七章、Spring AOP一、AOP与OOPAOP:Aspect Oriented Programming 面向切面的编程OOP:Object Oriented Programming 面向对象的编程二者编程模式不同,编程思想不同​ OOP是面向对象编程,核心思想是将客观存在的不同事物抽象成相互独立的类,然后把与事物相关的属性和行为封装到类里,并通过继承和多态来定义类彼此间的关系,最后通过操作类的实例来完成实际业务逻辑的功能需求。​ AOP是面向切面编程,核心思想是将业务逻辑中与类不相关的

2020-06-03 23:28:20 568 1

原创 第六章、动态代理设计模式

第六章、动态代理设计模式一、代理的概念代理的本质:在不改变目标类方法的代码的情况下对目标类的方法进行增强.​ 为其他对象提供一个代理以控制对某个对象的访问。代理类主要负责为委托了(真实对象)预处理消息、过滤消息、传递消息给委托类,代理类不现实具体服务,而是利用委托类来完成服务,并将执行结果封装处理。二、静态代理由程序员写的代理类,在运行前代理类的.class文件已经存(一)静态代理的角色1.接口目标类和代理类都要实现该接口2.目标类被代理的类3.代理类代理目标类的类4.测试类创

2020-06-03 16:22:25 272

原创 AQS、CAS详解

AQS详解原子性操作自:原子性在一个操作是不可中断的,要么全部执行成功要么全部执行失败,有着“同生共死”的感觉。及时在多个线程一起执行的时候,一个操作一旦开始,就不会被其他线程所干扰2113CAS:全称(Compare And Swap),比较交换,Unsafe类是CAS的核心类,提供硬件级别的原子操作。CAS 中有三个参数:内存值 V、旧的预期值 E、要更新的值 N ,当且仅当内存值 V 的值等于旧的预期值 A 时,才会将内存值V的值修改为 B ,否则什么都不干。CAS比较与交换的伪代码可以表示

2020-06-03 00:51:31 605

原创 第五章、SpEL

第五章、SpELSpEL:Spring Expression Language, Spring 表达式语言(一)SpEL特点SpEL是强大的表达式语言,支持运行时查询、操纵一个对象图功能。SpEL语言的语法类似于EL,但提供了更多的功能,最主要的是显式方法调用和基本字符串模板函数SpEL是一个基于技术中立的API,允许需要时与其他表达式语言集成。SpEL与Spring不是直接绑定关系,它可以独立存在,并应用到其它平台(二)SpEL支持如的功能:基本表达式:字面量表达式、关系,逻辑与

2020-05-31 22:15:30 502

原创 ThreadLocal源码解析

ThreadLocal​ 多线程访问同一个共享变量的时候容易出现并发问题,特别是多个线程对一个变量进行写入的时候,为了保证线程安全,一般使用者在访问共享变量的时候需要进行额外的同步措施才能保证线程安全性。ThreadLocal是除了加锁之外的一种规避多线程访问出现线程不安全的方法,当我们在创建一个变量后,如果每个线程对其进行访问的时候访问的都是线程自己的变量这样就不会存在线程不安全问题。ThreadLocal提供线程本地变量,如果创建一个ThreadLocal变量,那么访问这个变量的每个线程都会有这个

2020-05-31 20:38:00 978

原创 Timer和TimerTask源码解读(面试题:双重定时器)

Timer和TimerTask源码解读Timer是一种定时器工具,用来在一个后台线程计划执行指定任务。它可以计划执行一个任务一次或反复多次。TimerTask是一个实现了Runnable接口的抽象类,代表一个可以被Timer执行的任务。Timer和TimerTask基本使用使用Timer线程实现和计划执行一个任务:实现自定义的TimerTask的子类,run方法包含要执行的任务代码。实例化Timer类,创建计时器后台线程。实例化任务对象 (new RemindTask()).制定执行计划。

2020-05-31 13:27:02 506

原创 Java多线程(一)——多线程基本概念、线程创建方式

Java多线程(一)一、程序、进程、线程基本概念程序:是为完成特定任务,用某种语言编写的一组指令的集合,即指一段静态的代码,静态对象。进程:是程序的一次执行过程,或是正在运行的一个程序,是一个动态的过程,有它自身的产生,存在和消亡的过程。线程:线程是操作系统能够进⾏运算调度的最⼩单位,它被包含在进程之中,是进程中的实际运作单位,可以使⽤多线程对进⾏运算提速。二、并发、并行基本概念并行:多个CPU同时执行多个任务。多个cpu实例或者多台机器同时执行一段处理逻辑。并发:一个CPU(采用时间片)同

2020-05-30 23:56:19 367 2

原创 面试题(一)Java容器——HashMap HashTable ArrayList LinkedList源码解读

1、HashMap 和 HashTable 有什么区别?HashMap:继承AbstractMap<K,V>类,实现了Map<K,V>, Cloneable, Serializable接口采用数组+链表+红黑树实现(jdk1.8后,采用红黑树)非线程安全Key可以为null,但只允许有一个,value可以为null,不限个数默认初始容量为16,每次扩充,容量变为原来的2倍hash计算方式:(key == null) ? 0 : (h = key.hashCode())

2020-05-28 09:53:00 325

原创 第四章、Spring 依赖注入

第四章、Spring 依赖注入一、构造器注入构造器注入bean子节点constructor-arg节点可以使用constructor-arg节点属性index,name,type基本类型注入:使用value引用类型注入:使用ref1、index 构造方法参数的索引public StudentService(String name, StudentDao studentDao) { System.out.println("StudentService(name,studentDao)构造方

2020-05-26 19:15:04 246

原创 第三章、Spring Bean

第三章、Spring Bean一、Spring Bean定义​ 被称作 bean 的对象是构成应用程序的支柱也是由 Spring IoC 容器管理的。bean 是一个被实例化,组装,并通过 Spring IoC 容器所管理的对象。这些 bean 是由用容器提供的配置元数据创建的,例如,已经在先前章节看到的,在 XML 的表单中的 定义。bean 定义包含称为配置元数据的信息,下述容器也需要知道配置元数据:如何创建一个 beanbean 的生命周期的详细信息bean 的依赖关系二、Spr

2020-05-25 20:30:24 175

原创 第二章、Spring IOC

第二章、Spring IOC控制反转:Inversion of Controller(IoC)依赖注入:Dependency injection(DI)一、Spring IoC的概念及作用(一)Spring IoC的概念及作用ioc指的是控制反转,指的就是以前我们获取一个对象时采用的是自己创建一个的方式,这是一个主动的过程。而控制反转后,当我们需要对象时就跟工厂要,而工厂来帮我们创建或者查找对象,这是一个被动的过程。这种被动接收对象的方式就是控制反转。IoC的作用是削减计算机程序的耦合(解

2020-05-25 20:29:12 173

原创 第一章、Spring入门

第一章、Spring入门一、Spring特点(1)IOC解耦使用IOC机制避免硬编码造成程序耦合​ Spring就是一个大工厂,可以将所有对象创建和依赖关系维护,交给Spring管理(2)AOP:Aspect Orentied Programing 面向切面编程​ Spring提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能(3)声明式事务管理​ 只需要通过配置就可以完成对事务的管理,而无需手动编程(4)对JDBC进行封装,更加灵活操作数据库(5)提供MVC设计模式

2020-05-22 20:42:15 336

原创 JavaWeb(六)——监听器与过滤器

第六章:监听器与过滤器第1节:监听器知识点1:监听器的作用1.定义​ 当事件发生的时候,需要进行一些处理,就可以使用监听器处理.2.作用​ 监听器监听的是事件,当事件发生的时候,监听器进行相应的处理.知识点2:监听器相关API1.事件类​ 事件类定义了事件类型​ Servlet API定义了6种事件类型:(1)上下文相关事件①ServletContextEvent:上下文事件​ 1)触发时机​ 当上下文对象发生改变,比如:创建上下文,销毁上下文的时候,会触发上下

2020-05-08 18:51:58 370 1

原创 JavaWeb(五)——Web上下文

第五章:Web上下文第1节:ServletContext接口知识点1:上下文对象的概念、作用1.什么是上下文对象​ 用来存储全局范围信息的对象,一个web应用只有唯一的一个上下文对象.2.上下文对象的作用​ 存储全局共享的数据3.上下文对象的创建时机​ 服务器启动的时候,为每一个web应用创建一个上下文对象4.上下文对象的销毁时机​ 服务器关闭的时候,上下文对象就销...

2020-05-08 09:22:57 2601

原创 JavaWeb(四)——Web会话(cookie、session)

第四章:Web会话第1节:会话跟踪概述知识点1:会话的概念与作用1.什么是会话浏览器和服务器之间的一次连续的通讯过程叫做会话.2.会话的作用会话跟踪技术就能够实现这样的功能:1.能够跟踪客户端与服务器端的交互,2.保存和记忆相关的信息,3.保存请求的状态信息。4.解决HTTP协议的无状态的弊端知识点2:现行常用的会话跟踪技术1.URL方式:需要保存的信息直接追加到UR...

2020-05-06 19:10:13 1145 1

原创 JavaWeb(三)——JSP入门

第三章:jsp入门第1节:jsp概述知识点1:动态网页的执行原理​ 1.容器初始化Servlet实例,根据请求方法,调用相应的doXXX方法,并初始化请求和响应对象,作为doXXX方法的参数使用;​ 2.执行doXXX方法后,将响应对象中的数据流写到客户端;​ 3.客户端浏览器将收到的数据进行解析,显示给用户;知识点2: JSP的功能与特性(一)什么是jsp​ **JS...

2020-05-05 22:45:21 377

原创 JavaWeb(二)——Servlet入门

第二章:Servlet入门第1节:Servlet入门知识点1:Servlet线程特性​ 1.Web应用服务器,为每个客户端的连接启动一个线程来服务​ 2.第一次访问Servlet时,服务器将创建一个该Servlet类的对象,并调用doXXX方法生成响应;多个客户端访问同一个Servlet时,不再创建新的对象,而且共用同一个Servlet对象。可以说,Servlet是多线程单例的。...

2020-05-05 21:36:54 526

原创 JavaWeb(一)——Web快速入门

第一章、Web快速入门2020/04/27第1节:基本概念及Web应用入门知识点1:C/S、B/S与RIA(一)C/S​ Client/Server:客户端/服务器的简称,又称为胖客户端,需要在电脑上安装特定的软件.例如:QQ(二)B/S​ Browser/Server:浏览器/服务器的简称,又称为瘦客户端,不需要在电脑上安装特定的软件,只需在电脑上安装一个浏览器即可. 例如:...

2020-05-05 21:27:13 1637

原创 JVM学习笔记(一)——类的加载机制

第一章(类的加载机制)1、什么是类的加载​ 类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个 java.lang.Class对象,用来封装类在方法区内的数据结构。类的加载的最终产品是位于堆区中的 Class对象, Class对象封装了类在方法区内的数据结构,并且向Java程序员提供了访问方法区内的数据结构的接口。​ 类加载...

2020-05-04 22:46:29 1145

原创 《操作系统》——硬盘扫描问题的算法实现

《操作系统》课程实验(五)——生产者消费者同步问题的算法实现 实验目的磁盘是可供多个进程共享的设备,当有多个进程都要求访问磁盘是,应采用一种最佳调度算法,以使各进程对磁盘的平均访问时间最小。目前最成用的磁盘调度算法有先来先服务(FCFS),最短寻道时间优先(SSTF),以及扫描算法(SCAN)。通过本实验可以加深理解有关磁盘调度的目标,并体会和了解最短寻道时间优先算法和扫描算法的具体实施...

2019-12-01 22:10:57 1638

原创 《操作系统》——内存管理和分配算法实现

《操作系统》课程实验(四)——内存管理和分配算法实现 实验目的页面置换算法的好坏直接关系到系统运行的效率。本设计要求用高级语言编写和调试一个简单的内存页面调度程序。通过本实验可以加深理解有关最佳置换算法、先进先出置换算法和最近最久未使用置换算法的概念,并体会和了解这三种页面置换算法的具体实施办法。 实验内容 页面流如下: ...

2019-12-01 22:05:02 1231

原创 《操作系统》 ——银行家算法实现

《操作系统》课程实验(三)——银行家算法实现 实验目的系统资源的分配方式决定了系统的进程和资源状态是否安全。本设计要求用高级语言编写和调试一个简单的用银行家算法判断此次资源分配是否安全的方法。通过本实验可以加深理解有关银行家算发的使用方法和概念,并体会和了解系统的安全性的资源分配准则。在避免死锁的方法中,允许进程动态地申请资源,但系统在进行资源分配之前,应先计算此次资源分配的安全性。...

2019-12-01 21:53:06 906

原创 《操作系统》 ——进程管理和调度算法实现

《操作系统》课程实验(二)——进程管理和调度算法实现 实验目的进程调度是处理机管理的核心内容。本设计要求用高级语言编写和调试一个简单的进程调度程序。通过本实验可以加深理解有关进程控制块、进程队列的概念,并体会和了解优先权调度算法和时间片轮转调度算法的具体实施办法。 实验内容设计进程控制块PCB表结构,分别适用于优先权调度算法和时间片轮转调度算法。 PCB结构包括以下信息:进程名、...

2019-12-01 21:46:19 2191

原创 《操作系统》生产者消费者同步问题的算法实现

《操作系统》课程实验(一)——生产者消费者同步问题的算法实现 实验目的全面理解生产者与消费者问题模型,掌握解决该问题的算法思想,正确使用同步机制。 实验内容问题描述:一组生产者向一组消费者提供消息,它们共享一个有界缓冲池,生产者向其中投放消息,消费者从中取得消息。假定这些生产者和消费者互相等效,只要缓冲池未满,生产者可将消息送入缓冲池;只要缓冲池未空,消费者可从缓冲池取走一个消息。...

2019-12-01 21:42:50 4985

原创 编译原理2 词法分析器设计

设计一个词法分析器,用 C 语言或者其他的高级语言实现。从预处理过的源代码文本 文件(实验一的输出文件)中读取源代码字符串,词法分析输出的二元式写入另外一个文本文件中。定义Type类:type:词的类型(保留字、运算符、分界符、标识符、整型、浮点型等)value:词的值typeValue:词在类型中的对应下标(标识符、整型、浮点型为-1)//定义type类class St...

2019-11-04 15:08:47 730

原创 2019年华北五省计算机应用技术大赛,参赛总结(参赛项目:简说APP)

项目介绍 1、产品概述产品主要提供可以随时随地利用软件自由的创作并通过平台发布进行分享的功能,解决普通大众用户对于创作、阅读的需求,以及分享、交流的需要,进而形成优雅的创作、阅读社区环境。2、产品愿景在这个信息爆炸的时代,我们信息获取方式越来越多样化,信息内容也越来越碎片化。从最开始的博客,到140字的微博,再到图片社交,我们正渐渐失去的不只是阅读能力,还有写作能力。在这...

2019-11-03 22:23:49 4852 4

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除