自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

丹丹的后花园

学--讲--写

  • 博客(93)
  • 资源 (2)
  • 收藏
  • 关注

原创 会话技术之登录状态的保持

Session的简单应用,大佬勿进。。。

2020-04-17 18:43:25 2825 17

原创 会话技术之Session详解

Cookie学了,那Session会了么?一文带你理解Session机制。

2020-04-15 23:15:57 2922 15

原创 会话技术之Cookie详解

对Cookie熟练掌握了?还不进来看看,一文详解Cookie。

2020-04-15 19:09:29 8730 24

原创 数据库连接池很简单,项目没使用框架亦可使用

数据连接池可不是一项高端技术,JDBC早已实现对其的支持,还不快点来了解下。

2020-04-08 10:38:25 2204 17

原创 聊一聊耳熟能详的MVC设计模式与三层架构

简述MVC设计模式和三层架构的组成,建议一种项目分层的解决方案。

2020-04-06 14:30:02 6266 25

原创 JDBC之事务详解

数据库中事务的使用Get一下?

2020-04-02 16:31:55 4137 13

原创 那年我离开京东、来到高校,走出一条不一样的技术路线

从京东离职差不多有九个月了,2019年9月至2020年4月,是我在高校中任职的时间,期间是N个熬夜学习、写博客的夜晚。我这里有故事有酒,各位客官您请坐好。小二,上啤酒、饮料、矿泉水,花生、瓜子、八宝粥。。

2020-04-02 10:59:04 6379 65

原创 JDBC之CallableStatement执行存储过程

JDBC中如何调用存储过程?本文详细的讲解了如何使用CallableStatement来调用不同类型的存储过程。

2020-03-31 09:45:06 5164 7

原创 JDBC之使用Statement与PreparedStatement实现增删改查

本文简单的介绍了Statement与PreparedStatement对象,简述了两者的关系与区别;介绍了软件开发中的分层思想,较好的代码分层,不仅可以增加代码复用性,也因为这种分层的实现让代码的鲁棒性也更好;最后简单的师范了下如何分层开发代码,并演示了使用Statement与PreparedStatement完成数据库的增删改查。

2020-03-25 10:21:34 3450 9

原创 写给求甚解的你---JDBC详解

你想要的或者正准备学的,这里都有。本文对JDBC中的Driver接口、DriverManager类、Connection接口Statement接口、PreparedStatement接口、CallableStatement接口、ResultSet接口进行了详细的介绍和讲解。这些接口也就是JDBC指定的Java语言连接数据库的规范。本文还详细的介绍了SQL语句的执行、如何使用JDBC执行存储过程。

2020-03-22 16:55:41 4415 20

原创 Java Web数据库开发(MySQL)之环境准备

Java Web项目中连接数据库(后文中的数据开发皆与此相同),从而实现数据的增删改查等操作,可以让我们的应用中和用户相关的数据持久化,进而给用户提供更好的服务。因此,如何通过Java代码连接数据库,并实现数据的查询和修改就非常重要了,因此,这篇文章我们一起来看下数据开发所需的环境配置。

2020-03-18 23:54:33 3034 9

原创 请求重定向、请求转发、请求包含的特点与区别详解

本文超详细的介绍了请求重定向、请求转发、请求包含的特点和区别,并使用一个小栗子结合丰富的图片文字来让读者更容易理解;并且配合代码、chrome调试工具来讲解三者的同与异。最后,通过一张表格,详细的列举了这三者的区别。

2020-03-14 17:40:00 3881 9

原创 Servlet基础之HttpServletResponse详解

本文详细的介绍了Servlet如何对Http请求进行响应,Http响应对应Http请求的三部分内容,分别为响应行、响应头和消息体,以及对应的如何通过HttpServletResponse设置对应的状态码、响应头,并详细的解释了getOutputStream()和getWriter()的区别及其使用场景。文中增加通过对源码的分析,让你可以更好的理解HttpServletResponse。

2020-03-13 13:40:02 42456 7

原创 HttpServletRequest获取中文参数乱码问题

HttpServletRequest获取中文参数乱码问题​ 我们在开发的过程中,不可避免的会遇到前后端的数据通信问题,又不可避免的会遇到数据为中文的情况,初学者在毫不知情中,就遭遇了自己的第一次中文乱码问题,今天,我们就一起来探讨下中文乱码问题为何会发生、以及如何解决前后端数据传输的中文乱码问题。1.问题复现​ 为了更好的展示中文乱码问题,我们来举个栗子,首先,前端页面如下所示:<!...

2020-03-09 20:44:36 7404 3

原创 Servlet基础之HttpServletRequest详解

本文主要讲解了一个Http请求所经历的过程,以及Http请求的三部分内容,分别为请求行、请求头和请求体,以及如何通过HttpServletRequest获取对应的信息,通常来讲Servlet获取客户端数据的数据是第一步,因此HttpServletRequest对象是非常重要的,对其中的方法做到熟练掌握也可让我们在开发的过程中更加的得心应手。

2020-03-05 17:15:18 60184 21

原创 Servlet基础之ServletConfig与ServletContext接口详解

本文从源码上分了ServletConfig和ServletContext两个接口,ServletConfig是相对于每个Servlet实例的,根据web.xml中的配置或者@WebServlet注解来生成的;ServletContext是相对于web 应用的,在一个web应用(一个虚拟机中运行的一个web应用)中是全局唯一的,ServletContext中封装了许多功能强大的方法,其中比较重要的就是对资源文件的使用,通过Servlet容器可以方便的使用web应用中的资源,这也需要我们多练习,熟练掌握。

2020-02-26 15:47:58 1822

原创 Servlet虚拟路径映射详解

本文具体讨论了urlPatterns属性的匹配规则,主要为精确匹配、路径匹配、扩展名匹配、缺省匹配,其优先级也各不相同,我们在使用时,也需要根据自己的需求自己设定urlPatterns,不过知道了匹配规则,使用起来也会方便很多,也能帮我们快速的定位错误。

2020-02-22 21:00:03 4113 1

原创 Java Web之Servlet入门

本文对Servlet进行了详细的介绍,从起历史,到概念,到servlet-api.jar的目录结构和里面的重要类,最后,还详细的介绍了如何创建一个Servlet,其生命周期、执行过程,详细的介绍了@WebServlet的每个注解,相信一定能帮到你。

2020-02-18 22:55:06 4126 4

原创 Java多线程结合银行家算法避免死锁实践

​ 在前几篇文章中,我们讨论了银行家算法,包含其数据结构、算法步骤和安全性算法。关于银行家算法的具体细节,请参看这篇博文。​ 在另一篇文章中,我们使用了Java来模拟实现了银行家算法,并使用一个例子来验证了算法的有效性,具体实现请参看这篇博文。​ 本文,让我们一起来看下如何使用Java多线程模拟OS中多个进程的执行,并且采用银行家算法来避免死锁,本文中,我们精心的设计了例题,让整个实验过程更加清晰。

2020-02-05 22:49:26 4337 10

原创 存储器管理概述----功能、管理对象、基本模式

存储器一直都是计算机系统的重要组成部分。近年来,随着技术的发展,虽然存储器的容量一直在不断扩大,但是仍不能满足现代软件发展的需要。存储器仍然是一种宝贵而稀缺的资源。如果有效的来管理存储器,不仅直接影响到存储器的利用率,而且对系统的性能也有重大影响。本文对存储器管理的功能,管理对象,基本模式进行讨论,并介绍了虚拟存储器的概念...

2020-02-02 15:31:48 7540 2

原创 Java模拟实现银行家算法

银行家算法是我们的老朋友迪杰斯特拉为T.H.E系统设计的一种避免死锁产生的算法。该算法最初是为银行系统设计的,为了保证银行在发放现金贷款时,不会发生不能满足所有客户需要的情况。银行家算法是一个非常经典的算法,也是死锁避免算法中的最具代表性的算法,其思想是非常值得我们学习的。死锁处理的四种方法:预防死锁、避免死锁、检测死锁、解除死锁。其中预防死锁最为复杂,需要为OS设定各种定律、准则,较难实现,且较为影响系统的性能,最主要的就是并发效率下降;避免死锁可以让OS不必遵循特定的准则,因此给OS施加的限制较小...

2020-02-01 21:36:02 6486 5

原创 避免死锁-----银行家算法详解

银行家算法是我们的老朋友迪杰斯特拉为T.H.E系统设计的一种避免死锁产生的算法。该算法最初是为银行系统设计的,为了保证银行在发放现金贷款时,不会发生不能满足所有客户需要的情况。银行家算法是一个非常经典的算法,也是死锁避免算法中的最具代表性的算法,其思想是非常值得我们学习的。死锁处理的四种方法:预防死锁、避免死锁、检测死锁、解除死锁。其中预防死锁最为复杂,需要为OS设定各种定律、准则,较难实现,且较为影响系统的性能,最主要的就是并发效率下降;避免死锁可以让OS不必遵循特定的准则,因此给OS施加的限制较小...

2020-02-01 12:09:02 19341 1

原创 操作系统中不安全状态为何并非一定转为死锁?

在学习避免死锁、银行家算法时,对于安全状态一定不会产生死锁,不安全状态也并非必然转为死锁,不止你是否会疑惑为何处于不安全状态下,不是必然会发生死锁?

2020-01-31 12:26:41 28578 19

原创 死锁的预防、检测与解除

本文主要讨论死锁的预防,如何检测死锁和解除死锁。预防死锁是通过破坏产生死锁的四个必要条件中的一个或几个,以避免发生死锁。由于互斥条件是临界资源所必须的,不仅不能改变,还应加以保证,因此主要是破坏产生死锁的后三个条件,即请求和保持、不可抢占与循环等待。系统需要配有死锁检测算法和死锁解除算法,可以保证系统中发生死锁也不会无限的等待下去,即死锁定义中所说的外力,可以打破死锁的僵局

2020-01-30 18:23:35 4635 3

原创 死锁概述---定义、危害、必要条件和处理方法

死锁是一组进程在执行的过程中,因为竞争资源或者推进顺序不当导致的一种情况,在这种情况下,每个进程都在持有着自己已经抢占的资源,又同时等待别人释放资源,最终这一组进程都一直僵持谁也无法运行。本文,我们会对死锁的定义、危害,产生死锁的四个必要条件,和处理思索的四种方法来进行细致的讨论,让死锁对你毫无保留。

2020-01-29 16:17:46 3165 2

原创 Java基础如何学?

Java Web的学习是需要一定的计算机基础的,主要有前端基础和Java基础和一定的网络基础,这些基础知识还是需要掌握到一定的程度的。Java语言是整个Java开发的基础,其重要性是不言而喻的,基础不好,也筑不起高台。关于Java基础不是我一篇文章就能说的清楚的,在这里我给大家整理了一些我看到的不错的Java学习的网站、视频和博客,希望能帮助到你。

2020-01-29 11:58:36 2917 7

原创 Java Web前端基础

Java Web的学习是需要一定的计算机基础的,主要有前端基础和Java基础和一定的网络基础,这些基础知识还是需要掌握到一定的程度的。本文主要介绍前端接触,共包括HTML、CSS和JavaScript,学习的过程中,还是要多动手。

2020-01-28 14:35:47 9181 8

原创 Java Web开发环境搭建

本文是Java Web系列博客的第一篇,主要为JDK的安装、eclipse的安装、tomcat的下载,eclipse配置tomcat,新建第一个Java Web 项目,并且让第一个项目在Tomcat上运行起来,如果某一部分你已经完成了,可以直接跳过。在学习的过程中,还请跟着一起多动手,码出技术、码出未来。

2020-01-27 14:11:22 9733 6

原创 处理机调度算法详解----进程调度

进程调度调度的对象是进程,其主要任务是根据某种算法,选取处于就绪队列中的进程,并由分派程序将处理机分配给被选中的进程。进程调度是一种最基本的调度,在多道批处理、分时和实时等OS中,都必须要配置这级调度。其执行周期最短,也就是执行频率最高,分时系统中10-100ms便要进行一次进程调度,因此也称为短程调度。因为执行频率高,进程调度算法不宜过于复杂(太过复杂会占用太多CPU的时间)下面我们一起来看下进程调度的几种调度算法。轮转调度算法、多队列调度算法、多级反馈调度算法...

2020-01-25 17:43:17 2083 1

原创 处理机调度算法详解----作业调度

作业调度调度的对象是作业,作业在概念上和程序还是有些区别的,作业是处于外存中的,也就是在后备队列上的,作业调度的任务就是从外存的后备对列选取某些作业调入内存,并为他们创建进程、分配必要的资源,也只有作业被调入到内存中,并为之分配资源,才能完成进程的创建工作,OS才可以进行其他的调度。...

2020-01-24 18:22:35 4656 2

原创 OS处理机调度算法----理论篇

在传统的操作系统中(早期,OS为单处理机),处理机的分配和运行都是以进程为单位的(参考进程的定义),因而处理机的管理可归结为对进程的管理。处理机管理的功能主要包含:进程控制、进程同步、进程通信、调度。下面我们一个个的来分析其功能的具体含义。进程控制是处理机管理中最基本的功能,主要包含为调入内存中的作业创建进程、终止已完成的进程、将因发生等待事件而无法继续执行的进程置于阻塞状态、负责进程运行中状态的转换等功能。进程控制一般是由OS内核中的原语来实现的

2020-01-23 22:49:24 2237

原创 经典的进程同步问题-----读者-写者问题详解

经典的进程同步问题-----读者-写者问题详解​ 本文和接下来几篇博文是对上篇文章(进程同步机制)的一次实践,通过具体的例子来加深理论的理解,会用三个经典的进程同步问题来进行讲解,并且会配有伪代码和Java实践(使用多线程模拟),深入的进行讲解。​ 进程同步问题是一个非常重要且相当有趣的问题,本文我们对其中比较有名的读者-写者问题来进行探讨。读者-写者问题是指保证一个Writer进程必须与其他...

2019-11-25 08:34:08 7750 10

原创 经典的进程同步问题-----哲学家进餐问题详解

​ 本文和接下来几篇博文是对上篇文章(进程同步机制)的一次实践,通过具体的例子来加深理论的理解,会用三个经典的进程同步问题来进行讲解,并且会配有伪代码和Java实践(使用多线程模拟),深入的进行讲解。​ 进程同步问题是一个非常重要且相当有趣的问题,本文我们对其中比较有名的哲学家进餐问题来进行探讨。哲学家进餐问题是诸进程间竞争临界资源而导致死锁的典型例子,具有很大的代表性,因此在这里我们也对其进行...

2019-11-25 08:33:21 39941 22

原创 经典的进程同步问题-----生产者-消费者问题详解

经典的进程同步问题-----生产者-消费者问题详解​ 本文和接下来几篇博文是对上篇文章(进程同步机制)的一次实践,通过具体的例子来加深理论的理解,会用三个经典的进程同步问题来进行讲解,并且会配有伪代码和Java实践(使用多线程模拟),深入的进行讲解。​ 进程同步问题是一个非常重要且相当有趣的问题,因而吸引了很多学者对他进行研究,比如在前几篇博客中提到的老熟人迪杰斯特拉,由此也产生了一系列经典的...

2019-11-25 08:32:47 17543

原创 Java并发编程模拟管程(霍尔Hoare管程、汉森Hansan管程、MESA管程)

​ 在前面个两篇博文中,我们使用Java模拟了AND型信号量和信号量集,本文将使用Java来模拟管程,关于管程的一些理论知识,可以参考另一篇博客。​ 对于管程,在这里我们不做具体的讨论了。不过对于Java和管程之间的一些事,还是很有意思的。Java中,每个对象其实都一个Monitor(java中翻译为监视器),Java中提供的synchronized关键字及wait()、notify()、not...

2019-11-21 19:19:16 4251 4

原创 进程通信方式总结与盘点

​ 进程通信是指进程之间的信息交换。这里需要和进程同步做一下区分,进程同步控制多个进程按一定顺序执行,进程通信是一种手段,而进程同步是目标。从某方面来讲,进程通信可以解决进程同步问题。​ 首先回顾下我们前面博文中讲到的信号量机制,为了实现进程的互斥与同步,需要在进程间交换一定的信息,因此信号量机制也可以被归为进程通信的一种方式,但是也被称为低级进程通信,主要原因为:效率低:一次只可操作少量的...

2019-11-20 14:25:23 13612 2

原创 Java并发编程(JUC)模拟信号量集

​ 上一文中,我们使用JUC模拟了AND型信号量,对于信号量集,他的特点就是一次可以申请多个资源,并且可以设置资源分配下限,让设计者可以更好的来控制进程的执行。如果对于进程同步机制还有什么疑惑,可以参考我的另一篇博客。​ 为了方便编程,并且信号量集在使用时更加方便,我们定义了一个SemaphoreUnit对象,用这个对象来记录申请的信号量类型,申请的数量和分配下限值,SemaphoreUnit定...

2019-11-17 12:22:05 1707 2

原创 Java并发编程(JUC)模拟AND型信号量

Java并发编程(JUC)模拟AND型信号量​ AND型信号量可能大家都听说过并可能都有一定的理解,但是你有使用过么?今天就使用Java来模拟实现!​ 本文是对上篇文章(进程同步机制)的一次实践,通过JUC提供的一些机制来模拟一些OS中的AND型信号量,因为记录型型信号量可以等价于JUC中提供的Semaphore(信号量),但是对于AND型信号量因为一些原因(主要是过时了),JUC没有提供,今...

2019-11-16 09:36:57 2609 3

原创 进程同步机制-----为进程并发执行保驾护航

本文是对进程同步机制的一个大总结(9000+字吐血总结),涵盖面非常的全,包括了进程同步的一些概念、软件同步机制、硬件同步机制、信号量机制和管程机制,对每种机制结合代码做了详细的介绍,并且对琐碎的知识点和概念解释的非常清晰。​ 在前面的博客中讲述了进程的状态及其状态的转换,每种状态的含义和转换的原因。同样我们也知道,在OS引入了进程后,可以使系统中的多道程序可以并发的执行,进程的并发执行一方面极...

2019-11-07 10:24:53 4625 24

原创 操作系统进程状态和状态转换详解

进程的状态的转换与PCB详解​ 返回主目录​ 之前的有博文对进程和线程的区别进行了详细的介绍,并且说明了引入进程的目的是为了能够使程序并发的执行,并且可以对并发执行的程序加以描述和控制。这篇博文,我们就来对进程的状态转换来进行详细的分析。本文除了进程的状态转换,还穿插着对进程的控制的说明。​ 注意:本博文中进程均是在传统操作系统中的进程,既是OS进行资源分配的基本单位,也是OS进行调度的一个...

2019-11-01 10:33:02 14928 8

3D模型:潜艇、人物obj模型

3D模型:潜艇、人物obj模型

2022-11-08

Atari游戏Roms.zip

Atari2600个街机游戏环境,从http://www.atarimania.com/rom_collection_archive_atari_2600_roms.html 网站上下载的文件。

2022-04-08

Excel模板文件--Java动态加载Excel测试专用

用与测试

2021-08-06

空空如也

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

TA关注的人

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