Query對象
1. 使用query對象,寫hql語句,而不寫sql語句
* hql:hibernate query language
* hql與sql差別
2. 查詢所有資料hql語句
* from 實體類名稱
3. Query對象使用
* 建立Query對象
* 調用Query對象裡面的方法
- 使用sql操作的是表和表裡面的字段
select * from t_user
- 使用hql操作的是實體類Entity和屬性
Query query= session.createQuery("from User");
List<User> list=query.list();
Criteria對象
使用這個對象不需要寫hql語句,直接調用裡面的方法就可以
- 使用過程
- 建立Criteria對象
- 調用裡面的方法
Criteria criteria = session.createCriteria(User.class);
List<User> user=criteria.list();
SQLQuery對象
SQLQuery sqlQuery=session.createSqlQuery("select * from t_user ");
//傳回的list集合每一組資料都是數組形式而不是對象形式
List<Object[] object> user = sqlQuery.list();
for(Object[] object:list){
System.out.println(Arrays.toString(objects));
}
//解決方案
//設定傳回的值是對象形式
sqlQuery.addEntity(User.class);
List<User> userList=sqlQuery.list();