1. 什么是延迟加载 resultMap可以实现高级映射(使用association、collection实现一对一及一对多映射),association、collection具备延迟加载功能。 需求: 如果查询订单并且关联查询用户信息。如果先查询订单信息即可满足要求,当我们需要查询用户信息时再查询 ...
分类:
其他好文 时间:
2017-08-06 20:43:26
阅读次数:
204
1.需求 查询用户及用户购买商品信息。 2 sql语句 查询主表是:用户表 关联表:由于用户和商品没有直接关联,通过订单和订单明细进行关联,所以关联表: orders、orderdetail、items 3 映射思路 将用户信息映射到user中。 在user类中添加订单列表属性List<Orders ...
分类:
其他好文 时间:
2017-08-06 20:37:55
阅读次数:
221
1. 数据模型分析思路 1、每张表记录的数据内容 分模块对每张表记录的内容进行熟悉,相当 于你学习系统 需求(功能)的过程。 2、每张表重要的字段设置 非空字段、外键字段 3、数据库级别表与表之间的关系 外键关系 4、表与表之间的业务关系 在分析表与表之间的业务关系时一定要建立 在某个业务意义基础上 ...
分类:
其他好文 时间:
2017-08-06 19:39:55
阅读次数:
132
1.需求: 查询所有订单信息及订单下的订单明细信息。 订单信息与订单明细为一对多关系。 2. sql语句 确定主查询表:订单表 确定关联查询表:订单明细表 在一对一查询基础上添加订单明细表关联即可。 3. 分析(只能使用resultMap) 使用resultType将上边的 查询结果映射到pojo中 ...
分类:
其他好文 时间:
2017-08-06 19:38:35
阅读次数:
204
1.需求 查询所有订单信息,关联查询下单用户信息。 注意: 因为一个订单信息只会是一个人下的订单,所以从查询订单信息出发关联查询用户信息为一对一查询。如果从用户信息出发查询用户下的订单信息则为一对多查询,因为一个用户可以下多个订单。 2. 方法一:resultType 使用resultType,定义 ...
分类:
其他好文 时间:
2017-08-06 19:22:26
阅读次数:
289
背景 随着公司业务增长,关系型数据库表慢慢会增长到很大的量,如果不能清理数据的话就需要面对大表CRUD,这是公司成长过程的共同考验 解决方案 根据我的个人经验,目前主要有3种比较主流的方法 垂直分表:将表的字段拆分到新表,常用字段留下,少用字段做关联查询。属于冷热分离 水平分表:将表复制多份,结构一 ...
分类:
数据库 时间:
2017-07-31 13:22:32
阅读次数:
171
创建mybatis数据库,运行以下sql语句 创建工程包结构,以及导入jar包 log4j的配置文件 db.properties数据库连接配置文件 SqlMapConfig.xml全局的配置文件,mybatis必须的配置文件 user这个pojo类 user和order一对多关联查询使用result ...
分类:
数据库 时间:
2017-07-31 01:02:51
阅读次数:
270
在谈论MyBatis的缓存之前,我们先说说它的延迟加载,所谓延迟加载, resultMap中的association和collection标签具有延迟加载的功能。延迟加载的意思是说,在关联查询时,利用延迟加载,先加载主信息。使用关联信息时再去加载关联信息。 设置延迟加载 需要在SqlMapConfi ...
分类:
其他好文 时间:
2017-07-30 00:09:50
阅读次数:
153
有状态分布式,涉及的知识就比較多了,只是我们能够拿几个现实的样例由浅入深的来理解。 数据库的分库分表 如果你是一个开发负责人,開始使用单机的数据库,突然一天数据库硬盘挂掉了。你没有做备份,然后就没有然后了。进入第2个公司,你意识到备份的重要性。每天定时备份到还有一台机器,突然有一天,数据库硬盘挂掉了 ...
分类:
其他好文 时间:
2017-07-27 13:41:29
阅读次数:
159