摘要: 一、MyBatis 1、概念 MyBatis 是一种优秀的持久层框架,对jdbc操作数据库的过程进行了封装。 mybatis通过xml或者注解的方式,将要执行的各种sql语句配置起来,并通过Java对象和statement中的sql语句映射生成最终的sql语句,最后由mybatis框架执行sql语句 阅读全文
posted @ 2018-09-13 20:10 提拉米苏007 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 一、概念 Spring是一个开源容器框架,可以接管web层,业务层,dao层,持久层的组件,并且可以配置各种bean,和维护bean与bean之间的关系。其核心就是控制反转(IOC),和面向切面(AOP),简单的说就是一个分层的轻量级开源框架。 二、核心原理 1、 IOC控制反转 控制权由对象本身转 阅读全文
posted @ 2018-09-13 20:08 提拉米苏007 阅读(145) 评论(0) 推荐(0) 编辑
摘要: redis BGSAVE:https://draveness.me/whys-the-design-redis-bgsave-fork/ 二、spring mvc Springmvc原理 (1) 客户端发送一个http请求到服务端,web服务端对http进行解析,如果匹配到dispatcherSer 阅读全文
posted @ 2018-09-13 15:33 提拉米苏007 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 引用:https://www.cnblogs.com/boothsun/p/8601474.html 一、redis redis是nosql,数据存于内存,单线程,用了多路复用I/O,1秒可处理10w的并发 1、redis支持的数据类型: string:二进制类型,一个键最大能存储512MB; li 阅读全文
posted @ 2018-09-13 15:07 提拉米苏007 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 引用:https://www.cnblogs.com/boothsun/p/8480909.html 执行一条 SQL 语句时,要想知道这个 SQL 先后查询了哪些表,是否使用了索引,这些数据从哪里获取到,获取到数据遍历了多少行数据等等, 我们可以通过 EXPLAIN 命令来查看这些执行信息,这些执 阅读全文
posted @ 2018-09-12 18:16 提拉米苏007 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 单例模式是一种创建型模式,保证一个类只有一个实例对象。 场景:打印机,一个系统可存在多个打印任务,但只能有一个正在工作的任务; 在Spring中创建的Bean实例默认都是单例模式存在的 懒汉式:在类加载时不初始化 1、懒汉式1,线程不安全 public class SingletonDemo1 { 阅读全文
posted @ 2018-08-30 14:52 提拉米苏007 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 定义:观察者模式是一种发布-订阅模式,是一种一对多的关系,当被观察者发生变化时,所有的观察者都会得到通知。 角色:抽象观察者(含有相同抽象方法)、具体观察者、抽象被观察者(注册、移除、通知(遍历list中的观察者,调用观察者中的方法))、具体被观察者 引用:https://www.cnblogs.c 阅读全文
posted @ 2018-08-29 20:08 提拉米苏007 阅读(83) 评论(0) 推荐(0) 编辑
摘要: ==与equals()区别? (1)== 对于基本类型来说是值比较,对于引用类型来说是比较的是引用地址; (2)而equals 默认情况下是引用地址比较,只是很多类重写了equals 方法,比如String、Integer 等把它变成了值比较。 1、string为什么不可继承? 答:因为string 阅读全文
posted @ 2018-08-29 14:21 提拉米苏007 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 定义一个模板结构,将具体内容延迟到子类去实现。 基于继承,在不改变模板结构的前提下在之类重新定义模板中的内容 场景:代码复用:公共部分抽象到父类中,不同代码在不同的之类中; 反向控制:父类调用之类,通过对之类的实现扩展不同的行为; 例子:炒菜步骤 优点:父类代码复用、子类代码扩展、符合开闭原则 缺点 阅读全文
posted @ 2018-08-28 20:01 提拉米苏007 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 工厂模式(Factory Pattern)属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。 使用场景:业务方面:在处理奖惩、订单、押金、保险的流水时,不同的类型单独处理; 通用业务:日志记录,日 阅读全文
posted @ 2018-08-23 20:03 提拉米苏007 阅读(125) 评论(0) 推荐(0) 编辑