目录
1. dao层,写删除日志类别的方法;
我们在diaryTypeDao里面写一个删除日志类别的方法;
//日志类别删除
public int diaryTypeDelete(Connection con, String diaryTypeId) throws Exception{
String sql="delete form t_diaryType where diaryTypeId=?";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1,diaryTypeId);
return pstmt.executeUpdate();
}
此外,我们还需要在diaryDao里面写一个方法,用来判断日志类别下是否有日志;
若日志类别下存在日志,则我们不能删除该日志类别!
//判断日志类别下是否有日志
public boolean existDiaryWithTypeId(Connection con,String typeId) throws Exception{
String sql="select * from t_diary where typeId=?";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1,typeId);
ResultSet rs=pstmt.executeQuery();
if(rs.next()){
return true;
}else{
return false;
}
}
2. web层,调用删除日志类别的方法;
在diaryTypeServlet里面我们调用删除日志的方法;
//删除日志类别的方法
private void diaryTypeDelete(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
String diaryTypeId=request.getParameter("diaryTypeId");
Connection con=null;
try {
dbUtil.getCon();
if(diaryDao.existDiaryWithTypeId(con,diaryTypeId)){
request.setAttribute("error","该日志类别下有日志,不能删除!");
}else{
diaryTypeDao.diaryTypeDelete(con,diaryTypeId);
}
//删除成功,跳转到日志列表页面
request.getRequestDispatcher("diaryType?action=list").forward(request, response);
} catch (Exception e) {
e.printStackTrace();
} finally{
try {
dbUtil.closeCon(con);
} catch (Exception e) {
e.printStackTrace();
}
}
}
3.页面上我们添加删除的链接;
这里我们在diaryTypeList.jsp页面上找到删除的按钮,并添加一下删除的链接;
<button class="btn btn-primary btn-danger" type="button" onclick="diaryTypeDelete(${diaryType.diaryTypeId })">删除</button>
这里我们加一下删除判断;
<script type="text/javascript">
function diaryTypeDelete(diaryTypeId){
if(confirm("您确定要删除这个日志类别吗?")){
window.location="diaryType?action=delete&diaryTypeId="+diaryTypeId;
}
}
</script>
还要加上显示错误信息;
<%--显示错误信息--%>
<div align="center"><font color="red">${error }</font></div>