S2SH框架整合教学教材_第1页
S2SH框架整合教学教材_第2页
S2SH框架整合教学教材_第3页
S2SH框架整合教学教材_第4页
S2SH框架整合教学教材_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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阿萨德发配置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、自己的业务Dao层代码必须继承HibernateDaoSupport2、不必管理JDBC(Session)事务,*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对象那么只能使用回调机制*/*/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;业务层代码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)/数据检查;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方法,原因是所有的代理对象都无法被转换json对象*paramjdService*/publicvoidsetJdService(IJdServicejdService)this.jdService=jdService;publicListgetLjvos()returnljvos;配置Spring的事务定义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. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论