数据库优化、实体类划分

数据库的优化
    1.参数优化
    2.缓存、索引
    3.读写分离
    4.分库分表

 怎么分库操作?
    垂直拆分 分库/分表
        垂直分库按照业务模块把不同数据放到不同数据中。( 垂直切分是程序员切分)
        垂直分表 大表拆成小表,比如:用户基本息、 通讯信息、详情信息
    水平拆分 分库/分表
        将一张大表按照一定切分规则,切分到不同的表或者库中。
         范围式拆分(数据范围 :取模、hash、时间)
      插件:TDDL、Cobar、Mycat 、sharding-jdbc等进行切
        Sharding 垂直和水平切分
 

 怎么实现?

数据源选择的解决方案层次:
DAO:AbstractRoutingDataSource
ORM:MyBatis 插件
JDBC:Sharding-JDBC  工作在客户端的分库分表
Proxy:Mycat、Sharding-Proxy
Server:特定数据库或者版本

链接:https://www.jianshu.com/p/9a346a7bc20d

实体类划分

bo
    business object:业务对象

dto
    data transfer object:数据传输对象。
    表里面有十几个字段:id,name,sex…
    页面只需要展示其中的四个字段,并不是全量展示,而是仅展示需要展示的数据。
    dto由此产生,一是能提高数据传输的速度(减少了传输字段),二能隐藏后端表结构。
PO    
    persistent object
    持久对象,可以用来对照数据库中的一条记录
vo
    value object :值对象
    通常用于业务层之间的数据传递,由new创建,由GC回收。

pojo
    plain ordinary java object:简单无规则java对象
    纯的传统意义的java对象,最基本的Java Bean只有属性加上属性的get和set方法。
    可以转化为PO、DTO、VO;比如POJO在传输过程中就是DTO。
Entity
    这个最容易理解,其特点是:数据表对应到实体类的映射



  


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

what_2018

你的鼓励是我前进的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值