ssm框架异常处理 (只是一个webservice没有页面的后台)

pujitan978 2019-03-01 12:24:38
框架是SSM框架,例外异常的时候,想把异常log输出到Log中,然后程序能继续处理,不退出。
我的实现是用 HandlerExceptionResolver 的resolveException函数统一处理异常,把例外异常输出到log里.然后return null.
但是,如果数据库查询发生异常,后面处理就不能继续了。

例如,一个循环里,要操作数据库(查询,如果查询异常,想得到NULL对象或者空List,根据null或者是空,本次循环不处理,
其他循环继续),不想某次操作失败,后面的循环就不执行了,该怎么实现呢。

public ModelAndView resolveException(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) {
logger.error("Exception " + e.getMessage(),e);
return null;
}
...全文
117 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhiluan7665 2019-03-19
  • 打赏
  • 举报
回复
在service 层加try catch捕获异常,异常时如果是list返回一个list.size()是0,如果不是返回NULL。在controler层判断返回值 NULL list.size()==0 决定是否退出处理,和继续处理
大隐藏于寺 2019-03-01
  • 打赏
  • 举报
回复
可以把你认为不影响后续操作的代码使用try ... catch ... 包裹起来,不向外抛出异常,你自己处理这些异常,比如在catch中使用continue;继续后续的循环处理.
1711A 六组项目简介(仓库管理系统) 我们做的是一个仓库管理系统,它包含:菜单管理、基础信息、入库管理、出库管理、仓库管理、供应商管理、客户管理、财务报表 这八个模块包含注册登陆,注册用的是短信提醒,注册成功后会往邮箱发送一个提示信息 菜单管理: 1用户管理 2角色管理 用户管理展示的是用户列表信息,可以给用户赋角色,还有一个锁定按钮,点击锁定 用户状态变为锁定状态,返回登陆的时候提示此用记已被锁定 角色管理展示的是角色列表信息,可以给角色赋角色,并且回显此用户已拥有的角色信息 基础信息:1公司信息 2货品分类 3货品信息 4人员信息 我主要负责的是基础信息模块,这个模块又分成了公司信息,货品分类,货品信息,人员信息 我认为难点是一个条查,这个条查涉及到联动,需要两个下拉列表框和一个可编辑文本列表框 第一个下拉列表为从数据库中查询出来的表的字段,是一个动态的根据表中的字段而显示最后边的 文本列表框是一个联动的给一个改变事件,根据第一个字段不同会显示出不同的数据,中间一个为 连接条件,给每个文本框一个name值,通过queryparam传值到后台,在后台定义三个参数 接收,根据改变事件选择第一个后第三个发生改变,把第一个的name传到后台从而拿到第三个的值 我还负责了redis集成spring并缓存树 redis的使用主要涉及到两个注解的使用 1.Cache able:将方法的返回值在集合中查询出来之后缓存在redis中,之后的查询就不走数据库了 直接从redis中查询 2.CacheEvict:根据key删除redis中对应的数据,保证数据库在变更的时候达到刷新的效果 入库管理: 1货品入库登记 2鲜花展示(调的接口) 我在项目中主要负责入库管理,仓库租赁优惠管理,还有就是一个掉接口展示页面。在入库管理这个模块,又划分为入库登记(其中做了一个八表的查询和新增,还有一些个小业务,比如:新增时间时,不填写会默认为系统当时时间,编码和入库单号会自动生成,根据应付金额,已付金额可以自动计算出未付金额,根据单价和数量可以自动计算出金额,还有条件查询,和根据条件正序,倒序进行排序),今日入库明细(跟入库管理类似的一些功能,主要是可以查询出当日的一个入库订单明细)。仓库的租赁(根据客户不同的需求我们把仓库划分为大型仓库,中小型仓库,小型仓库,在客户租赁不同型号的仓库个数,我们会给出相应的优惠政策,比如:租赁两个以上五个以内会给出九折优惠,五个以上给出八八折优惠的政策),鲜花的展示(这个主要 是用到了webservice技术来调用了一组的鲜花展示接口,关于webservice的技术我还在练习阶段,并没有很深的研究,我在使用的过程中也遇到了一点小问题,不过最终还是被克服了,1.先是加入webservice配置文件,然后在pom.xml中引入两个关于cxf的jar包,在web.xml配置文件中引入关于cxf两组标签2.然后在cmd窗口反向生成实体类和包结构等等一系列的操作)。以上就是我在项目中作出的一些小功能。我会加倍努力尽我所能的在以后的项目中作出更大的贡献 出库管理: 1货品出库登记 2期间出库查询 3期间销售利润统计 仓库管理: 1仓库信息 2仓库当前内存 3货品当前内存 仓库信息,仓库当前内存,货品当前内存,记录了仓库、货品的一些基本信息 供应商管理: 1供应商信息 2供应商付款登记 3供应商欠款登记 供应商模块 主要分为三个部分 分别是 供应商信息 供应商信息这个这个模块就是写供应商的相关信息 这是一个三表的 类别和开户银行为附表 普通的功能呢就是增删改查 这个模块呢有一个难点 就是这个条件查询 这个条件查询是个联动查询 第一个下拉显示的是表里字段名称 第二个下拉是小于大于等符号 第三个就是个局第一个下拉框的信息显示出来表里已 有的信息可进行条件查询 付供商款登记 这个模块记录的是每个供应商的交易信息 这个模块有一个亮点就是新增的时候 这个日期呢是不可选中的 新增的信息默认是当前 时间 还有就是这个 点击工商名称文本框 会弹出来供每个应商的名称和联系人及手机号 选中一条直接在对应的框中显示出来 这个金额也是自动计算的 供商款登记 这个模块就是记录一下供应商付款登记 付供商款新增时就会自动新增一条 删除页会跟着 删除 就是多个记录 客户管理: 1客户管理 2客户欠款统计 3客户期间明细 4收客户款登记 1.客户管理:展示客户信息。 2.客户期间明细:客户、出库、客户欠款表三表联查,根据出库时间展示客户信息 3.客户付款登记:登记客户付款及欠款信息,自动计算客户已付款、收款以及未付款 4.客户欠款登记:展示客户欠款付款以及收款金额 5.运用webservice调用天气接口 财务报表: 1今日人员销售统计 根据今日人员销售金额做的一个术状图报表 配置:项目用的是maven+ssm框架+httpclient+webservice+mongodb+redis缓存技术,需要配置相应的配置文件,才可以运行此文件
进去之后会触发一个页面刷新的方法,之后在里面填写寄存产品的信息 其中,会员信息和产品信息都是从数据库中查询出来的,可以进行自动赋值,还有寄存单号是自动生成的随机数,之后金额的value也是在后台自动计算出来的。 吧台提取:负责人:(王涛) 首先,它会弹出一个dialog弹框,里面有一个文本框,里面填写的是寄存单号,可以根据寄存单号进行调价查询,之后,通过将查到的数据存放到session中,然后又会弹出一个dialog弹框 里面回显的寄存产品的信息,其中 他的值是在后台存入的session中取出来的 之后我们可以进行寄存产品的提取操作,这时后台会自动获取当前时间,来作为提取时间进行赋值。 会员信息查询中的送花功能;负责人:(王涛) 首先 只有在顾客的会员账号充值金额满一万元后,我们会赠送他一束花,这时,该会员信息后的送花按钮才可以使用,点击送花后,会弹出一个dialog弹框,里面的信息,是根据webservice调用了第一组发布的接口,其中我们用到了,webservice里面的框架技术 cxf生成一个沟通接口的桥梁,然后新建一个沟通桥梁的类,再通过配置相关的配置文件及jar包就可以调用出接口中的数据,之后选中一条数据,并输入收件人的邮箱 ,点击发送后,我们会将收件人邮箱和所送花朵的花语这两个参数进行打包,之后通过javamail技术,给所填收件人的邮箱发送一封邮件。 【发送邮件需要其专门的jar包】 用户体验度调查:负责人:(王涛) 首先,这个功能使用的也是javamail技术,我们在页面中将所有的文本框以及富文本放到了一个form表单当中,因为我们新建了一个专门用来存放发送邮件所需信息的实体类所以在方法接收参数时 只用接受一个实体类,其中,它的参数包括:(收件人邮箱,发件人邮箱,标题,内容){这个功能一般可以用于优惠活动的发送以及市场调查等等。。。} 【发送邮件需要其专门的jar包;还有要注意富文本编辑器和easyui js文件的兼容性问题】 业务管理: 负责人:(温家祥) 1:当前订单 ①客户可在当前页面点单进行商品的选购及选购数量 同时自动生成帐单号和获取系统当前时间 ②在客户选完商品后可进行结账或删除订单 1.会员结账:先通过会员卡号查询会员信息并赋值给结账页面 同时展示当前会员所点的所有商品及具体信息 通过输入 套餐费自动计算金额 并完成对会员金额的修改 结账完成之后 实时更新订单信息 并记录账单信息展示在前台 2.非会员结账:展示当前客户所点的所有商品和具体信息,通过手动输入套餐费自动计算应收金额 在输入实收金额自动 计算找零 确认结账之后实时更新订单信息 并记录账单信息展示在前台 3.删除订单:通过获取当前的id 传到后台进行删除 我的网盘: 用户登陆时通过io流自动新建一个存储空间如果存在则打开 ①在后台查询数据在前台展示对应信息 !!!图片在前台通过循环在后台获取的数据进行展示 ②对网盘里的东西进行增删改查 总结:整体上看起来没有难度没有什么技术点 但逻辑思维紧密且对数据的传输跨度大 对数据库的修改较为复杂 采购进货负责人:(杨强) 客户可以直接新增,也可以点击以有信息进行回显新增 点击供商编号和项目编号可以选择辅助信息 输入单价,数量,实付金额进行计算 新增YqT_cg,YqT_cgc,YqT_th,YqT_thc 修改YqT_goods,YqT_supplier 采购退货 客户可以直接退货,也可以点击以有信息进行回显退货 点击采购编号和项目编号可以选择辅助信息 输入单价,数量,进行计算 修改yqt_thc,YqT_th,t_cgc,t_goods,t_supplier 库存明细 增删改查t_goods; 我的网盘 uploadify上传图片 springmvc配置multipartResolver config.properties里配置: filereal=D:\\tomcat2\\apache-tomcat8090\\webapps\\img realPath=http://192.168.3.5:8090/img/ js里导uploadify文件 配置D:\tomcat2\apache-tomcat8090\bin并启动 yq/util导UploadFile.java jsp页面在body中引入js文件 会员管理 负责人(韩苏雨) 会员管理模块 1、会员基本信息:主要是注册一些会员信息,然后用到了easyUI的表格,新增会员时,主要是给会员卡号做出了一些判断,判断了会员卡号不能为空,不能重复,对于日期,是获取当前系统时间。 2、会员卡充值:首先对会员信息做了一个简单的查询,然后点击会员卡号充值,弹出一个easyUI的弹框,然后,给会员卡一个点击事件,点击会员卡号,继续弹出一个弹框,是对会员卡号的查询,选择会员卡号,然后会对相应的姓名,余额等等进行回显,日期是获取当前系统时间,然后点击充值金额,然后让充值金额和余额相加,付给现有余额。 3、会员卡挂失/解挂:选择将要挂失或者解挂的会员卡号、会员姓名、身份 证号,对其进行挂失或解挂,从数据库查询。 4、会员卡查询:是查询会员卡明细情况,在查询窗口中选择要查询的会员卡号、会员姓名,单击"确定"即可查询出该会员卡的情况。查询出来的信息不允许用户自行更改、添加和删除 5、其余一些注册、权限、以及一些前台页面等等。。。。。 财务管理负责负责人(陈帅任) 我做的是一个财务管理模块, 财务管理模块有以下功能 1.会员结账营业额 2.非会员结账营业额 3.商品采购付款单 4.商品采购付款统计 5.套餐结账营业额 6.单点结账营业额 7.比较额度 8.redis缓存 我的1.会员结账营业额2.非会员结账营业额4.商品采购付款统计7.比较额度这四个模块使用的是ECharts可视化图表ECharts 提供了常规的折线图、柱状图、散点图、饼图、K线图,用于统计的盒形图,用于地理数据可视化的地图、热力图、线图,用于关系数据可视化的关系图、treemap、旭日图,多维数据可视化的平行坐标,还有用于 BI 的漏斗图,仪表盘,并且支持图与图之间的混搭。 基础信息负责人(高亚锟) 员工信息 员工表 查询 新增 删除 员工的编号使用随机数 供货商信息 供货商表 查询 新增 删除 同样的随机数 但是和业务模块相关联 需要把不需要展示的东西也要完成新增以便业务模块的需要 仓库信息 仓库表 查询 新增 删除 商品类别 商品类别表 查询 新增 删除 商品信息 这个表是3表联查新增修改都是需要弹框 只回显id 弹出来然后显示出另一个表的所有数据 然后进行赋值 赋值进去的必须是disable框 disable框中数据和仓库信息表的数据是正确的 但是不能修改 只能修改标的id 根据id再重新进行复制 最后在新增或者是修改 统计查询模块负责人(张炫林) 统一使用easyui框架下的组件保证页面的协调性 统计查询进入页面页面展示分页功能 条件查询功能(下拉式选择查询模式,查询项目) 查询模式为下拉动态获取必选与查询项目对应比如:时间有<>名字没有 查询项目下拉动态 取消筛选按功能 Mongodb 短信HttpClient
1.鲜花展示以及用户模块:分别针对消费者,店长,总经理等不同角色进行不同页面,与库存表相关联 (1)针对消费者展示花的文字信息,以及图片,并展示购买按钮,选择分店进行下单。 (2)针对店长角色,在花的展示页面显示新增、修改、下架按钮,针对下架的商品店长有权限在待上架中操作鲜花上架。 (3)针对总经理,只展示鲜花展示页面,不显示任何操作。 (4)数据库查询出来的数据返回前台,将鲜花名称,花语,价格使用foreach循环放入div,展示到前台页面。(5)使用c:if标签判断登录用户角色,展示角色对应按钮。 (6)通过修改鲜花状态的字段来实现鲜花上下架功能。 (7)vip购买,显示折扣并显示折后价,普通用户没有。 (8)店长对本店客户的信息维护,总经理对所有店的客户的信息维护。 2.分店模块:与订单表,员工表相关联 (1)针对分店进行增删该查。 (2)在新增分店时指定分店店长,指定人员是从员工表中查出的非店长员工, 指定后要关联新增的分店Id并且要更改该员工对应的角色表。 (3)更改分店店长,指定的人员是从当前的分店中找出的,并且在指定新店长后,需要将原店长的角色指定回普通员工,这些涉及4表的更改。 3.员工以及前台页面模块:分别关联用户表,分店表(1)针对员工进行的增删改查。 (2)总经理登录可以看到所有分店的员工,分店店长登录只能看到自己店面的员工。 (3)可以调动员工到不同的分店,可以针对员工进行请假,请假的同时,工作天数会少一天,还有一个开除员工的选项。 (4)加入httpclient调用天气的接口,使用了H5和easyui来美化前台的皮肤。 4.库存管理以及前台页面模块:分别关联订单表,分店表,员工表,角色表,鲜花表 (1)不同角色登录可以看到不同的库存,总经理登录可以看到所有分店所有花材的库存,而分店店长登录只能看到本店花材的库存。(2)店长登录可以针对鲜花表增加的鲜花进行库存的新增。 (3)对外开放鲜花的webservice接口,添加时间控件的小部件。 (4)Bug的查找以及页面的美化。 5.订单以及javamail、POI模块:分别关联分店表,库存表,员工表,用户表,顾客表,供应商表,花材表,分为供应商订单和顾客订单 (1)顾客订单,顾客新增时可以新增鲜花订单,通过分店以及花材Id定位到库存,顾客可以进行订单的修改和退货。 (2)店长登录看到顾客订单后,确认发货顾客订单就不可以修改,同时库存也会相应减少。 (3)店长登录可以新增供应商订单,同时可以修改和退货。 (4)供应商登录可以看到订单,发货后相应库存会增加。 (5)顾客订单新增时,会判断用户是否为VIP来确定订单金额,并且会针对分店库存进行订单数量限定。 (6)POI报表打印以及javaMail发送邮件功能。 6.数据分析模块:关联库存表,分店表,订单表,员工表,用户表,角色表 (1)店长登录时,看到的所有数据,库存,销售金额,销售数量都是以本店的花朵为基础进行的查询。 (2)经理登录时,看到的所有数据是以分店为基础进行的查询。 7.供应商以及mongoDB模块:关联了供应商表,用户表,角色表 (1)进行普通的增删该查,条件查询。(1)进行普通的增删该查,条件查询。 (2)在spring中集合mongoDB,通过AOP切点切入mongoDB。 (3)针对log记录进行查询,可以查询正常以及异常的日志状态,以及时间区间,名字条件查询。 8.登陆和注册模块:关联了用户表,角色表,顾客表,员工表,供应商表 (1)注册时会选择需要注册的角色,供应商注册时会需要验证邮箱。 (2)任何角色注册时,都会进后台判断真实信息是否可以匹配,可以匹配才能注册。
资源下载链接为: https://pan.quark.cn/s/00cceecb854d 本项目基于 Eclipse 开发环境,采用 JDK1.7 编译,搭配 MySQL 和 MongoDB 数据库,以 Tomcat 服务器运行。它由两大系统、四大接口、八大模块构成,依据用户身份呈现不同功能菜单,融合了前后台系统。后台运用 SSM 框架,前台借助 EasyUI、Ajax、Jquery 等技术,其中 MySQL 存储用户及后台数据,MongoDB 记录 Aop 日志。Easyui 等技术用于前台旅游信息展示、订单操作及页面美化,后台则处理旅游线路、景点、主题、导游等业务以及订单和新闻资讯,实现交互。 登录注册方面,登录页面运用 Easyui 美化,设置验证码登录保障安全,风格简洁清新。注册页面结合 HTML5 和 webservice 接口,页面炫酷,用户填写手机验证码注册,确保信息安全。 项目分两大系统,管理员系统拥有最高权限,可分配角色权限,根据用户登录次数给予折扣,长期未登录用户会被拉黑。旅游景点管理涵盖景点、线路管理及美景展示,线路管理关联众多模块,美景展示利用 HTML5 视频标签介绍项目。旅游项目管理包含五大项目,涉及增删改查和富文本编辑,关联线路及订单管理。导游管理包含基本信息、带团申请等四部分。订单管理是核心,分票务、景点等四类订单管理,关联复杂,需后台确认订单,退票也需管理员确认。门票管理关联订单完成后的票数变化。新闻资讯管理调用新闻接口。统计报表管理运用 echarts 技术,展示柱形和扇形统计图。还有网盘、鲜花、日志等小模块,网盘可批量上传图片,鲜花服务调用接口,日志管理用 MongoDB 和 Aop 记录。 用户系统有六个模块,旅游景点管理展示景点、路线等,可下单联系客服。旅游项目管理供用户查看线路下单。新闻资讯与管理员端相同。订单管理需后台确认后用户

51,402

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧