1. boardcontents - javascript
function delCheck(bnum){
let conf = confirm("삭제하시겠습니까?");
if(conf == true){
location.href = "delete?b_num=" + bnum;
}
}
2. boardcontroller
@GetMapping("delete")
public String boardDelete(Integer b_num, HttpSession session, RedirectAttributes rttr) {
log.info("boardDelete()");
String view = bServ.boardDelete(b_num, session, rttr);
return view;
}
3. boardservice
public String boardDelete(Integer b_num, HttpSession session, RedirectAttributes rttr) {
log.info("boardDelete()");
String view = null;
String msg = null;
try {
bDao.deleteReply(b_num);
deleteFiles(b_num, session);
bDao.deleteFiles(b_num);
bDao.deleteBoard(b_num);
view = "redirect:list?pageNum=1";
msg = "삭제 성공";
}catch (Exception e){
e.printStackTrace();
view = "redirect:contentes?b_num=" + b_num;
msg = "삭제 실패";
}
rttr.addFlashAttribute("msg", msg);
return view;
}
4. boarddao - boarddao.xml
// 댓글 목록 삭제 메소드 선언
void deleteReply(Integer b_num);
void deleteReply(Integer b_num);
<delete id="deleteReply" parameterType="Integer">
DELETE FROM reply WHERE r_bnum=#{b_num}
</delete>
DELETE FROM reply WHERE r_bnum=#{b_num}
</delete>
// 파일 목록 삭제 메소드 선언
void deleteFiles(Integer b_num);
void deleteFiles(Integer b_num);
<delete id="deleteFiles" parameterType="Integer">
DELETE FROM boardfile WHERE bf_bnum=#{b_num}
</delete>
DELETE FROM boardfile WHERE bf_bnum=#{b_num}
</delete>
// 게시글 삭제 메소드 선언
void deleteBoard(Integer b_num);
void deleteBoard(Integer b_num);
<delete id="deleteBoard" parameterType="Integer">
DELETE FROM board WHERE b_num=#{b_num}
</delete>
DELETE FROM board WHERE b_num=#{b_num}
</delete>
5. boardservice
private void deleteFiles(Integer b_num, HttpSession session) throws Exception {
log.info("deleteFiles()");
List<String> sList = bDao.selectSysname(b_num);
String realpath = session.getServletContext().getRealPath("/");
realpath += "upload/";
for(String s : sList){
File file = new File(realpath + s);
if(file.exists()){
file.delete();
}
}
}
6. boarddao - boarddao.xml
// 파일의 sysname 목록 가져오는 메소드 선언
List<String> selectSysname(Integer b_num);
List<String> selectSysname(Integer b_num);
<select id="selectSysname" resultType="String" parameterType="Integer">
SELECT bf_sysname FROM boardfile WHERE bf_bnum=#{b_num}
</select>
SELECT bf_sysname FROM boardfile WHERE bf_bnum=#{b_num}
</select>
7. controller 연결
String view = bServ.boardDelete(b_num, session, rttr);
'공부기록' 카테고리의 다른 글
6월 20일 (2) 라즈베이파이 - 이론, LED 연결 (0) | 2023.06.20 |
---|---|
5월 25일 Spring - 게시글 수정 처리 (0) | 2023.05.25 |
5월 24일 Spring - 게시판 다운로드, 댓글 처리 (0) | 2023.05.24 |
5월 23일 Spring - 파일 처리, 홈페이지 게시물 상세 (0) | 2023.05.23 |
5월 22일 Spring - 홈페이지 게시글 (0) | 2023.05.22 |