版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、Good is good, but better carries it.精益求精,善益求善。S2SH框架整合建立一個Web工程添加Hibernate支持org.hibernate.dialect.Oracle9Dialectjdbc:oracle:thin:7:1521:orclscotttigeroracle.jdbc.driver.OracleDriverOrcl添加Spring框架的支持添加Struts2框架的支持添加struts.xml和web.Xml配置Struts2的容器對象是Spring配置Spring容器,是其在Web容器啟動是實例化ApplicationContextStru
2、tsBlankcontextConfigLocation/WEB-INF/applicationContext-*.xml,classpath*:applicationContext-*.xmlorg.springframework.web.context.ContextLoaderListenerstruts2org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilterstruts2/*index.jsp在Spring中定義Action添加Action類packagecom.ehr.action;importcom
3、.opensymphony.xwork2.ActionSupport;publicclassDeptActionextendsActionSupportStringdeptno;Stringdname;Stringloc;publicStringadddept()throwsExceptionSystem.out.println(DeptAction.adddept();returnsuper.execute();publicStringgetDeptno()returndeptno;publicvoidsetDeptno(Stringdeptno)this.deptno=deptno;pub
4、licStringgetDname()returndname;publicvoidsetDname(Stringdname)this.dname=dname;publicStringgetLoc()returnloc;publicvoidsetLoc(Stringloc)this.loc=loc;在Spring中配置Action阿薩德發(fā)配置Struts2/index.jsp定義Hibernate的持久化類和映射文件packagecom.ehr.po;publicclassJdlongjdid;Stringjdname;Qxqx;publiclonggetJdid()returnjdid;pub
5、licvoidsetJdid(longjdid)this.jdid=jdid;publicStringgetJdname()returnjdname;publicvoidsetJdname(Stringjdname)this.jdname=jdname;publicQxgetQx()returnqx;publicvoidsetQx(Qxqx)this.qx=qx;packagecom.ehr.po;importjava.util.HashSet;importjava.util.Set;publicclassQxlongqxid;Stringqxname;Setjds=newHashSet();
6、publiclonggetQxid()returnqxid;publicvoidsetQxid(longqxid)this.qxid=qxid;publicStringgetQxname()returnqxname;publicvoidsetQxname(Stringqxname)this.qxname=qxname;publicSetgetJds()returnjds;publicvoidsetJds(Setjds)this.jds=jds;PK_idQx_PK_id編寫Dao層代碼packagecom.ehr.dao.impl;importjava.io.Serializable;impo
7、rtjava.sql.SQLException;importjava.util.List;importorg.hibernate.HibernateException;importorg.hibernate.Query;importorg.hibernate.Session;importorg.jruby.runtime.callsite.SuperCallSite;importorg.springframework.orm.hibernate3.HibernateCallback;importorg.springframework.orm.hibernate3.support.Hiberna
8、teDaoSupport;importcom.ehr.dao.IJdDao;importcom.ehr.po.Jd;/*1、自己的業(yè)務(wù)Dao層代碼必須繼承HibernateDaoSupport2、不必管理JDBC(Session)事務(wù),*authorAdministrator*/publicclassJdDaoextendsHibernateDaoSupportimplementsIJdDaopubliclongaddJd(Jdjd)Serializableserializable=super.getHibernateTemplate().save(jd);returnserializable
9、=null?-1:Long.parseLong(serializable.toString();publiclongupdateJd(Jdjd)longl=-1;super.getHibernateTemplate().update(jd);l=1;returnl;publiclongdeleteJd(longjdid)longl=-1;Jdjd=findById(jdid);if(jd!=null)super.getHibernateTemplate().delete(jd);l=1;elseif(jd=null)l=0;returnl;publicJdfindById(longjdid)O
10、bjecto=super.getHibernateTemplate().get(Jd.class,jdid);returno=null?null:(Jd)o;/*如果查詢不涉及Session和Query對象可以直接使用find方法*/publicListfindAll()Stringhql=fromJd;Listljs=super.getHibernateTemplate().find(hql);returnljs;/*如果查詢涉及Session和Query對象那么只能使用回調(diào)機制*/*/publicListfindPagedList(finalintpage,finalintpagesize
11、)finalStringhql=fromJd;Listljs=super.getHibernateTemplate().execute(newHibernateCallback()publicObjectdoInHibernate(Sessionsession)throwsHibernateException,SQLExceptionQueryquery=session.createQuery(hql);query.setFirstResult(1)*pagesize);/頁面序號從1開始returnquery.list(););returnljs;業(yè)務(wù)層代碼packagecom.ehr.se
12、rvice.impl;importjava.util.ArrayList;importjava.util.List;importcom.ehr.dao.IJdDao;importcom.ehr.po.Jd;importcom.ehr.service.IJdService;importcom.ehr.vo.JdVo;publicclassJdServiceimplementsIJdServiceIJdDaojdDao;publiclongaddJd(Jdjd)/數(shù)據(jù)檢查;longl=jdDao.addJd(jd);returnl;publiclongupdateJd(Jdjd)returnjdD
13、ao.updateJd(jd);publiclongdeleteJd(longjdid)returnjdDao.deleteJd(jdid);publicJdVofindById(longjdid)Jdjd=jdDao.findById(jdid);JdVojvo=p2v(jd);returnjvo;publicListfindAll()/得到持久化對象Listljs=jdDao.findAll();/VO/PO分離;Listljvos=p2v(ljs);returnljvos;privateListp2v(Listljs)Listljvos=newArrayList();for(Jdjd:l
14、js)ljvos.add(p2v(jd);returnljvos;privateJdVop2v(Jdjd)JdVojvo=newJdVo();/不是代理對象;jvo.setJdid(jd.getJdid()+);jvo.setJdname(jd.getJdname();jvo.setQxname(jd.getQx().getQxname();returnjvo;publicListfindPagedList(intpage,intpagesize)/得到持久化對象Listljs=jdDao.findPagedList(page,pagesize);/VO/PO分離;Listljvos=p2v(
15、ljs);returnljvos;/*依賴注入IJdDao*paramjdDao*/publicvoidsetJdDao(IJdDaojdDao)this.jdDao=jdDao;編寫Actionpackagecom.ehr.action;importjava.util.List;importcom.ehr.po.Jd;importcom.ehr.service.IJdService;importcom.ehr.vo.JdVo;importcom.opensymphony.xwork2.ActionSupport;publicclassJdActionextendsActionSupportI
16、JdServicejdService;Listljvos;publicStringfindall()throwsExceptionljvos=jdService.findAll();returnsuper.execute();/*僅添加setJdService方法,原因是所有的代理對象都無法被轉(zhuǎn)換json對象*paramjdService*/publicvoidsetJdService(IJdServicejdService)this.jdService=jdService;publicListgetLjvos()returnljvos;配置Spring的事務(wù)定義Session和亂碼過濾器St
17、rutsBlankcontextConfigLocation/WEB-INF/applicationContext-*.xml,classpath*:applicationContext-*.xmlorg.springframework.web.context.ContextLoaderListenerSpringcharacterencodingfilterorg.springframework.web.filter.CharacterEncodingFilterencodingUTF-8Springcharacterencodingfilter/*org.springframework.orm.hibern
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 林地修路合同范例
- 專項委托設(shè)計合同范例
- 單位物業(yè)托管合同范例
- 培訓(xùn)包過合同范例
- 安全專篇合同范例
- 銅仁幼兒師范高等??茖W(xué)?!稊?shù)據(jù)分析與挖掘》2023-2024學(xué)年第一學(xué)期期末試卷
- 陽江2024年廣東陽江市中醫(yī)醫(yī)院招聘核電項目組工作人員歷年參考題庫(頻考版)含答案解析
- 通化師范學(xué)院《工程經(jīng)濟學(xué)B》2023-2024學(xué)年第一學(xué)期期末試卷
- 鐵門關(guān)職業(yè)技術(shù)學(xué)院《化工設(shè)計》2023-2024學(xué)年第一學(xué)期期末試卷
- 小學(xué)數(shù)學(xué)二年級第二學(xué)期口算計算共5055道題
- 硅藻泥墻面施工合同
- 五年級上冊書法教案
- 品管圈提高呼吸內(nèi)科患者痰培養(yǎng)標(biāo)本及時送檢率品管圈匯報書課件模板
- 三方安全管理協(xié)議書模板
- 火車司機職業(yè)生涯規(guī)劃總結(jié)報告
- 廣元市2024年專業(yè)技術(shù)人員公需科目繼續(xù)教育試卷及參考答案
- 2024政府采購評審專家考試真題庫及答案
- 2024版《隱患排查標(biāo)準(zhǔn)手冊》(附檢查依據(jù))
- 脊髓腫瘤的護理查房
- (正式版)SHT 3115-2024 石油化工管式爐輕質(zhì)澆注料襯里工程技術(shù)規(guī)范
- (完整版)合同能源管理合同范本
評論
0/150
提交評論