1. 관리자 삭제를 위한 저장 프로시저(SP_DELETE_ADMIN)을 만들어봅시다.

CREATE PROCEDURE SP_DELETE_ADMIN (i_id INT)
BEGIN
    DELETE FROM TB_ADMIN WHERE id = i_id;
END


mysql> CALL SP_LIST_ADMIN();
+-----+---------+-----------+---------+
| sno | userid  | password  | nick    |
+-----+---------+-----------+---------+
|   1 | testid1 | passwd101 | nick101 |
|   2 | testid2 | passwd2   | nick2   |
|   3 | testid3 | passwd3   | nick3   |
|   4 | testid4 | passwd4   | nick4   |
|   5 | testid5 | passwd5   | nick502 |
|   9 | testid6 | passwd106 | nick601 |
+-----+---------+-----------+---------+

 
mysql> CALL SP_DELETE_ADMIN(9);

 
mysql> CALL SP_LIST_ADMIN();
+-----+---------+-----------+---------+
| sno | userid  | password  | nick    |
+-----+---------+-----------+---------+
|   1 | testid1 | passwd101 | nick101 |
|   2 | testid2 | passwd2   | nick2   |
|   3 | testid3 | passwd3   | nick3   |
|   4 | testid4 | passwd4   | nick4   |
|   5 | testid5 | passwd5   | nick502 |
+-----+---------+-----------+---------+

 

2. src/main/resources/mybatis-mapper/AdminMapper.xml에 다음을 추가합니다.

...
    <delete id="deleteAdmin">
        CALL SP_DELETE_ADMIN(#{id})
    </delete>
...

 

3. src/main/java/com/tutorial/xyz/mapper/AdminMapper.java 파일에 다음을 추가한다. 위의 XML파일을 사용하지 않으려면, @Delete 어노테이션의 주석을 풀어주면 됩니다.

...
  // @Delete("CALL SP_DELETE_ADMIN(#{id})")
  int deleteAdmin(@Param("id") Long id);
...

 

4. src/main/java/com/tutorial/xyz/controller/mgmt/AdminController.java 파일에 다음을 추가한다. 

...
  // 관리자 삭제
  @GetMapping("/admin/delete/{id}")
  public String delete(@PathVariable("id") Long id) {
    mapper.deleteAdmin(id);
    return "redirect:/mgmt/admin";
  }
...

 

5. 이제, 관리자를 삭제해보자. 잘 되었기를 바란다.~!


6. 여기까지 하면, 기본적인 CRUD 기능을 모두 작성할 수 있게 됩니다. *^^*

 


+ Recent posts