啥叫ORM
名字:
object / relation map
对象关系映射
定义:
通过(描述对象和数据库之间映射的)元数据把对象自动转为关系数据
一般都是作为中间件
优缺:
优点是自动化,屏蔽了SQL语句,而且可以自动进行一些优化处理
缺点是多了额外的开销(难道不用ORM就不用转化了吗?)
背景:
随着软件复杂程度的提升面向对象编程成为编程的主流
数据持久化一般都放在关系型数据库中。(难道说非关系型只是为了性能?)
业务实体在内存中体现为对象,在数据库中体现为关系数据。
然而这两个不能直接转化,对象的组合继承关系没办法在数据库中直接体现。(啥意思啊?)
原理:
通过配置文件关联对象属性和数据库表字段
query的时候就把表字段拿出来放到对象属性上
insert/update的时候就把属性绑定到SQL语句上,再自动执行SQL语句。