📄 tr_trainclassservlet.java
字号:
package com.galaxy.controller;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.galaxy.dao.TrainClassDAO;
import com.galaxy.vo.TrainClassVO;
import com.galaxy.util.PageHelp;
public class TR_TrainClassServlet extends HttpServlet {
public TR_TrainClassServlet() {
super();
}
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("gb2312");
response.setCharacterEncoding("gb2312");
String opraParam = request.getParameter("opraParam");
String condition = request.getParameter("condition");
String errorMsg = ""; // 用于在页面上输出错误信息
PrintWriter out = response.getWriter();
int pageSize = 5; // 设置单页显示条数
String currentPage = "1"; // 当前显示的页面号
TrainClassDAO tcdao = new TrainClassDAO();
PageHelp pagehelp = new PageHelp(); // 实例化PageHelp对象pageHelp
// list分支显示培训类别列表
if ("list".equals(opraParam)) {
pagehelp = tcdao.getTrainClassList(condition, pageSize, Integer
.parseInt(request.getParameter("currentPage")));
// 转发至列表页面
request.setAttribute("pagehelp", pagehelp);
request.setAttribute("currentPage", request
.getParameter("currentPage"));
request.getRequestDispatcher("TrainClassList.jsp").forward(request,
response);
}
// query分支处理查询请求
else if ("query".equals(opraParam)) {
String cdstr = "";
// 获取列表页面传来的查询条件
String[] ckey = request.getParameterValues("keyparam");
String[] cvalue = request.getParameterValues("keyvalue");
for (int i = 0; i < ckey.length; i++) {
// 判断查询条件是否为空,如果用户没有在查询框中输入任何条件,则查出培训类别表中所有记录
// 查询均为模糊查询
if (!"".equals(cvalue[i]))
cdstr += " and " + ckey[i] + " like '%" + cvalue[i] + "%' ";
pagehelp = tcdao.getTrainClassList(cdstr, pageSize, 1);
// 转发至列表页面
request.setAttribute("pagehelp", pagehelp);
request.getRequestDispatcher("TrainClassList.jsp").forward(
request, response);
}
}
// 当用户在菜单栏中点击培训类别维护时,跳入trainclass分支。显示培训类别列表页面
else if ("trainclass".equals(opraParam)) {
pagehelp = tcdao.getTrainClassList("", pageSize, 1);
/** 通过userdb对象调用的getUserList方法等到要显示的内容,方法中的参数分别为查询条件,每页显示记录数,当前页码 */
request.setAttribute("pagehelp", pagehelp);
request.getRequestDispatcher("TrainClassList.jsp").forward(request,
response);
}
// insert分支处理列表页面的添加请求,转向添加页面
else if ("add".equals(opraParam)) {
request.getRequestDispatcher("TrainClassInsert.jsp").forward(
request, response);
}
// 用户在添加培训类别页面点击提交后,add分支进行处理,写入数据库
if (opraParam.equals("insert")) {
int i = 0;
try {
// 获取页面输入的培训类别名称,查询数据库,看是否已存在相同的名称
// 如果已存在,则提示用户重新输入。不存在,名字可用,将其写入数据库
String tc_name = request.getParameter("name");
TrainClassDAO tcDao = new TrainClassDAO();
TrainClassVO tcVo = tcDao.get(tc_name);
if (tcVo != null) {
errorMsg = "输入的类别名称已存在,请重新输入!";
out.println(errorMsg);
}
else {
TrainClassVO tcVo2 = new TrainClassVO();
tcVo2.setTcName(request.getParameter("name"));
tcVo2.setTcTag(request.getParameter("tag"));
i = tcDao.add(tcVo2);
if (i > 0) {// 注册成功
// 显示添加成功后的培训类别列表页面
PageHelp pageHelp = tcDao.getTrainClassList("",
pageSize, 1);
/** 通过userdb对象调用的getUserList方法等到要显示的内容,方法中的参数分别为查询条件,每页显示记录数,当前页码 */
request.setAttribute("pagehelp", pageHelp);
request.getRequestDispatcher("TrainClassList.jsp")
.forward(request, response);
} else {
errorMsg = "保存失败,请重试!!";
request.setAttribute("errorMsg", errorMsg);
request.getRequestDispatcher("Insert_failure.jsp")
.forward(request, response);
}
// }
}
} catch (Exception e) {
e.printStackTrace();
}
}
// 用户在列表页面点击删除按钮,进入delete分支处理
if (opraParam.equals("delete")) {// 如果要删除信息
try {
TrainClassDAO tcDao = new TrainClassDAO();
String tcIds[] = request.getParameterValues("ch1");// 得到选中的checkbox的值,可以进行批量删除。
for (int m = 0; m < tcIds.length; m++) {
tcDao.delete(Integer.parseInt(tcIds[m]));// 删除所有选中的纪录
}
// 显示删除后的列表记录
pagehelp = tcDao.getTrainClassList("", pageSize, Integer
.parseInt(request.getParameter("currentPage")));
request.setAttribute("pagehelp", pagehelp);
// 转发至列表页面
request.getRequestDispatcher("/training/TrainClassList.jsp")
.forward(request, response);
} catch (Throwable t) {
// 写异常日志
getServletContext().log(t.getMessage());
}
}
// 用户在列表页面点击修改按钮后,detail分支进行处理,将请求转向更新页面。
if (opraParam.equals("detail")) {
try {
TrainClassDAO tcDao = new TrainClassDAO();
TrainClassVO tcVo = tcDao.get(Long.parseLong(request
.getParameter("ch1")));
request.setAttribute("currentPage", request
.getParameter("currentPage"));
request.setAttribute("tcInfo", tcVo);
request.getRequestDispatcher("TrainClassUpdate.jsp").forward(
request, response);
} catch (Exception e) {
// 写异常日志
System.out.println(e);
}
}
// 用户在修改页面点击提交,进入update分支处理,将更改后结果写入数据库
if (opraParam.equals("update")) {
TrainClassDAO tcDao = new TrainClassDAO();
TrainClassVO tcVo = new TrainClassVO();
// 获取页面输入的培训类别名称,查询数据库,看是否已存在相同的名称
// 如果已存在,则提示用户重新输入。不存在,名字可用,将其写入数据库
// String tc_name = request.getParameter("name");
// tcVo = tcDao.get(tc_name);
//
// if (tcVo != null) {
// errorMsg = "输入的类别名称已存在或你没有作出任何修改,请重新输入!";
// out.println(errorMsg);
// }
//
// else {
tcVo = tcDao.get(Long.parseLong(request.getParameter("tc_id")));
//tcVo.setTcName(request.getParameter("name"));
tcVo.setTcTag(request.getParameter("tag"));
// 写入数据库
int i = tcDao.update(tcVo);
if (i > 0) {// 修改成功
request.setAttribute("tcVo", tcVo);
try {
pagehelp = tcDao.getTrainClassList("", pageSize,
Integer.parseInt(request
.getParameter("currentPage")));
// 转发至列表页面
request.setAttribute("pagehelp", pagehelp);
request.setAttribute("currentPage", request
.getParameter("currentPage"));
request.getRequestDispatcher(
"/training/TrainClassList.jsp").forward(
request, response);
} catch (Exception e) {
// 写异常日志
System.out.println("in the update :" + e);
}
} else {
errorMsg = "修改失败,请重试!!";
out.println(errorMsg);
}
//}
}
}
public void init() throws ServletException {
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -