반응형
목차
화면에서 체크박스에 체크된 데이터 중 회원번호를 담아서 서버로 전달, delete query에서 IN절로 처리
view
function deleteData() {
if (confirm("삭제 하시겠습니까?")) {
//선택된 row 배열
var selectedRows = [];
//table의 td제일 앞에 checkbox란 id를 가진 엘리먼트에서 회원번호 가져옴
$("input[id='checkbox']:checked").each(function () {
var rowData = {
'num': $(this).closest('tr').find('#num').text(), //회원번호
}
selectedRows.push(rowData);
});
$.ajax({
url: '/info/delete.do',
type: 'POST',
dataType: 'json',
data: JSON.stringify(selectedRows),
contentType: 'application/json',
success: function (response) {
if (response.code === '1') {
console.log('Success:', response);
alert("삭제 성공 했습니다.");
}
},
error: function (error) {
console.error('Error:', error);
}
});
}
}
controller
혹은 RestController로 만들어서 해도 된다.
@PostMapping("/info/delete.do")
public ResponseEntity delete(ModelMap model, @RequestBody List<UserVO> paramList) throws Exception {
ModelAndView mav = new ModelAndView();
mav.setViewName("jsonView");
return userService.delete(paramList);
}
service
public ResponseEntity delete(List<userVO> paramList) throws Exception{
//resultMap
Map<String, Object> resultMap = new HashMap<>();
try {
userMapper.delete(paramList);
resultMap.put("code", "1");
return new ResponseEntity<>(resultMap, HttpStatus.OK);
} catch (Exception e) {
resultMap.put("code", "2");
LogUtil.print("Exception", e.toString());
return new ResponseEntity<>(resultMap, HttpStatus.BAD_REQUEST);
}
}
mapper
void delete(List<UserVO> paramList);
xml
<delete id="delete" parameterType="java.util.List">
DELETE FROM USER_INFO
WHERE USER_NO IN
<foreach collection="list" item="item" open="(" separator="," close=")">
#{item.num}
</foreach>
</delete>
결과예시
DELETE FROM USER_INFO
WHERE USER_NO IN ('1', '2', '3')
;
개인 스터디 기록을 메모하는 공간이라 틀린점이 있을 수 있습니다.
틀린 점 있을 경우 댓글 부탁드립니다.
반응형
'IT > development' 카테고리의 다른 글
[spring] jUnit test 시 vm 옵션 전달 (feat. maven) (64) | 2024.01.21 |
---|---|
[jQuery] 공통으로 선택자 처리 (60) | 2024.01.21 |
[JavaScript] selectbox 동적 표시 (59) | 2024.01.21 |
[jQuery] 전체 체크박스 체크 (61) | 2024.01.21 |
[spring] spring excel download 모듈화 ver 2 (45) | 2024.01.14 |