Session接口是负责所有数据基础更新操作与基础查询操作的主要接口,而SharedSessionContract接口主要负责事务或者是数据查询操作的,那么本次的重点只在于Session子接口上。
1 数据增加
在Hibernate里面针对于数据增加操作提供了两个方法:
(1)数据保存:public Serializable save(Object object)
|————返回的是这个保存的数据ID;
(2)数据更新或保存:public void saveOrUpdate(Object object)
在使用传统JDBC开发时候有一点特别不好用,那么就是如果表中的主键字段为自动增长,要想取得增长后的ID则需要根据每个数据库的不同进行查询,但是如果有了Hibernate,它可以帮我们自动返回增长后的ID数据,同时这个数据也会自动的保存到POJO类里面。
-- 删除数据表
DROP TABLE IF EXISTS news;
-- 创建数据表
CREATE TABLE news(
nid INT AUTO_INCREMENT,
ntitle VARCHAR(50) NOT NULL,
nvisits INT DEFAULT 0,
nitem VARCHAR(50),
CONSTRAINT pk_nid PRIMARY KEY(nid)
);
范例:实现增加
package org.lks.test;
import org.lks.dbc.HibernateSessionFactory;
import org.lks.pojo.News;
public class TestNewsInsert {
public static void main(String[] args) {
News vo = new News();
vo.setNtitle("lks love hhy");
vo.setNitem("哎吖");
vo.setNvisits(20);
Integer nid = (Integer) HibernateSessionFactory.getSession().save(vo);
HibernateSessionFactory.getSession().beginTransactio