自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 动态页面静态化:javaEE原生API+装饰者模式实现

先来看看装饰者模式 装饰模式指的是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。 特点 (1) 装饰对象和真实对象有相同的接口。这样客户端对象就能以和真实对象相同的方式和装饰对象交互。 (2) 装饰对...

2019-08-18 07:54:01 240

原创 手写数据库连接池可多线程并发访问

数据库连接池(Connection pooling)是程序启动时建立足够的数据库连接,并将这些连接组成一个连接池,由程序动态地对池中的连接进行申请,使用,释放。 大家可以想一下,如果项目中没有数据库连接池会是一个什么样的结果?每访问一次数据库都会新建一个数据库连接,如果同事有成百上千的请求需要访问数据库那么项目会惨不忍睹。 数据库连接池就是在项目启动是就已经创建了一定数量的数据库连接,有请求访问数...

2019-07-28 09:09:17 653

原创 【反射】用Java反射机制手写出JavaBean的单级与多级的属性封装:可能是mybaties的底层实现原理之一

认识反射   JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。   要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Cla...

2019-07-21 07:29:00 192

原创 【手写】用java写了个二叉树数据结构以及他的增加、包含、删除、获取所有四个方法

二叉树的定义 二叉树(Binary Tree)是有限个节点的集合,这个集合可以是空集,也可以是一个根节点和两颗不相交的子二叉树组成的集合,其中一颗树叫根的左子树,另一颗树叫右子树。所以二叉树是一个递归地概念。 二叉树的遍历 二叉树的遍历分为三种:前序遍历 中序遍历 后序遍历 前序遍历:按照“根左右”,先遍历根节点,再遍历左子树 ,再遍历右子树 中序遍历:按照“左根右“,先遍历左子树,再遍历根节点,...

2019-07-14 11:15:30 246

原创 【LinkedList原理】自己动手实现简单LinkList以及增删改查。

单向链表的特点是链表的链接方向是单向的,对链表的访问要通过顺序读取从头部开始;链表是使用指针进行构造的列表;又称为结点列表,因为链表是由一个个结点组装起来的;其中每个结点都有指针成员变量指向列表中的下一个结点。 实现中有两个类和一个内部类 接口定义主要方法: public interface Link<E> { public void add(E node);// 添加方法 pu...

2019-07-06 07:26:58 587

原创 【持续更新】关于虚拟机类加载机制的那些事

  代码编译的结果从本地机器码转变为字节码,是存储格式发展的一-小步,却是编程语言发展的一大步。 概述    在Class文件中描述的各种信息,最终都需要加载到虚拟机中之后才能运行和使用。而虚拟机如何加载这些Class文件?Class文件中的信息进人到虚拟机后会发生什么变化?这些都是本此将要说一说的内容。   虚拟机把描述类的数据从Cla...

2019-06-28 22:46:44 74

原创 【总结】使用异常机制的技巧(欢迎补充)

目前, 存在着大量有关如何恰当地使用异常机制的争论。有些程序员认为所有的已检查异常都很令人厌恶;还有一些程序员认为能够拋出的异常量不够。我们认为异常机制(甚至是已检查异常)有其用武之地。下面给出使用异常机制的几个技巧。 1、异常处理不能代替简单的测试 作为一个示例, 在这里编写了一段代码, 试着上百万次地对一个空栈进行退栈操作。在实施退栈操作之前, 首先要查看栈是否为空。 if (!s.empty...

2019-06-21 21:20:45 209

原创 高性能硬件上的程序部署策略

    一个15万PV/天左右的在线文档类型网站最近更换了硬件系统,新的硬件为4个CPU、16GB 物理内存,操作系统为64位CentOS 5.4, Resin 作为Web服务器。整个服务器暂时没有部署别的应用,所有硬件资源都可以提供给这访问量并不算太大的网站使用。管理员为了尽量利用硬件资源选用了64位的JDK 1.5,并通过-Xmx和-Xms参数将Java...

2019-06-15 23:01:14 160

原创 【更新完成】java中关于线程创建销毁、异常处理、线程调度、线程分组、以及生产者与消费者问题

并发 大家可能已经很熟悉操作系统中的多任务(multitasking): 在同一刻运行多个程序的能力。 例如,在编辑或下载邮件的同时可以打印文件,说简单点就是同一时间同时做多件事。今天,人们很可能有单台拥有多个 CPU 的 计算机,但是,并发执行的进程数目并不是由 CPU 数目制约的。操作系统将 CPU 的时间片 分配给每一个进程, 给人并行处理的感觉。 多线程程序在较低的层次上扩展了多任务的概念...

2019-04-15 23:06:51 355

原创 自己动手,写出springmvc:原理、执行过程、仿写(新人第一篇)

本篇文章讲解一下springmvc的执行过场以及原理,最后手写一个样子出来

2019-04-14 14:51:58 450

空空如也

空空如也

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

TA关注的人

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