Struts 1.3.8 学习笔记(五)
package com.coderdream.action;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Vector;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.Action;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import com.coderdream.db.StudentDao;import com.coderdream.db.UserDao;import com.coderdream.form.LoginForm;import com.coderdream.vo.StudentView;import com.coderdream.vo.UserView;public class LoginAction extends Action {/** * 处理客户端请求 */@Overridepublic ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,HttpServletResponse response) throws Exception {// 得到客户的的提交数据LoginForm lf = (LoginForm) form;UserDao userDao = new UserDao();String userName = lf.getUserName();String password = lf.getPassword();UserView userView = new UserView();userView.setUserName(userName);userView.setPassword(password);int result = userDao.queryUser(userName, password);// 业务调用if (1 <= result) {StudentDao studentDao = new StudentDao();List<StudentView> studentList = studentDao.quertAllStudent();request.setAttribute("studentList", studentList);request.setAttribute("userView", userView);request.setAttribute("userName", userName);// 存放String的MapMap<String, String> stringMap = new HashMap<String, String>();stringMap.put("Jan", "January");stringMap.put("Feb", "February");stringMap.put("Mar", "March");stringMap.put("Apr", "April");request.setAttribute("stringMap", stringMap);// 存放String和String数组的MapMap<String, String[]> stringMap2 = new HashMap<String, String[]>();String vegetables[] = { "pepper", "cucumber" };String fruits[] = { "apple", "orange", "banana", "cherry", "watermelon" };String flowers[] = { "chrysanthemum", "rose" };String trees[] = { "willow" };stringMap2.put("Vegetables", vegetables);stringMap2.put("Fruits", fruits);stringMap2.put("Flowers", flowers);stringMap2.put("Trees", trees);request.setAttribute("stringMap2", stringMap2);//Vector<String> animals = new Vector<String>();animals.addElement("Dog");animals.addElement("Cat");animals.addElement("Bird");animals.addElement("Chick");request.setAttribute("animals", animals);// 存放String的ListList<String> stringList = new ArrayList<String>();stringList.add("abc");stringList.add("edf");stringList.add("ghi");stringList.add("jkl");request.setAttribute("stringList", stringList);// 用户名密码验证成功,跳转到成功页面return mapping.findForward("success");} else {// 用户名密码错误,跳转到失败页面return mapping.findForward("failing");}}}
?
success.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%><%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%><%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html:html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>登录成功</title></head><body>用户登录成功!<br> 对象方式:<logic:present name="userView" scope="request"><bean:write name="userView" property="userName" /></logic:present><br><br> 属性方式:<bean:write name="userName" scope="request" /><hr><logic:iterate id="element" indexId="ind" name="stringMap"><bean:write name="ind" /><bean:write name="element" property="key" /><bean:write name="element" property="value" /><br></logic:iterate><hr><logic:iterate id="element" indexId="ind" name="stringMap2"><bean:write name="ind" /><bean:write name="element" property="key" /><br><logic:iterate id="elementValue" name="element" property="value"length="3" offset="1">------<bean:write name="elementValue" /><br></logic:iterate></logic:iterate><hr><logic:iterate id="element" name="animals"><bean:write name="element" /><br></logic:iterate><hr><logic:iterate id="element" indexId="index" name="animals" offset="1"length="2"><bean:write name="index" />.<bean:write name="element" /><br></logic:iterate><hr><logic:iterate id="element" indexId="index" name="stringList"><bean:write name="index" />.<bean:write name="element" /><br></logic:iterate><hr><logic:iterate id="studentView" indexId="index" name="studentList"><bean:write name="studentView" property="no" />.<bean:write name="studentView" property="name" />.<bean:write name="studentView" property="sex" />.<bean:write name="studentView" property="age" />.<bean:write name="studentView" property="dept" /><br></logic:iterate></body></html:html>
?
代码说明
这里主要看一下List<Bean>的代码,很多书上都没有!
?
运行结果
?
另外附上孙卫琴的第二章的Demo源代码。