上一页 1 ··· 32 33 34 35 36 37 38 39 40 ··· 73 下一页
摘要: 什么是代理模式 Proxy Pattern:为其他对象提供一种代理以控制对这个对象的访问。 即:在不改变原始类(或叫被代理类)代码的情况下,通过引入代理类来给原始类附加功能,比如Spring AOP。 代理模式定义 说明:该图仅为加深对代理模式的了解 ①、Subject 抽象主题角色,可以是抽象类, 阅读全文
posted @ 2022-03-16 08:49 残城碎梦 阅读(66) 评论(0) 推荐(0)
摘要: 什么是原型模式 Prototype Design Pattern:用原型实例指定创建对象的种类, 并且通过拷贝这些原型创建新的对象。 即:对象复制 原型模式的两种实现方法 我们日常开发中,应该有使用过 BeanUtils.copyProperties()方法,其实这就是原型模式的一种用法(浅拷贝)。 阅读全文
posted @ 2022-03-16 08:45 残城碎梦 阅读(118) 评论(0) 推荐(0)
摘要: 什么是建造者模式 将一个复杂对象的构建与它的表示分离, 使得同样的构建过程可以创建不同的表示。 即:将构造复杂对象的过程和组成对象的部件解耦。就像攒电脑一样,不管什么品牌的配件,只要兼容就可以装上;同样,一样的配件,可以有好多组装的方式。更直接点就是同一个类,通过内部不同属性状态构造不同的对象。 建 阅读全文
posted @ 2022-03-16 08:43 残城碎梦 阅读(72) 评论(0) 推荐(0)
摘要: 什么是工厂模式 定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。 即:提供创建对象的接口,将创建对象的过程屏蔽,从而达到灵活的目的。 工厂模式分类 一般情况下,工厂模式分为三类: ①、简单工厂模式(Simple Factory) ②、工厂方法模式(Fa 阅读全文
posted @ 2022-03-15 22:49 残城碎梦 阅读(202) 评论(0) 推荐(0)
摘要: 什么是单例模式 采取一定的办法保证在整个软件系统中,确保对于某个类只能存在一个实例。单例模式有如下三个特点: ①、单例类只能有一个实例 ②、单例类必须自己创建自己的实例 ③、单例类必须提供外界获取这个实例的方法 单例类的设计思想(Singleton) ①、外界不能创建这个类的实例,那么必须将构造器私 阅读全文
posted @ 2022-03-15 22:20 残城碎梦 阅读(73) 评论(0) 推荐(0)
摘要: 想要整合mybatis和spring,那么我们首先要知道这两个框架是干嘛的,对于mybatis我们前面几篇博客已经有了很详细的介绍,我们通过加载mybatis-configuration.xml 文件来产生SqlSessionFactory,然后通过SqlSessionFactory去产生sqlSe 阅读全文
posted @ 2022-03-15 13:28 残城碎梦 阅读(864) 评论(0) 推荐(0)
摘要: 通过前面的学习,在实际开发中,我们基本上能对mybatis应用自如了,但是我们发现了一个问题,所有操作都是围绕着po类,xxxMapper.xml文件,xxxMapper接口等文件来进行的。如果实际开发中数据库的表特别多,那么我们需要手动去写每一张表的po类,xxxMapper.xml,xxxMap 阅读全文
posted @ 2022-03-15 09:28 残城碎梦 阅读(397) 评论(0) 推荐(0)
摘要: 全局配置文件的结构: configuration 配置 properties 属性:可以加载properties配置文件的信息 settings 设置:可以设置mybatis的全局属性 typeAliases 类型命名 typeHandlers 类型处理器 objectFactory 对象工厂 pl 阅读全文
posted @ 2022-03-14 21:31 残城碎梦 阅读(272) 评论(0) 推荐(0)
摘要: 前面我们了解了通过mybatis的懒加载来提高查询效率,那么除了懒加载,还有什么方法能提高查询效率呢?这就是我们本章讲的缓存。 mybatis 为我们提供了一级缓存和二级缓存,可以通过下图来理解: ①、一级缓存是SqlSession级别的缓存。在操作数据库时需要构造sqlSession对象,在对象中 阅读全文
posted @ 2022-03-14 13:19 残城碎梦 阅读(1698) 评论(0) 推荐(0)
摘要: 本篇博客我们讲如何通过懒加载来提高mybatis的查询效率。 需求:查询订单信息,有时候需要关联查出用户信息 第一种方法:我们直接关联查询出所有订单和用户的信息 select * from `order` o ,user u where o.user_id = u.id; 分析: ①、这里我们一次查 阅读全文
posted @ 2022-03-13 22:42 残城碎梦 阅读(121) 评论(0) 推荐(0)
摘要: 一对一 我们以用户表 user 和订单表 orders 为例。设定一个订单只能由一个 用户创建,那么由订单到用户就是一对一的关系。 ①、创建用户表 user 和订单表 order 用户表 user ② 订单表order ②、创建项目工程,导入相应的 jar 包 <properties> <proje 阅读全文
posted @ 2022-03-13 18:24 残城碎梦 阅读(81) 评论(0) 推荐(0)
摘要: 通过 mapper 接口加载映射文件,对于以后与Spring框架的整合是非常重要的。那么什么是通过 mapper 接口加载映射文件呢? 我们首先看以前的做法,在全局配置文件 mybatis-configuration.xml 通过 <mappers> 标签来加载映射文件,那么如果我们项目足够大,有很 阅读全文
posted @ 2022-03-13 18:07 残城碎梦 阅读(302) 评论(0) 推荐(0)
摘要: Mybatis的Mapper文件中的select、insert、update、delete元素中都有一个parameterType属性,用于对应的mapper接口方法接受的参数类型。 parameterType (不是必须)如果不指定,自动识别,指的就是传入的参数 MyBatis的传入参数param 阅读全文
posted @ 2022-03-13 17:26 残城碎梦 阅读(2750) 评论(1) 推荐(0)
摘要: 前面我们通过实例讲解了用mybatis对一张表进行的CRUD操作,但是我们发现写的 SQL 语句都比较简单,如果有比较复杂的业务,我们需要写复杂的 SQL 语句,往往需要拼接,而拼接 SQL ,稍微不注意,由于引号,空格等缺失可能都会导致错误。 那么怎么去解决这个问题呢?这就是本篇所讲的使用 myb 阅读全文
posted @ 2022-03-13 16:50 残城碎梦 阅读(1365) 评论(0) 推荐(1)
摘要: 前面的示例中,在 mybatis-configuration.xml 的配置文件中,对数据库的配置都是硬编码在这个xml文件中,如下图,那么我们如何改进这个写法呢? 将数据库的配置语句写在 db.properties 文件中 jdbc.driver=com.mysql.jdbc.Driver jdb 阅读全文
posted @ 2022-03-13 16:49 残城碎梦 阅读(184) 评论(0) 推荐(0)
摘要: 创建数据库和表 与 基于XML的入门示例 一致。 创建Java工程导入相应的包 与 基于XML的入门示例 一致。 添加数据库配置文件 mybatis-configuration.xml 与 基于XML的入门示例 一致。 定义表所对应的实体类 与 基于XML的入门示例 一致。 定义操作 user 表的 阅读全文
posted @ 2022-03-13 15:48 残城碎梦 阅读(46) 评论(0) 推荐(0)
摘要: Log4j2是log4j 1.x和logback的改进版,据说采用了一些新技术(无锁异步、等等),使得日志的吞吐量、性能比log4j 1.x提高10倍,并解决了一些死锁的bug,而且配置更加简单灵活。 ① 关于配置文件的名称以及在项目中的存放位置 log4j 2.x版本不再支持像1.x中的.prop 阅读全文
posted @ 2022-03-13 13:41 残城碎梦 阅读(419) 评论(0) 推荐(0)
摘要: 本篇博客主要讲解日志框架log4j在web工程中的配置和使用。 简介 Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格 阅读全文
posted @ 2022-03-13 11:54 残城碎梦 阅读(94) 评论(0) 推荐(0)
摘要: log4j是Apache的一个开源项目,log4j2和log4j是同一个作者,只不过log4j2是重新设计架构的一款日志组件,他抛弃了之前log4j的不足,以及吸取了优秀的logback的设计重新推出的一款新组件。log4j2的社区活跃很频繁而且更新的也很快。 配置类型 log4j是通过一个.pro 阅读全文
posted @ 2022-03-13 11:44 残城碎梦 阅读(1605) 评论(0) 推荐(1)
摘要: slf4j是什么 SLF4J,即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统。按照官方的说法,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部署其应用时使用其所希望的日志系统。 在java.util 阅读全文
posted @ 2022-03-13 09:15 残城碎梦 阅读(174) 评论(0) 推荐(0)
上一页 1 ··· 32 33 34 35 36 37 38 39 40 ··· 73 下一页