hibernate的简单理解
之前只学了mybatis,但是遇到了用到hibernate的项目就开始自学了,起初学习的时候百度了一下,感觉百度里面的东西有些晦涩,然后就上了B站找视频(B站有很多培训机构的视频,比较适合小白),果然视频讲的东西比较容易懂,然后自己也喜欢总结东西,就写下点心得分享下。
我认为的hibernate最主要是就在于:配置
核心配置:
一个与数据库相关的框架,会用到JDBC,而且有关数据库的框架都是对JDBC的封装,JDBC无非就是四要素和六大步骤,所以mybatis和hibernate还是比较相似的,核心的配置就在于四要素和一些日志、数据库连接池、其他给予方便的属性(百度都能搜到)
<hibernate-configuration>
<session-factory>
(1)数据的配置
驱动
<property name="driver" >org.mysql.jdbc.Driver</property>
数据库连接
<property name="url" >jdbc:mysql://localhost/路径</property>
用户名
<property name="connection.username" >username</property>
密码
<property name="connection.password" >password</property>
其他的属性
<property name="other" >other</property>
</session-factory>
</hibernate-configuration>
映射配置:
映射文件的配置主要是将实体类和数据库中的表对应起来,将实体类中的属性和表中的列相对应,属性名可能和列名不相同,但大多数的项目都会将配置封装起来,所以配置起来不会那么繁琐,但是对于基础学习的人还是要掌握好,毕竟要学会封装这些配置,起码得会自己配置
<hibernate-mapping>
<class name="类的全包名" table="数据库表">
id属性对应的是表的主键
<id name="类的属性名" column="表的主键">
<gennerator class="native"></gennerator>自增长
</id>
<property name ="类的属性" column="外键" ></property>
</class>
</hibernate-mapping>
通过对hibernate的学习,做一下mybatis和hibernate的比较
核心配置:文件很相似,都是对JDBC四要素的封装
配置文件:mybatis不仅仅是将实体类、属性和表、表中的列对应起来,更是在配置文件中书写了SQL语句,使DAO层写的更加简单
hibernate的配置中并没有SQL语句,需要在DAO层中通过代码的方式来体现数据库的增删改查。
总结:这些关于数据库的框架,都脱离不开底层的JDBC,都是对JDBC的封装,可能在某些方面存在不一样的地方,但无非是对SQL语句的操作,对数据库的增删改查。