一下是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 强,害虫。所给予的帮助。