摘要:零、定义 代理模式,借助代理实现功能。可以理解成中介,厂商通过中介实现销售,房东通过中介出租房子。 代理模式的定义:给某一个对象提供一个代理,并由代理对象控制对原对象的引用。 一、角色 代理模式包含如下角色:ISubject:抽象主题角色,是一个接口。该接口是对象和它的代理共用的接口。RealSub
阅读全文
摘要:一、 基础 反射:在运行状态时,可以通过反射获取自身的Class信息 一般情况下,我们都是通过类实例化对象。利用反射,可以从对象得到类的信息。 核心类:Class类 二、相关方法: 先写一个简单的类来演示。 Car.java public class Car { private String bra
阅读全文
摘要:数据库事务特性及事务隔离级别: https://www.cnblogs.com/expiator/p/9626123.html 一、在Spring中使用xml配置声明式事务 核心类:TransactionProxyFactoryBean代理类 作用:对需要事务管理的业务类进行代理,以便实施事务功能的
阅读全文
摘要:在Spring中可以使用junit配合注解进行单元测试 零、添加jar包: <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> </dependency> <dependency> <groupId>org.spr
阅读全文
摘要:redis是一个键值对数据库,用于缓存数据。 redis是一个key-value存储系统。和Memcached数据库类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类
阅读全文
摘要:1、懒汉式:需要获取对象的时候再实例化。 2、饿汉式:直接实例化对象,调用的时候再返回对象。 3.线程安全的单例模式 直接使用synchronized锁住方法,效率比较差。 主要使用volatile修饰变量,使用双重检查锁(Double Check Lock)。保证线程安全并提高效率。 单例模式思考
阅读全文
摘要:一、设计模式的六大原则1、开闭原则(Open Close Principle)开闭原则就是说对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码。所以一句话概括就是:为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类。2、里氏代换原则(Liskov
阅读全文
摘要:零、分类 工厂模式分为静态工厂、抽象工厂模式、工厂方法模式 一、工厂模式优点: 1.可以使代码结构清晰,有效地封装变化。在编程中,产品类的实例化有时候是比较复杂和多变的,通过工厂模式,将产品的实例化封装起来,使得调用者根本无需关心产品的实例化过程,只需依赖工厂即可得到自己想要的产品。2.对调用者屏蔽
阅读全文
摘要:Spring的依赖注入可以基于xml配置,也可以基于注解配置,还可以基于java类配置。 普通的bean类,只要标注了@Configuration注解,就可以为Spring容器提供Bean定义的信息。 每一个标注了@Bean的类方法,相当于提供了Bean的定义信息,可以实现依赖注入。 示例代码: @
阅读全文
摘要:SpringBoot 一、特点: 1.默认大于配置,不需要大量配置文件,没有web.xml,拥有可运行的Application类. 2.一般通过java代码配置,而尽量少使用xml配置。 3.maven中拥有大量的初始依赖,可以直接使用。 二、项目结构 1.Application.java必须与Co
阅读全文