电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

java實現刪除某條信息并刷新當前頁操作

瀏覽:73日期:2022-08-21 09:39:34

我就廢話不多說了,大家還是直接看代碼吧~

//執行的是刪除信息的操作 String a=request.getParameter('name'); a = URLEncoder.encode(a, 'ISO-8859-1'); String name = URLDecoder.decode(a, 'UTF-8'); String num=request.getParameter('num'); System.out.println('name:'+name+'num:'+num); String sql='delete from person_info where name=? and num=?'; String sz[]={name,num}; JdbcUtils.update(sql, sz); //刷新操作 String sqls='select * from person_info'; ResultSet rs=JdbcUtils.select(sqls, null); ArrayList<Person_info> list=new ArrayList<Person_info>(); try { while(rs.next()){ Person_info pi=new Person_info(rs.getString(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getString(5), rs.getString(6)); list.add(pi); } request.setAttribute('list', list); request.getRequestDispatcher('Personnel_definition.jsp').forward(request, response); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } }

java實現刪除某條信息并刷新當前頁操作

補充知識:關于分頁時怎么實現當本頁面最后一條記錄被刪除時,自動向上一個頁面跳轉的實現(java實現)

##問題詳解

在做批量刪除時,發現若批量刪除整頁時,會自動跳到第一頁首頁,而不是返回刪除當前頁的上一頁,不符合產品要求且使界面交互不好,給用戶帶來糟糕體驗。

##思路詳解

在controller層傳參時要考慮到不僅要傳入需要刪除的id集合,同時傳入pageSize,pageNum以及總條數集合的查詢條件(如:本示例會傳入groupId(分組id)),在刪除成功后初始化當前頁,先根據查詢條件查詢出總條數數量,在pageSize不等于null或為0的情況下。算出余數[(pageSize*pageNum-count)%pageSize ].若余數為0,則當前頁等于pageNum-1;若余數不為0,則當前頁=pageNum.將結果當前頁傳給前臺即可。

##后臺代碼實現

#controller層#

@Api(description = '分組下的學生',value = '分組下的學生')@RestController@RequestMapping('studentGroup')public class StudentGroupController { @Autowired private RestStudentGroupService restStudentGroupService; @RequestMapping(value = 'deleteGroupStudent',method = RequestMethod.POST) @ApiOperation(value = '刪除分組中的學生',notes = '刪除分組中的學生') public ResponseObj deleteGroupStudent(@RequestParam(value = 'groupId',required = true)Long groupId, @RequestParam(value = 'ids',required = true)String ids, @RequestParam(value = 'pageSize',required = false)Integer pagesize, @RequestParam(value = 'pageNum',required = false)Integer pageNum){ return restStudentGroupService.deleteGroupStudent(groupId,ids,pagesize,pageNum); } }

#service層#

@FeignClient(value = ServiceName.VALUE)public interface RestStudentGroupService { @RequestMapping(value = '/school/cloud/student/deleteGroupStudent',method = RequestMethod.POST) public ResponseObj deleteGroupStudent(@RequestParam(value = 'groupId')Long groupId, @RequestParam(value = 'ids')String ids, @RequestParam(value = 'pageSize')Integer pagesize, @RequestParam(value = 'pageNum')Integer pageNum); }

#serviceImpl層#

@Servicepublic class RestStudentGroupServiceImpl implements RestStudentGroupService { @Autowired private DubboStudentGroupService dubboStudentGroupService ; @Override public ResponseObj deleteGroupStudent(Long groupId,String ids,Integer pageSize,Integer pageNum) { List<Long> idList = TextUtils.split(ids); if(groupId == null || idList== null || idList.size() == 0){ ResponseObj responseObj = ResponseObj.ERROR('參數錯誤'); responseObj.setSuccess(true); return responseObj; } ServiceResult<Long> serviceResult = dubboStudentGroupService .deleteCorpGroup(idList, groupId); if(!serviceResult.getSuccess()){ throw new RuntimeException('分組下學生查詢失敗'); } //應前端要求加此dto,封裝傳給前臺的當前頁屬性 CurrenPageDto currenPageDto=new CurrenPageDto(); //初始化當前頁 Integer currentPage = 1; //查出該分組id下的學生數量 ServiceResult<Long> itemCountLongs = dubboStudentGroupService.getTotalCount(groupId); Long itemCountLong= itemCountLongs.getResult(); Integer itemCount = itemCountLong!=null ? itemCountLong.intValue() : 0; //'查詢到學生數量:{},pageSize:{}', itemCount,pageSize; if(pageSize != null && pageSize != 0){ //算出余數 Integer temp = (pageNum*pageSize-itemCount)%pageSize; if(temp == 0){ //余數為0的話就pageNum-1 currentPage = (pageNum - 1) == 0 ? 1 : (pageNum -1) ; }else { //余數不為0則等于pageNum currentPage = pageNum; } currenPageDto.setPresentPage(currentPage); } ResponseObj responseObj = ResponseObj.SUCCESS(); responseObj.setData(currenPageDto); return responseObj; }}

#dubbo接口的service層#

①://刪除分組下的學生ServiceResult<Long> deleteCorpGroup(List<Long> idList,Long groupId);②://根據條件查詢對應的條目總數ServiceResult<Long> getTotalCount(Long groupId);

#dubbo接口的serviceImpl層#

①://刪除分組下的學生 @Override public ServiceResult<Long> deleteCorpGroup(List<Long> idList, Long groupId) { ServiceResult<Long> result = new ServiceResult<>(); try { studentGroupDao.deleteCorpGroup(idList, groupId); } catch (Exception e) { log.error('調用{}方法 異常', '[RestStudentGroupServiceImpl .deleteCorpGroup]'); log.error('方法使用參數:[idList:{},groupId:{}]', idList, groupId); log.error('異常信息:{}', e); result.setErrMessage('調用deleteCorpGroup方法異常,異常信息:' + e.getMessage()); } return result; }②://根據條件查詢對應的條目總數 @Override public ServiceResult<Long> getTotalCount(Long groupId) { ServiceResult<Long> result = new ServiceResult<>(); try { long count = studentGroupDao.getFindCorpGroupDirectoryCount(groupId); result.setResult(count); } catch (Exception e) { log.error('調用{}方法 異常', '[RestStudentGroupServiceImpl .getTotalCount]'); log.error('方法使用參數:[groupId:{}]', groupId); log.error('異常信息:{}', e); result.setErrMessage('調用getTotalCount方法異常,異常信息:' + e.getMessage()); } return result; }

#dubbo接口的dao層#

①://刪除分組下的學生 Long deleteCorpGroup(@Param(value = 'idList') List<Long> idList,@Param(value = 'groupId') Long groupId);②://根據條件查詢對應的條目總數Long getFindCorpGroupDirectoryCount(@Param(value = 'groupId') Long groupId);

#dubbo接口的sql#

①://刪除分組下的學生 <delete id='deleteCorpGroup'> delete from student_group where group_id = #{groupId} and id in <foreach collection='idList' index='index' separator=',' item='id' open='(' close=')'> #{id} </foreach> </delete>②://根據條件查詢對應的條目總數 <select resultType='long'> SELECT COUNT(1) FROM student_group where group_id = #{groupId} </select>

#Entity類(學生分組類)#(get,set函數省略)

public class StudentGroup implements java.io.Serializable { /** * */ private static final long serialVersionUID = 1L; /** * @描述: * @字段:id BIGINT(19) */ private Long StudentGroupId; /** * @描述: * @字段:group_id BIGINT(19) */ private Long groupId; /** * @描述: * @字段:id BIGINT(19) * 此id為學生表id */ private Long id; /** * @描述:創建時間 * @字段:create_time DATETIME(19) */ private java.util.Date createTime; * @描述:創建人用戶名 * @字段:create_user_name VARCHAR(30) */ private String createUserName; /** * @描述:創建人用戶ID * @字段:create_user_id BIGINT(19) */ private Long createUserId; /** * @描述:更新時間 * @字段:update_time DATETIME(19) */ private java.util.Date updateTime; * @描述:更新人用戶名 * @字段:update_user_name VARCHAR(30) */ private String updateUserName; /** * @描述:更新人用戶ID * @字段:update_user_id BIGINT(19) */ private Long updateUserId; }

#Entity類(學生類)#(get,set函數省略)

public class Student implements java.io.Serializable { /** * */ private static final long serialVersionUID = 1L; private Long id; private String name ; private Integer age; }

以上這篇java實現刪除某條信息并刷新當前頁操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 跨境物流_美国卡派_中大件运输_尾程派送_海外仓一件代发 - 广州环至美供应链平台 | 螺杆真空泵_耐腐蚀螺杆真空泵_水环真空泵_真空机组_烟台真空泵-烟台斯凯威真空 | 北京翻译公司_同传翻译_字幕翻译_合同翻译_英语陪同翻译_影视翻译_翻译盖章-译铭信息 | 申江储气罐厂家,储气罐批发价格,储气罐规格-上海申江压力容器有限公司(厂) | 山东led显示屏,山东led全彩显示屏,山东LED小间距屏,临沂全彩电子屏-山东亚泰视讯传媒有限公司 | 合肥卓创建筑装饰,专业办公室装饰、商业空间装修与设计。 | 没斑啦-专业的祛斑美白嫩肤知识网站-去斑经验分享 | 武汉印刷厂-不干胶标签印刷厂-武汉不干胶印刷-武汉标签印刷厂-武汉标签制作 - 善进特种标签印刷厂 | 沟盖板_复合沟盖板厂_电力盖板_树脂雨水篦子-淄博拜斯特 | 挤出熔体泵_高温熔体泵_熔体出料泵_郑州海科熔体泵有限公司 | 钢骨架轻型板_膨石轻型板_钢骨架轻型板价格_恒道新材料 | 视频直播 -摄影摄像-视频拍摄-直播分发 | 大型果蔬切片机-水果冬瓜削皮机-洗菜机切菜机-肇庆市凤翔餐饮设备有限公司 | ETFE膜结构_PTFE膜结构_空间钢结构_膜结构_张拉膜_浙江萬豪空间结构集团有限公司 | 旗杆生产厂家_不锈钢锥形旗杆价格_铝合金电动旗杆-上海锥升金属科技有限公司 | 重庆LED显示屏_显示屏安装公司_重庆LED显示屏批发-彩光科技公司 重庆钣金加工厂家首页-专业定做监控电视墙_操作台 | RS系列电阻器,RK_RJ启动调整电阻器,RQ_RZ电阻器-上海永上电器有限公司 | 宁夏档案密集柜,智能密集柜,电动手摇密集柜-盛隆柜业宁夏档案密集柜厂家 | 防火板_饰面耐火板价格、厂家_品牌认准格林雅 | 免联考国际MBA_在职MBA报考条件/科目/排名-MBA信息网 | 铝箔袋,铝箔袋厂家,东莞铝箔袋,防静电铝箔袋,防静电屏蔽袋,防静电真空袋,真空袋-东莞铭晋让您的产品与众不同 | 考勤系统_人事考勤管理系统_本地部署BS考勤系统_考勤软件_天时考勤管理专家 | 精密模具加工制造 - 富东懿| 坏男孩影院-提供最新电影_动漫_综艺_电视剧_迅雷免费电影最新观看 | 外观设计_设备外观设计_外观设计公司_产品外观设计_机械设备外观设计_东莞工业设计公司-意品深蓝 | 在线钠离子分析仪-硅酸根离子浓度测定仪-油液水分测定仪价格-北京时代新维测控设备有限公司 | 半自动预灌装机,卡式瓶灌装机,注射器灌装机,给药器灌装机,大输液灌装机,西林瓶灌装机-长沙一星制药机械有限公司 | 政府回应:200块在义乌小巷能买到爱情吗?——揭秘打工族省钱约会的生存智慧 | 餐饮加盟网_特色餐饮连锁加盟店-餐饮加盟官网 | 专业的新乡振动筛厂家-振动筛品质保障-环保振动筛价格—新乡市德科筛分机械有限公司 | 浙江浩盛阀门有限公司 | 商标转让-商标注册-商标查询-软著专利服务平台 - 赣江万网 | KBX-220倾斜开关|KBW-220P/L跑偏开关|拉绳开关|DHJY-I隔爆打滑开关|溜槽堵塞开关|欠速开关|声光报警器-山东卓信有限公司 | 包装设计公司,产品包装设计|包装制作,包装盒定制厂家-汇包装【官方网站】 | 我爱古诗词_古诗词名句赏析学习平台 | 水平垂直燃烧试验仪-灼热丝试验仪-漏电起痕试验仪-针焰试验仪-塑料材料燃烧检测设备-IP防水试验机 | 天然鹅卵石滤料厂家-锰砂滤料-石英砂滤料-巩义东枫净水 | 中宏网-今日新闻-财经新闻| 专业生产动态配料系统_饲料配料系统_化肥配料系统等配料系统-郑州鑫晟重工机械有限公司 | 济南展厅设计施工_数字化展厅策划设计施工公司_山东锐尚文化传播有限公司 | NBA直播_NBA直播免费观看直播在线_NBA直播免费高清无插件在线观看-24直播网 |