




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 北京市海淀区2024-2025学年高二(上)期末生物试卷(含解析)
- 牛皮灯拆除施工方案
- 单法兰液位计施工方案
- 2025年车手赛前测试试题及答案
- 2025年制程质量经理面试题及答案
- 不认可专项施工方案
- cme基准利率预测值
- 等离子处理3m胶
- 地震计算机技术预测相关的政策
- androidstudio课程设计报告
- 2025年1月浙江高考英语听力试题真题完整版(含答案+文本+MP3)
- 2025年内蒙古兴安盟突泉县选聘生态护林员450人历年高频重点提升(共500题)附带答案详解
- 2025年兴湘集团全资子公司招聘笔试参考题库含答案解析
- 蒙医学中的推拿暖宫疗法与妇科保健技巧
- 湖北省生态环保有限公司招聘笔试冲刺题2025
- 广告牌的制作安装及售后服务方案
- 2024年建筑幕墙工程检测理论考试题库(精练300题)
- 2025届广东省广州市实验中学高三第一次调研测试数学试卷含解析
- 2024护理分级新标准
- 《5G时代万物皆智联》演讲课件
- 造型的表现力 课件 2024-2025学年人教版初中美术八年级上册
评论
0/150
提交评论