• /  22
  • 下載費用: 10.00積分  

JavaEE單元1配套教學課件4JavaEE 單元四 JavaEE 單元四 JavaEE-單元4 任務4 員工基本信息管理.ppt

'JavaEE單元1配套教學課件4JavaEE 單元四 JavaEE 單元四 JavaEE-單元4 任務4 員工基本信息管理.ppt'
Struts2+Hibernate+SpringJavaEE 企業級項目開發單元四 人事管理—任務4 員工基本信息管理1任務簡介2任務分析3相關支撐知識4任務小結目錄頁第1頁任務4 員工基本信息管理過渡頁第2頁過渡頁任務簡介任務4 員工基本信息管理任務簡介本任務的目標是學習Hibernate的數據查詢,本任務QBCHQL查詢所有員工和查詢指定員工第3頁過渡頁第4頁過渡頁任務分析任務4 員工基本信息管理任務分析 HQL提供了類似標準SQL語句的查詢方式,同時也提供了更加面向對象的封裝。使用HQL查詢可以進行屬性查詢、參數綁定查詢、查詢時進行分組與排序等員工基本信息管理模塊中,主要實現員工信息的增加、修改、刪除、查看等功能本任務主要介紹管理員身份登錄后,可以查看所有員工信息并顯示,也可以根據某一條件獲取員工信息第5頁過渡頁第6頁過渡頁相關支撐知識相關支撐知識 Query By Criteria通過面向對象的設計,對查詢條件進行了面向對象封裝,將查詢條件封裝為一個預定義的查詢對象,由這個查詢對象來執行查詢 QBC查詢主要由org.hibernate.Criteria接口、org.hibernate.Criterion接口、org.hiberante.Restrictions類組成,可使用Order工具類的方法設置排序方式,Projections工具類的方法進行統計和分組第7頁QBC1一QBC任務4 員工基本信息管理相關支撐知識 使用Session實例的createCriteria()方法創建Criteria對象 可使用Restrictions的相關方法為Criteria對象設置查詢條件 添加查詢條件,使用Criteria對象的list()方法進行查詢 處理查詢結果第8頁QBC1一 Q B C任務4 員工基本信息管理使用QBC 查詢基本步驟相關支撐知識 HQL具有與SQL語言類似的語法規范,HQL針對持久化對象,HQL是完全面向對象的查詢語句,具備繼承、多態和關聯等特性,可以用HQL查詢具有繼承、多態和關聯關系的數據。在檢索數據時,一般優先考慮使用HQL方式。 HQL語句本身是不區分大小寫的,關鍵字可以使用大寫字母,也可以使用小寫字母,但是其中出現的類名和屬性名必須注意大小寫區分,完整的HQL語法結構如下:[select/update/delete…] [from…] [where…] [group by… [having…]] [order by…]第9頁HQL簡介0 二 H Q L任務4 員工基本信息管理相關支撐知識 獲取Hibernate Session對象 編寫HQL語句 以HQL語句為參數,調用Session的createQuery方法創建查詢對象 若HQL語句包含參數,則調用Query的setXXX方法為參數賦值 調用Query對象的list等方法遍歷查詢結果第10頁HQL使用步驟0 二 H Q L任務4 員工基本信息管理相關支撐知識public void deleteDepart(){ // 創建session對象 Session session = HibernateSessionFactory.getSession(); Transaction transaction=session.beginTransaction(); // 編寫HQL查詢語句 String hql="delete Department dept where dept.departName like 'java%'"; // 創建Query對象 Query query = session.createQuery(hql); //執行刪除的HQL語句 query.executeUpdate(); transaction.commit(); session.close();}第11頁實體更新與刪除1 二 H Q L任務4 員工基本信息管理相關支撐知識 public void getAllDeparts() { // 創建session對象 Session session = HibernateSessionFactory.getSession(); // 編寫HQL查詢語句 String hql = "from Department depart"; // 創建查詢對象 Query query = session.createQuery(hql); // 執行查詢 List list = query.list(); // 處理查詢的結果,輸出顯示 for (int i = 0; i < list.size(); i++) { Department depart = (Department) list.get(i); System.out.println(depart.getDepartId() + " " + depart.getDepartName() + " " + depart.getPhone()); } }第12頁實體查詢2 二 H Q L任務4 員工基本信息管理相關支撐知識//修改之后的HQL查詢語句String hql="select d.departId,d.departName from Department d";Query query = session.createQuery(hql);List list = query.list();// 處理查詢的結果,輸出顯示for (int i = 0; i < list.size(); i++) { Object obj[]=(Object[])list.get(i); //查詢得到的是Object對象數組 System.out.println(obj[0]+" "+obj[1]);}第13頁屬性查詢3 二 H Q L任務4 員工基本信息管理//查詢多個屬性并封裝到對象String hql="select new Department(d.departId,d.departName) from Department d";Query query = session.createQuery(hql);List list = query.list();// 處理查詢的結果,輸出顯示for (int i = 0; i < list.size(); i++) { Department depart = (Department) list.get(i); System.out.println(depart.getDepartId()+" "+depart.getDepartName());} 相關支撐知識 Order by子句 與SQL語句相似,HQL查詢也可以通過order by子句對查詢結果集進行排序,并且可以通過asc或者desc關鍵字指定排序方式,如下面的代碼: from Department depart order by depart.departId asc,depart.departName desc; 上面HQL查詢語句,會以departId屬性進行升序排序,以departName屬性進行降序排序,而且與SQL語句一樣,默認的排序方式為asc,即升序排序。 Group by子句與統計查詢 在HQL語句中同樣支持使用group by子句分組查詢,還支持group by子句結合聚集函數的分組統計查詢,大部分標準的SQL聚集函數都可以在HQL語句中使用,比如:count(),sum(),max(),min(),avg()等。 第14頁分組與排序4 二 H Q L任務4 員工基本信息管理相關支撐知識第15頁參數綁定5 二 H Q L任務4 員工基本信息管理1. 按參數名稱綁定 在HQL語句中定義命名參數要用“:”開頭,形式如下: String hql="from Department d where d.departId=:id"; Query query=session.createQuery(hql); query.setInteger("id", 5); //設置命名參數值,id號為5 List list = query.list(); 上面代碼中用:id定義了命名參數,用Query接口的setXXX()方法設定名參數值,setXXX()方法包含兩個參數,分別是命名參數名稱和命名參數實際值。 相關支撐知識第16頁參數綁定5 二 H Q L任務4 員工基本信息管理2. 按參數位置綁定 在HQL查詢語句中用“?”來定義參數位置,形式如下: String hql="from Department d where d.departId=?"; Query query=session.createQuery(hql); query.setString(0,id); 同樣使用setXXX()方法設定綁定參數,只不過這時setXXX()方法的第一個參數代表綁定參數在HQL語句中出現的位置編號(由0開始編號),第二個參數仍然代表參數實際值。相關支撐知識第17頁參數綁定5 二 H Q L任務4 員工基本信息管理3. setParameter()方法 在Hibernate的HQL查詢中可以通過setParameter()方法綁定任意類型的參數。 String hql="from Department d where d.departId=? "; Query query=session.createQuery(hql); query.setParameter("id",5,Hibernate.INTEGER); setParameter()方法包含三個參數,分別是命名參數名稱,命名參數實際值,以及命名參數映射類型??梢灾苯舆@樣寫: query.setParameter("id",5);相關支撐知識第18頁參數綁定5 二 H Q L任務4 員工基本信息管理4. setProperties()方法 在Hibernate中可以使用setProperties()方法,將命名參數與一個對象的屬性值綁定在一起,如下程序代碼: Customer customer=new Customer(); customer.setName(“pansl”); customer.setAge(80); Query query=session.createQuery(“from Customer c where c.name=:name and c.age=:age ”); query.setProperties(customer); setProperties()方法會自動將customer對象實例的屬性值匹配到命名參數上,但是要求命名參數名稱必須要與實體對象相應的屬性同名。過渡頁第19頁過渡頁任務小結任務小結能力目標第20頁1QBC2HQL任務3 角色權限設置謝謝觀看
關 鍵 詞:
單元 javaee 任務 4javaee 員工 教學 基本 配套 信息管理
 天天文庫所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
關于本文
本文標題:JavaEE單元1配套教學課件4JavaEE 單元四 JavaEE 單元四 JavaEE-單元4 任務4 員工基本信息管理.ppt
鏈接地址: http://www.476824.live/p-51617460.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服點擊這里,給天天文庫發消息,QQ:1290478887 - 聯系我們

本站為“文檔C2C交易模式”,即用戶上傳的文檔直接賣給(下載)用戶,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有【成交的100%(原創)】。本站是網絡服務平臺方,若您的權利被侵害,侵權客服QQ:1290478887 歡迎舉報。

[email protected] 2017-2027 http://www.476824.live 網站版權所有

粵ICP備19057495號 

收起
展開
球探网即时蓝球比分 快中彩中奖方式 舟山飞鱼最新开奖结果 福建11选五技巧 江西十一选五稳定计划 海富通股票 内蒙古快三出什么号 广西11选五今天的前三 疯狂飞艇计划网页版 今天快乐十分开奖号码 青海体彩十一选五奖金