建立兩個 Action:
userAction.java:處理新增前置資料準備、修改前置準備、刪除、查看所有使用者user1Action.java:處理實際新增使用者、修改使用者 (操作資料庫)package mystruts;
import org.apache.struts.action.*;
import javax.servlet.http.*;
import mystruts.*;
import java.util.*;
import java.sql.*;
import ConnectionPool.*;
public class userAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception {
userdao dao = new userdao();
String action;
if (request.getParameter("action") == null || request.getParameter("action").equals("")) {
action = "add";
} else {
action = request.getParameter("action");
}
if (action.equals("add")) {
request.setAttribute("dep", this.getDep());
return mapping.findForward("add");
}
if (action.equals("edit")) {
String key = request.getParameter("key");
request.setAttribute("dep", this.getDep());
request.setAttribute("userActionForm", dao.getUser(key));
return mapping.findForward("add");
}
if (action.equals("del")) {
String key = request.getParameter("key");
dao.delUser(key);
return mapping.findForward("delview");
}
if (action.equals("view")) {
request.setAttribute("rs", dao.getAlluser());
return mapping.findForward("view");
}
return null;
}
// 取得部門下拉選單資料
public Collection getDep() {
getDbConnection db = new getDbConnection();
Connection con = db.getCon();
ResultSet rs = null;
PreparedStatement ps = null;
ArrayList rslist = new ArrayList();
String sql = "select * from mydep";
try {
ps = con.prepareStatement(sql);
rs = ps.executeQuery();
while (rs.next()) {
HashMap rscol = new HashMap();
rscol.put("id", rs.getString("dep_id"));
rscol.put("name1", rs.getString("dep_name"));
rslist.add(rscol);
}
} catch (SQLException e) {
System.out.println("sql error");
} finally {
try { con.close(); db.d_close(); } catch (Exception e) {}
}
return rslist;
}
}
package mystruts;
import org.apache.struts.action.*;
import javax.servlet.http.*;
public class user1Action extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception {
userActionForm uaf = (userActionForm) form;
if (uaf.getAction().equals("add")) {
new userdao().userInsert(uaf);
return mapping.findForward("view");
}
if (uaf.getAction().equals("edit")) {
new userdao().userUpdate(uaf);
return mapping.findForward("view");
}
return null;
}
}
下一步將建立 JSP 視圖與 Struts 配置檔完成整個應用。