1. hibernate工具怎么写
//泛型DAO接口
public interface IBaseDao{
// 根据主键获取实体。如果没有相应的实体,返回 null。
public T get(PK id);
// 根据主键获取实体。如果没有相应的实体,抛出异常。
public T load(PK id);
// 获取全部实体。
public ListloadAll();
public MapmakeStore();
// loadAllWithLock() ?
// 更新实体
public void update(T entity);
// 存储实体到数据库
public void save(T entity);
// saveWithLock()
// 增加或更新实体
public void saveOrUpdate(T entity);
// 增加或更新集合中的全部实体
public void saveOrUpdateAll(Collectionentities);
// 删除指定的实体
public void delete(T entity);
// 根据主键删除指定实体
public void deleteByKey(PK id);
// 删除集合中的全部实体
public void deleteAll(Collectionentities);
// -------------------- HSQL ----------------------------------------------
// 使用HSQL语句直接增加、更新、删除实体
public int bulkUpdate(String queryString);
// 使用带参数的HSQL语句增加、更新、删除实体
public int bulkUpdate(String queryString, Object[] values);
// 使用HSQL语句检索数据
public List find(String queryString);
//分页数据获取
public MapfindFenYeData(int pagecout,int nowpages);
//根据拼接HQL证据获取分页数据
public MapfindFenYeDataForHql(String hql,int pagecout,int nowpages);
// 使用带参数的HSQL语句检索数据
public List find(String queryString, Object[] values);
// 使用HSQL语句检索数据,返回 Iterator
public Iterator iterate(String queryString);
// 使用带参数HSQL语句检索数据,返回 Iterator
public Iterator iterate(String queryString, Object[] values);
// 关闭检索返回的 Iterator
public void closeIterator(Iterator it);
}
2. hibernate添加语句怎么写
不是有映射文件吗?
比如你的数据库表为student
那么的你就应该有hibernate.cfg.xml配置文件和他的映射文件hibernate.hbm.xml,最后还应该有一个student表的映射类student.java
这3个文件.
然后你建一个实现类studentInsert
实现是
SessionFactory sf = new Configuration().configure().buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
student st=new student();
st.setId("0001");
st.setUserName("Wang");
st.setpassWord("123");
session.save(st);
tx.commit();
session.close();
就是这样.
3. java连接mysql 用hibernate怎么写查询语句
第一种方式:HQL(Hibernate Query Languge,Hibernate 查询语言)查询是一种面向对象的查询语言,其中没有表和字段的概念,只有类、对象和属性的概念,HQL 是应用较为广泛的方式语法:[select/update/delete……] from Entity [where……] [group by……] [having……] [order by……](1).没使用Spring框架的写法:使用HQL需要四步得到Session、编写HQL语句、创建Query对象(Query接口是HQL 查询接口。
它提供了各种的查询功能)、执行查询,得到结果 sessionFactory = new Configuration().configure().buildSessionFactory(); session = sessionFactory.openSession(); String hql = “from Street”; Query query = session.createQuery(hql); List list = query.list();(2).使用Spring框架的写法:String queryString = "select form entity 。.";List list=getHibernateTemplate().find(queryString);第二种方式:Criteria 查询Criteria 查询采用面向对象方式封装查询条件,又称为对象查询;就是对SQL 语句进行封装,采用对象的方式来组合各种查询条件由Hibernate 自动产生SQL 查询语句(1).没使用Spring框架的写法;Criteria由Hibernate Session进行创建SessionFactory sessionFactory = new Configuration().configure() .buildSessionFactory(); Session session = sessionFactory.openSession(); Criteria criteria = session.createCriteria(User.class); List result = criteria.list(); Iterator it = result.iterator(); (2)使用Spring框架的写法:import org.hibernate.criterion.DetachedCriteria;DetachedCriteria criteria=DetachedCriteria.forClass(ObjectEntity.class);criteria.add(Restrictions.eq("propertyName", propertyValue));List result=getHibernateTemplate().findByCriteria(criteria);第三种方式:使用SQL语句查询(以下都是使用了Spring框架的写法)1).这是把执行结果放到了一个类里:(这个类通常使用VO实体,VO实体一般就只用来接收查询结果)List list = getHibernateTemplate().executeFind(new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException, SQLException { StringBuffer hqlBuffer = new StringBuffer(""); hqlBuffer.append("select column_Name from 。
");//里面是SQL语句 SQLQuery sqlQuery = session.createSQLQuery(hqlBuffer.toString()); sqlQuery.addScalar("propertyName",Hibernate.STRING);//该propertyName是 ObjectVO实体的一个属性 sqlQuery.setResultTransformer(Transformers.aliasToBean(ObjectVO.class)); List list = sqlQuery.list(); return list;//此处list集合中存放的是ObjectVO对象 } });2).返回结果放到list中的: final String queryString = "";//sql语句 List resultList=getHibernateTemplate().executeFind(new HibernateCallback() { public List doInHibernate(Session session) throws HibernateException, SQLException { SQLQuery sqlQuery = session.createSQLQuery(queryString); List list=sqlQuery.executeUpdate(); return list; } });3).无返回结果: final String queryString = "";//SQL语句 getHibernateTemplate().executeFind(new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException, SQLException { SQLQuery sqlQuery = session.createSQLQuery(queryString); sqlQuery.executeUpdate(); return null; } });。
4. 用hibernate的HQL怎么写一个插入语句
不是有映射文件吗?
比如你的数据库表为student
那么的你就应该有hibernate.cfg.xml配置文件和他的映射文件hibernate.hbm.xml,最后还应该有一个student表的映射类student.java
这3个文件.
然后你建一个实现类studentInsert
实现是
SessionFactory sf = new Configuration().configure().buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
student st=new student();
st.setId("0001");
st.setUserName("Wang");
st.setpassWord("123");
session.save(st);
tx.commit();
session.close();
就是这样.
转载请注明出处育才学习网 » hibernate怎么写