자바 는 어떤 정 보 를 삭제 하고 현재 페이지 를 새로 고침 합 니 다.

긴 말 안 할 게 요.그냥 코드 보 세 요~

//           
 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();
 } 
 
 }

보충 지식:페이지 를 나 눌 때 이 페이지 의 마지막 기록 이 삭 제 될 때 자동 으로 이전 페이지 로 이동 하 는 실현(자바 실현)
문제
대량 삭 제 를 할 때 전체 페이지 를 대량으로 삭제 하면 자동 으로 첫 페이지 의 첫 페이지 로 넘 어 가 는 것 을 발견 합 니 다.현재 페이지 를 삭제 한 이전 페이지 로 돌아 가 는 것 이 아니 라 제품 의 요구 에 부합 되 지 않 고 인터페이스 의 상호작용 이 좋 지 않 아 사용자 에 게 나 쁜 체험 을 가 져 다 줍 니 다.
\#\#사고방식 상세 설명
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 층\#

@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("    ");
 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 id="getFindCorpGroupDirectoryCount" 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;
 }
이상 의 이 자바 는 어떤 정 보 를 삭제 하고 현재 페이지 를 새로 고침 하 는 작업 을 실현 하 는 것 이 바로 작은 편집 이 여러분 에 게 공유 하 는 모든 내용 입 니 다.여러분 에 게 참고 가 되 고 여러분 들 이 저 희 를 많이 지지 해 주시 기 바 랍 니 다.

좋은 웹페이지 즐겨찾기