最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java實現(xiàn)刪除某條信息并刷新當前頁操作

 更新時間:2020年11月16日 10:37:34   作者:我相信慢思考的力量  
這篇文章主要介紹了java實現(xiàn)刪除某條信息并刷新當前頁操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

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

//執(zhí)行的是刪除信息的操作
 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();
 } 
 
 }

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

##問題詳解

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

##思路詳解

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

##后臺代碼實現(xiàn)

#controller層#

@Api(description = "分組下的學(xué)生",value = "分組下的學(xué)生")
@RestController
@RequestMapping("studentGroup")
public class StudentGroupController {
 @Autowired
 private RestStudentGroupService restStudentGroupService;

 @RequestMapping(value = "deleteGroupStudent",method = RequestMethod.POST)
 @ApiOperation(value = "刪除分組中的學(xué)生",notes = "刪除分組中的學(xué)生")
 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層#

@Service
public 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("參數(shù)錯誤");
 responseObj.setSuccess(true);
 return responseObj;
 }
 ServiceResult<Long> serviceResult = dubboStudentGroupService .deleteCorpGroup(idList, groupId);
 if(!serviceResult.getSuccess()){
 throw new RuntimeException("分組下學(xué)生查詢失敗");
 }
 //應(yīng)前端要求加此dto,封裝傳給前臺的當前頁屬性
 CurrenPageDto currenPageDto=new CurrenPageDto();
 //初始化當前頁
 Integer currentPage = 1;
 //查出該分組id下的學(xué)生數(shù)量
 ServiceResult<Long> itemCountLongs = dubboStudentGroupService.getTotalCount(groupId);
 Long itemCountLong= itemCountLongs.getResult();
 Integer itemCount = itemCountLong!=null ? itemCountLong.intValue() : 0;
 //"查詢到學(xué)生數(shù)量:{},pageSize:{}", itemCount,pageSize;
 if(pageSize != null && pageSize != 0){
 //算出余數(shù)
 Integer temp = (pageNum*pageSize-itemCount)%pageSize;
 if(temp == 0){
 //余數(shù)為0的話就pageNum-1
 currentPage = (pageNum - 1) == 0 ? 1 : (pageNum -1) ;
 }else {
 //余數(shù)不為0則等于pageNum
 currentPage = pageNum;
 }
 currenPageDto.setPresentPage(currentPage);
 }
 ResponseObj responseObj = ResponseObj.SUCCESS();
 responseObj.setData(currenPageDto);
 return responseObj;
 }
}

#dubbo接口的service層#

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

#dubbo接口的serviceImpl層#

①://刪除分組下的學(xué)生
 @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("調(diào)用{}方法 異常", "[RestStudentGroupServiceImpl .deleteCorpGroup]");
 log.error("方法使用參數(shù):[idList:{},groupId:{}]", idList, groupId);
 log.error("異常信息:{}", e);
 result.setErrMessage("調(diào)用deleteCorpGroup方法異常,異常信息:" + e.getMessage());
 }

 return result;
 }
②://根據(jù)條件查詢對應(yīng)的條目總數(shù)
 @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("調(diào)用{}方法 異常", "[RestStudentGroupServiceImpl .getTotalCount]");
 log.error("方法使用參數(shù):[groupId:{}]", groupId);
 log.error("異常信息:{}", e);
 result.setErrMessage("調(diào)用getTotalCount方法異常,異常信息:" + e.getMessage());
 }
 return result;
 }

#dubbo接口的dao層#

①://刪除分組下的學(xué)生
 Long deleteCorpGroup(@Param(value = "idList") List<Long> idList,@Param(value = "groupId") Long groupId);
②://根據(jù)條件查詢對應(yīng)的條目總數(shù)
Long getFindCorpGroupDirectoryCount(@Param(value = "groupId") Long groupId);

#dubbo接口的sql#

①://刪除分組下的學(xué)生
 <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>
②://根據(jù)條件查詢對應(yīng)的條目總數(shù)
 <select id="getFindCorpGroupDirectoryCount" resultType="long">
 SELECT COUNT(1)
 FROM student_group 
 where group_id = #{groupId}
 </select>

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

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為學(xué)生表id
 */ 
 private Long id;

 /**
 * @描述:創(chuàng)建時間 
 * @字段:create_time DATETIME(19) 
 */ 
 private java.util.Date createTime;

 * @描述:創(chuàng)建人用戶名 
 * @字段:create_user_name VARCHAR(30) 
 */ 
 private String createUserName;

 /**
 * @描述:創(chuàng)建人用戶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類(學(xué)生類)#(get,set函數(shù)省略)

public class Student implements java.io.Serializable {
 /**
 * 
 */
 private static final long serialVersionUID = 1L;

 private Long id;
 private String name ;
 private Integer age;
 }

以上這篇java實現(xiàn)刪除某條信息并刷新當前頁操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot通過Filter實現(xiàn)整個項目接口的SQL注入攔截詳解

    SpringBoot通過Filter實現(xiàn)整個項目接口的SQL注入攔截詳解

    這篇文章主要介紹了SpringBoot通過Filter實現(xiàn)整個項目接口的SQL注入攔截詳解,SQL注入是比較常見的網(wǎng)絡(luò)攻擊方式之一,在客戶端在向服務(wù)器發(fā)送請求的時候,sql命令通過表單提交或者url字符串拼接傳遞到后臺持久層,最終達到欺騙服務(wù)器執(zhí)行惡意的SQL命令,需要的朋友可以參考下
    2023-12-12
  • 如何使用BigDecimal實現(xiàn)Java開發(fā)商業(yè)計算

    如何使用BigDecimal實現(xiàn)Java開發(fā)商業(yè)計算

    這篇文章主要介紹了如何使用BigDecimal實現(xiàn)Java開發(fā)商業(yè)計算,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2020-09-09
  • Java的接口調(diào)用時的權(quán)限驗證功能的實現(xiàn)

    Java的接口調(diào)用時的權(quán)限驗證功能的實現(xiàn)

    這篇文章主要介紹了Java的接口調(diào)用時的權(quán)限驗證功能的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2020-11-11
  • Java 數(shù)組差集實例代碼

    Java 數(shù)組差集實例代碼

    這篇文章主要介紹了Java 數(shù)組差集實例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2019-09-09
  • 關(guān)于微服務(wù)使用Dubbo設(shè)置的端口和server.port的區(qū)別

    關(guān)于微服務(wù)使用Dubbo設(shè)置的端口和server.port的區(qū)別

    這篇文章主要介紹了關(guān)于微服務(wù)使用Dubbo設(shè)置的端口和server.port的區(qū)別,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • java如何使用fastjson修改多層嵌套的Objectjson數(shù)據(jù)

    java如何使用fastjson修改多層嵌套的Objectjson數(shù)據(jù)

    這篇文章主要介紹了java如何使用fastjson修改多層嵌套的Objectjson數(shù)據(jù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 詳細講述Java中的對象轉(zhuǎn)型

    詳細講述Java中的對象轉(zhuǎn)型

    在本篇文章里我們給大家詳細分享了關(guān)于Java中的對象轉(zhuǎn)型的知識點內(nèi)容,有興趣的朋友們學(xué)習下。
    2018-10-10
  • java字符串與日期類型轉(zhuǎn)換的工具類

    java字符串與日期類型轉(zhuǎn)換的工具類

    這篇文章主要為大家詳細介紹了java字符串與日期類型轉(zhuǎn)換的工具類,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • java struts2框架簡介

    java struts2框架簡介

    本文主要介紹了java struts2框架的基礎(chǔ)知識。具有一定的參考價值,下面跟著小編一起來看下吧
    2017-01-01
  • Java里得到00:00:00格式的時分秒的Timestamp

    Java里得到00:00:00格式的時分秒的Timestamp

    Java里如何得到00:00:00格式的時分秒的Timestamp ,下面是具體的實現(xiàn)代碼,需要的朋友可以參考下。
    2009-09-09

最新評論

聊城市| 靖西县| 肥乡县| 廉江市| 丹江口市| 滁州市| 志丹县| 农安县| 平遥县| 阳西县| 安康市| 通江县| 梨树县| 祁阳县| 闽侯县| 晋中市| 龙海市| 雅江县| 长治县| 扶绥县| 花莲市| 商水县| 和平区| 长沙市| 云阳县| 福贡县| 修水县| 台中县| 瑞安市| 株洲县| 松阳县| 辽阳市| 洛宁县| 兴国县| 尤溪县| 宁城县| 临安市| 崇礼县| 报价| 西乌| 桐庐县|