自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 简单工厂模式

简单工厂模式(Simple Factory Pattern):定义一个工厂类,它可以根据参数的不同返回不同类的实例,被创建的实例通常都具有共同的父类。因为在简单工厂模式中用于创建实例的方法是静态(static)方法,因此简单工厂模式又被称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。

2023-08-21 17:30:00 67

原创 工厂方法模式

定义一个用于创建对象的接口,让子类决定将哪一个类实例化。工厂方法模式让一个类的实例化延迟到其子类。工厂方法模式又简称为工厂模式(Factory Pattern),又可称作虚拟构造器模式(Virtual Constructor Pattern)或多态工厂模式(Polymorphic Factory Pattern)。工厂方法模式是一种类创建型模式。

2023-08-18 21:00:00 73

原创 抽象工厂模式

提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体的类。抽象工厂模式又称为Kit模式,它是一种对象创建型模式。

2023-08-15 17:34:24 77

原创 netty+动态代理模式实现简单的rpc

模拟dubbo的实现思路,实现共享单一协议的rpc,使用动态代理调用netty客户端发送消息,netty服务端接收消息后解码,反射调用方法。

2023-08-10 15:53:36 107

原创 原型模式(Prototype)

使用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。原型模式是一种对象创建型模式。

2023-07-26 21:45:00 30

原创 redis常用的数据结构

redis的五大基本数据类型及常用的命令

2023-06-26 21:00:00 62 1

原创 多线程通信-交替打印

N个线程交替打印0-100个数字,例如N=3,如下输出。

2023-06-21 14:27:51 55

原创 职责链模式

职责链模式(Chain of Responsibility Pattern):避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。职责链模式是一种对象行为型模式。职责链模式通过建立一条链来组织请求的处理者,请求将沿着链进行传递,请求发送者无须知道请求在何时、何处以及如何被处理,实现了请求发送者与处理者的解耦。

2023-06-19 15:13:50 42

原创 单例模式(Singleton)

单例模式作为一种目标明确、结构简单、理解容易的设计模式,在软件开发中使用频率相当高,在很多应用软件和框架中都得以广泛应用。

2023-06-01 11:02:46 31

原创 模板方法模式-实现简单的JdbcTemplate

打开连接预处理sql(构造执行sql的字符串)获取preparedStatement对象填充预处理sql中的占位符执行sql处理sql执行结果集关闭连接

2023-05-24 16:26:46 396

原创 模板方法模式

模板方法:定义一个操作中算法的框架,而将一些步骤延迟到子类中。模板方法模式使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。模板方法模式是基于继承的代码复用技术,它体现了面向对象的诸多重要思想,是一种使用较为频繁的模式。模板方法模式广泛应用于框架设计中,以确保通过父类来控制处理流程的逻辑顺序(如框架的初始化,测试流程的设置等)。

2023-05-22 16:43:29 32

原创 状态模式(state pattem)

状态模式(State Pattern):允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。其别名为状态对象(Objects for States),状态模式是一种对象行为型模式。状态模式将一个对象在不同状态下的不同行为封装在一个个状态类中,通过设置不同的状态对象可以让环境对象拥有不同的行为,而状态转换的细节对于客户端而言是透明的,方便了客户端的使用。在实际开发中,状态模式具有较高的使用频率,在工作流和游戏开发中状态模式都得到了广泛的应用,例如公文状态的转换、游戏中角色的升级等。

2023-05-04 18:24:45 489

原创 观察者模式

观察者模式:定义对象之间的一种一对多依赖关系,使得每当一个对象状态发生改变时,其相关依赖对象皆得到通知并被自动更新。观察者模式的别名包括发布-订阅模式、模型-视图模式、源-监听器模式或从属者模式。观察者模式是一种对象行为型模式。观察者模式是一种使用频率非常高的设计模式,无论是移动应用、Web应用或者桌面应用,观察者模式几乎无处不在,它为实现对象之间的联动提供了一套完整的解决方案,凡是涉及到一对一或者一对多的对象交互场景都可以使用观察者模式。

2023-03-30 16:49:35 82

原创 中介者模式

Java设计模式-行为型-中介者模式

2023-03-28 15:16:53 84

原创 享元模式-实现数据库线程池

享元模式实现数据库连接池

2023-03-06 15:55:51 182

原创 java基础巩固:枚举

java枚举

2022-06-21 15:13:35 66

原创 java基础巩固:内部类

内部类

2022-06-21 15:10:17 60

原创 mysql学习03

今日内容1. 多表查询2. 事务3. DCL多表查询:* 查询语法: select 列名列表 from 表名列表 where....* 准备sql # 创建部门表 CREATE TABLE dept( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(20) ); INSERT INTO dept (NAME) VALUES ('开发部'),('市场部'),('财务部'); # 创建员工表 CREATE TAB

2021-08-12 22:36:39 48

原创 mysql学习2

DQL:查询语句1. 排序查询 * 语法:order by 子句 * order by 排序字段1 排序方式1 , 排序字段2 排序方式2... * 排序方式: * ASC:升序,默认的。 * DESC:降序。 * 注意: * 如果有多个排序条件,则当前边的条件值一样时,才会判断第二条件。2. 聚合函数:将一列数据作为一个整体,进行纵向的计算。 1. count:计算个数 1. 一般选择非空的列:主键 2. count(*) 2. max:计算最大值 3.

2021-08-09 20:23:19 52

原创 mysql基础

mysql基础数据库的基本概念MySQL数据库软件安装卸载配置SQL数据库的基本概念1. 数据库的英文单词: DataBase 简称 : DB2. 什么数据库? * 用于存储和管理数据的仓库。3. 数据库的特点: 1. 持久化存储数据的。其实数据库就是一个文件系统 2. 方便存储和管理数据 3. 使用了统一的方式操作数据库 -- SQL4. 常见的数据库软件 * 参见《MySQL基础.pdf》MySQL数据库软件1. 安装 * 参见《MySQ

2021-08-07 14:13:33 43

原创 求问java泛型中的通配符中的问题

首先定义几个有继承关系的类package api03;public class Person { }class Student extends Person{ }class Teacher extends Person{ }class ChineseTeacher extends Teacher{ }class Boss extends Person{ }再定义一个继承ArrayList的类,里面addall(Collection<? extends E>

2020-12-12 18:45:49 81 1

原创 控制台的小游戏推箱子

package day10;import java.util.Random;import java.util.Scanner;/**用一个二维数组代表地图。二维数组中0代表空,1代表人,2代表箱子,3代表终点,用随机器分别生成箱子,人,终点的坐标。从键盘中输入"w",“s”,“a”,“d”,分别代表上下左右移动的操作,每操作一次打印一次地图。*/public class TXZ {//在控制台打印地图。0-□ 代表空,1-●代 表人,2-■ 代表箱子,3-▲ 代表终点。publi

2020-11-15 16:19:37 110

原创 一维数组的基本操作与两种基本的排序(选择排序和冒泡排序)

public class Test03 {//给指定数组增加或删除size个空间 public static int[] addSize(int[] arr, int size) { int[] brr = new int[arr.length + size]; if (arr.length < brr.length) { for (int i = 0; i < arr.length; i++) { brr[i] = arr[i]; } } els.

2020-11-04 21:05:36 370

原创 java万年历的实现

日期类package day06;public class Date { private int year; private int month; public Date(int year,int month) { this.year = year; this.month = month; } public Date() { } public int setYear(int yesr ) { return this.year = yesr; } public i

2020-11-01 16:07:19 587 2

原创 java基础day01

java的开发环境一般我们都是在集成开发环境中编写代码的,初学一般使用eclipse中编写我们的代码。程序程序=数据+运算符+语法数据类型分为基本数据类型和引用型数据类型基本数据类型:Java中有八个基本数据类型,从小到大它们占用内存的大小如下byte(1字节)boolean(一字节)short(2字节)char(2字节)int(4字节)float(4字节)double(8字节)long(8字节)引用型数据类型:初学用的最多就是String, 还有就是八大数据的包装类

2020-11-01 16:02:51 109 2

空空如也

空空如也

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

TA关注的人

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