版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
主讲人:闾枫延迟符任务5.2考勤查询设计SpringAOP任务分析考勤查询子模块主要功能是查询用户的考勤情况,输入用户id、开始日期、结束日期查询用户在这一个时间段的考勤情况,同时将查询用户的信息记录到日志表中。考勤查询设计延迟符用到的实体仍为任务一中的签到类Check和签到日志类CheckLog在项目webOA4的POM文件中,引入AspectJ的依赖0102准备工作考勤查询设计延迟符//根据用户Id、日期查询考勤信息publicListfindCheck(@Param("userId")IntegeruserId,@Param("startDate")StringstartDate,@Param("endDate")StringendDate);<!--//根据用户id、日期查询考勤信息--><selectid="findCheck"parameterType="String"resultType="cn.js.ccit.pojo.Check">select*fromtb_checkwhereuserId=#{userId}andcheckTimebetween#{startDate}and#{endDate}</select>1.Mapper层签到记录接口:CheckMapper.java添加签到记录映射文件:CheckMapper.xml考勤查询设计延迟符2.Service层//根据用户Id、日期查询考勤信息publicListfindCheck(IntegeruserId,StringstartDate,StringendDate);//根据用户Id、日期查询考勤信息@OverridepublicListfindCheck(IntegeruserId,StringstartDate,StringendDate){returncheckMapper.findCheck(userId,startDate,endDate);}签到服务层接口:ICheckService.java签到服务层实现类:CheckService.java考勤查询设计延迟符2.Service层//增加考勤查询日志publicvoidaddFindCheckLog();//添加考勤查询的日志,并将此作为后置通知,切入到查询考勤信息的方法上@OverridepublicvoidaddFindCheckLog(){HttpSessionsession=request.getSession();//获取查询考勤时间StringcheckTime=(String)session.getAttribute("checkTime");//获取查询用户的IdIntegeruserId=(Integer)session.getAttribute("userId");//获取查询的IP地址Stringip=(String)session.getAttribute("ip");//设置查询考勤日志对象CheckLogcheckLog=newCheckLog();checkLog.setCheckTime(checkTime);checkLog.setUserId(userId);checkLog.setCheckIp(ip);//保存查询考勤信息到日志表中this.addCheckLog(checkLog);}考勤日志服务层接口:ICheckLogService.java考勤日志服务层实现类:CheckLogService.java考勤查询设计延迟符3.Controller控制层publicvoidfindCheck(HttpServletRequestrequest,HttpServletResponseresponse)throwsIOException,ServletException{//获取查询的条件IntegeruserId=Integer.parseInt(request.getParameter("userId"));StringstartDate=request.getParameter("startDate");StringendDate=request.getParameter("endDate");//将IP地址保存到会话中Stringip=request.getRemoteAddr();HttpSessionsession=request.getSession();session.setAttribute("ip",ip);session.setAttribute("userId",userId);//获取Spring容器中的Bean实例ServletContextsc=this.getServletContext();WebApplicationContextwac=WebApplicationContextUtils.getWebApplicationContext(sc);//获取签到日志服务对象,保存请求对象CheckLogServicecheckLogService=(CheckLogService)wac.getBean("checkLogService");checkLogService.setRequest(request);//获取代理后的CheckService对象,对查询考勤方法进行日志切入ICheckServicecheckService=(ICheckService)wac.getBean("checkService");//调用考勤服务的查询考勤信息方法ListcheckList=checkService.findCheck(userId,startDate,endDate);//如果查询到用户的考勤信息不为空
获取查询的考勤时间存到会话中if(checkList!=null){//查询考勤时间Datedate=newDate();DateFormatdateFormat=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss");StringcheckTime=""+dateFormat.format(date);session.setAttribute("checkTime",checkTime);}session.setAttribute("checkList",checkList);//跳转到结果显示页面response.sendRedirect("/webOA4/findcheckinfo.jsp");}控制层类:CheckController.java考勤查询设计延迟符4.视图层JSP<h3>考勤查询</h3><formaction="/webOA4/check">
用户Id:<inputtype="text"name="userId"/><br>
开始日期:<inputtype="text"name="startDate"/><br>
结束日期:<inputtype="text"name="endDate"/><br><inputtype="submit"value="查询"></form><h3align="center">考勤信息查询结果</h3><tableborder="1"align="center"width="50%"cellspacing="0"bordercolor="#000000"><tr><th>序号</th><th>用户Id</th><th>签到时间</th><th>签到描述</th></tr><%ListcheckList=(ArrayList)session.getAttribute("checkList");for(inti=0;i<checkList.size();i++){Checkcheck=(Check)checkList.get(i);%><tr><tdalign="center"><%=i+1%></td><tdalign="center"><%=check.getUserId()%></td><tdalign="center"><%=check.getCheckTime()%></td><tdalign="center"><%=check.getCheckDesc()%></td></tr><%}%></table>考勤查询界面:findcheck.jsp查询结果显示页面:findcheckinfo.jsp考勤查询设计延迟符5.Spring配置文件<!--使用基于XML配置的aop--><aop:config><!--配置切面--><aop:aspectid="checklog"ref="checkLogService"><!--配置切入点--><aop:pointcutid="findchecklog"expression="execution(*cn.js.ccit.service.CheckService.*(..))"/><!--配置通知--><aop:beforemethod="ad
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农村土地外包合同
- 分销软件外包合同
- 加装电梯外包合同
- 化工厂外包合同
- 医院水电工外包合同
- 厂房劳务外包合同
- 口播短视频外包合同
- 员工福利外包合同
- 商场运营外包合同
- 土地深松外包合同
- 2026年厦门市辅警招聘考试备考试题及答案详解
- 管道拆除安装工程施工方案
- 安徽合肥市市直广玉兰展印科技有限公司招聘笔试题库2026
- 中国临床戒烟指南(2026年版)
- 父母与子女协议书
- 2023年上海高中地理学业水平考试卷及答案
- 2026年危险化学品安全法理论考试试题
- 《数学连环画》课件2025-2026学年人教版二年级下册数学
- 2025年特岗教师招聘初中信息技术考试题
- 机构章程及内部规章制度
- 2026年医师定期考核人文试题库100道带答案(满分必刷)
评论
0/150
提交评论