论坛首页 Java版 Spring

spring怎么对struts的ActionForm实现注入啊???

浏览 190 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (2) :: 隐藏帖 (0)
作者 正文
时间:2008-05-11
spring怎么对struts的ActionForm实现注入啊???
那个大哥帮下忙嘛,我实在是整不来了啊.
LookuserForm代码
package org.shan.student.form;

import java.util.List;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.shan.student.service.IDaoService;
import org.shan.student.util.Bean;

public class LookuserForm extends ActionForm {

	private static final long serialVersionUID = 1L;

	protected IDaoService daoService;
	private String userName;
	private String userClass;
	private String passWord;
	private String id;

	public void setDaoService(IDaoService daoService) {
		this.daoService = daoService;
	}

	public ActionErrors validate(ActionMapping mapping,
			HttpServletRequest request) {
		ActionErrors errors = new ActionErrors();
		if (null == id || "".equals(id))
			errors.add("id", new ActionMessage("error.id"));
		else if (null == userName || "".equals(userName))
			errors.add("userName", new ActionMessage("error.username"));
		else if (null == passWord || "".equals(passWord))
			errors.add("passWord", new ActionMessage("error.password"));
		return errors;
	}

	public void reset(ActionMapping mapping, HttpServletRequest request) {
		String action = request.getParameter("action");
		Object id = request.getParameter("id");
		if (null != action) {
			Object o = daoService.getDataById("org.shan.student.vo.UserInfo",
					id);
			if (action.equals("del")) {
				daoService.delete(o);
			} else {
				Bean bean = new Bean();
				this.id = (String) bean.invoke("id", o);
				this.userName = (String) bean.invoke("userName", o);
				this.passWord = (String) bean.invoke("passWord", o);
				this.userClass = (String) bean.invoke("userClass", o);
				request.getSession().setAttribute("edit", "edit");
				return;
			}
		}
		List<?> list = daoService.getData("from UserInfo");
		request.getSession().setAttribute("list", list);
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getUserClass() {
		return userClass;
	}

	public void setUserClass(String userClass) {
		this.userClass = userClass;
	}

	public String getPassWord() {
		return passWord;
	}

	public void setPassWord(String passWord) {
		this.passWord = passWord;
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}
}

struts配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http://struts.apache.org/dtds/struts-config_1_3.dtd">

<struts-config>
	<form-beans>
		<form-bean name="loginForm"
			type="org.shan.student.form.LoginForm" />
		<form-bean name="editPassWordForm"
			type="org.shan.student.form.EditPassWordForm" />
		<form-bean name="addUserForm"
			type="org.shan.student.form.AddUserForm" />
		<form-bean name="lookuserForm"
			type="org.springframework.web.struts.SpringBindingActionForm" />
	</form-beans>

	<global-exceptions />
	<global-forwards />
	<action-mappings>
		<action attribute="loginForm" input="/login.jsp"
			name="loginForm" path="/login" scope="request"
			type="org.springframework.web.struts.DelegatingActionProxy">
			<forward name="student" path="/student.jsp" />
			<forward name="admin" path="/admin.jsp" />
		</action>
		<action attribute="editPassWordForm" input="/EditPassWord.jsp"
			name="editPassWordForm" path="/editPassWord" scope="request"
			type="org.springframework.web.struts.DelegatingActionProxy">
			<forward name="EditPassWord" path="/EditPassWord.jsp"
				redirect="true" />
		</action>
		<action attribute="addUserForm" input="/addUser.jsp"
			name="addUserForm" path="/addUser" scope="request"
			type="org.springframework.web.struts.DelegatingActionProxy">
			<forward name="addUser" path="/addUser.jsp" redirect="true" />
		</action>
		<action attribute="lookuserForm" input="/lookuser.jsp"
			name="lookuserForm" path="/lookuser" scope="request"
			type="org.springframework.web.struts.DelegatingActionProxy" />
	</action-mappings>

	<message-resources
		parameter="org.shan.student.action.ApplicationResources" />
	<plug-in
		className="org.springframework.web.struts.ContextLoaderPlugIn">
		<set-property property="contextConfigLocation"
			value="/WEB-INF/applicationContext.xml" />
	</plug-in>
</struts-config>



spring配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>
	<bean id="datasource"
		class="org.springframework.jdbc.datasource.DriverManagerDataSource">
		<property name="driverClassName">
			<value>net.sourceforge.jtds.jdbc.Driver</value>
		</property>
		<property name="url">
			<value>jdbc:jtds:sqlserver://localhost:1433/Student</value>
		</property>
		<property name="username">
			<value>sa</value>
		</property>
	</bean>
	<bean id="SessionFactory"
		class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
		<property name="dataSource">
			<ref bean="datasource" />
		</property>
		<property name="hibernateProperties">
			<props>
				<prop key="hibernate.show_sql">true</prop>
			</props>
		</property>
		<property name="mappingResources">
			<list>
				<value>org/shan/student/vo/Accounts.hbm.xml</value>
				<value>org/shan/student/vo/UserInfo.hbm.xml</value>
			</list>
		</property>
	</bean>
	<bean id="BaseDao" class="org.shan.student.dao.BaseDao"
		abstract="true">
		<property name="sessionFactory">
			<ref bean="SessionFactory" />
		</property>
	</bean>
	<bean id="DaoBean" class="org.shan.student.dao.impl.DaoBean"
		parent="BaseDao">
	</bean>
	<bean id="DaoService"
		class="org.shan.student.service.impl.DaoService">
		<property name="daoBean">
			<ref bean="DaoBean" />
		</property>
	</bean>
	<bean id="login" name="/login"
		class="org.shan.student.action.LoginAction">
		<property name="daoService">
			<ref bean="DaoService" />
		</property>
	</bean>
	<bean id="editPassWord" name="/editPassWord"
		class="org.shan.student.action.EditPassWordAction">
		<property name="daoService">
			<ref bean="DaoService" />
		</property>
	</bean>
	<bean id="addUser" name="/addUser"
		class="org.shan.student.action.AddUserAction">
		<property name="daoService">
			<ref bean="DaoService" />
		</property>
	</bean>
	<bean id="lookuser" name="/lookuser"
		class="org.shan.student.action.LookuserAction">
		<property name="daoService">
			<ref bean="DaoService" />
		</property>
	</bean>
	<bean id="lookuserForm" name="lookuserForm"
		class="org.shan.student.form.LookuserForm">
		<property name="daoService">
			<ref bean="DaoService" />
		</property>
	</bean>
</beans>
   
时间:2008-05-12
将业务代码移到Action中。
   
0 请登录后投票
时间:2008-05-12
但是我要在struts页面加载的时候就初始化一些内容啊,action中好象没有类似reset的方法啊....
   
0 请登录后投票
时间:2008-05-12
换struts2吧
   
0 请登录后投票
论坛首页 Java版 Spring

跳转论坛:
JavaEye推荐
    快速回复 引用上一条消息 (Alt+S)