一下是Struts的说明:
这次学习的阶段最大时间都放在数据库和Struts的配置上。最后在将这个框架完全整合完毕,虽然还有很多功能没完成,但是还是在学习中。
还是拿一个项目中的一个功能来说明。
建立Struts时候最好使用Myeclipse自带的生成,本人最早全手动以至于最后遇到很多配置缺少的问题,Struts最简单就是由From与Action组成,From在Struts2里已经不使用了但是我用的是Struts1.3虽然土 ,但是土也土的用法凑合的用了。
<!-- pay --> <action attribute="payForm" name="payForm" path="/pay" scope="request" type="com.pepmanagex.struts.action.PayAction" parameter="method"> <set-property property="cancellable" value="true" /> <forward name="showpay" path="/addpay.jsp"/> <forward name="updatepay" path="/updatapay.jsp"/> </action>
<form-beans> <form-bean name="payForm" type="com.pepmanagex.struts.form.PayForm"></form-bean> </form-beans>
配置文件 如果使用可视化界面操作的话这2个配置能自动出来,最关键的就是在path和forward的说明上 forward的name在action的里进行跳转。这个方法等下看例子就能明白。
这样在JSP页面上
<th> <html:link action="/pay?method=update&id=${pay.id}">修改</html:link> </th> <th> <html:link action="/pay?method=delete&id=${pay.id}">删除</html:link> </th>
操作Action后就能直接跳转页面别在Action上说明
import javax.servlet.http.HttpServletRequest; import org.apache.struts.action.ActionErrors; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; public class PayForm extends ActionForm { private Integer payid; private Integer paynum; private Integer number; private String paytime; private Integer empid; 。。。。。。。。。。。。。
import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.actions.DispatchAction; import com.pepmanagex.model.User; import com.pepmanagex.services.imp.IUsersManager; import com.pepmanagex.struts.form.UserForm; /** * MyEclipse Struts * Creation date: 11-18-2009 * * XDoclet definition: * @struts.action path="/user" name="userForm" input="/textuser.jsp" scope="request" validate="true" */ /** * MyEclipse Struts Creation date: 10-27-2009 * * XDoclet definition: * * @struts.action validate="true" */ public class UserAction extends DispatchAction { /* * Generated Methods */ private IUsersManager usersManager; public IUsersManager getUsersManager() { return usersManager; } public void setUsersManager(IUsersManager usersManager) { this.usersManager = usersManager; } /** * * @param mapping * @param form * @param request * @param response * @return */ public ActionForward list(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { // TODO Auto-generated method stub List list = usersManager.getUser(new User()); request.setAttribute("user", list); return mapping.findForward("showusers"); } /** * * @param mapping * @param form * @param request * @param response * @return list */ public ActionForward save(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { // TODO Auto-generated method stub UserForm usersForm = (UserForm) form; User user = new User(); String username = usersForm.getUsername(); String password = usersForm.getPassword(); String birthday=usersForm.getBirthday(); String email=usersForm.getEmail(); String address=usersForm.getAddress(); String passwordquestion=usersForm.getPasswordquestion(); String passwordanswer=usersForm.getPasswordanswer(); String sex=usersForm.getSex(); String hometome=usersForm.getHometome(); user.setUsername(username); user.setPassword(password); user.setBirthday(birthday); user.setEmail(email); user.setAddress(address); user.setPasswordquestion(passwordquestion); user.setPasswordanswer(passwordanswer); user.setSex(sex); user.setHometome(hometome); // System.out.println(user.getUsername()+"@"+user.getPassword()); usersManager.saveUser(user); return list(mapping, form, request, response); } /** * * @param mapping * @param form * @param request * @param response * @return list */ public ActionForward delete(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { // TODO Auto-generated method stub String id = request.getParameter("id"); Integer userid = Integer.parseInt(id); usersManager.deleteUser(userid); return list(mapping, form, request, response); } /** * * @param mapping * @param form * @param request * @param response * @return mapping */ public ActionForward update(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { // TODO Auto-generated method stub String id = request.getParameter("id"); Integer userid = Integer.parseInt(id); User user = usersManager.getUser(userid); //设置的user供JSP页面的name调用 name存放的是bean信息 request.setAttribute("user", user); return mapping.findForward("updateuser"); } /** * * @param mapping * @param form * @param request * @param response * @return list */ public ActionForward saveUpdate(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { // TODO Auto-generated method stub UserForm usersForm = (UserForm) form; String id = request.getParameter("id"); Integer userid = Integer.parseInt(id); User user = usersManager.getUser(userid); user.setId(userid); user.setUsername(usersForm.getUsername()); user.setPassword(usersForm.getPassword()); usersManager.saveUser(user); usersManager.deleteUser(userid); return list(mapping, form, request, response); } // public ActionForward execute(ActionMapping mapping, ActionForm form, // HttpServletRequest request, HttpServletResponse response) { // UserForm userForm = (UserForm) form;// TODO Auto-generated method stub // return null; // } }
完成操作。
<logic:iterate id="users" name="user"> <tr> <td> <bean:write name="users" property="id" /> </td> <td> <bean:write name="users" property="username" /> </td> <td> </logic:iterate>
这样就能将库里的数据显示出来之前说明了关于LIST放回的对象
public ActionForward list(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { // TODO Auto-generated method stub List list = usersManager.getUser(new User()); request.setAttribute("user", list); return mapping.findForward("showusers"); }
request.setAttribute("user", list);
获取的值全部放“user” 和供JSP页面传值。
还能使用
<logic:present name="user">数据不存在
对数据进行判断。
这次的项目的小总结就到这。 特别感谢be that 霖 ,be that 强,害虫。所给予的帮助。