userupdateaction.java

来自「使用J2EE Struts开发的房地产信息咨询系统」· Java 代码 · 共 94 行

JAVA
94
字号
/**
 * 处理用户修改自身资料的Action Bean
 * UserUpdateAction.java
 * @author usr
 */

package building;

import javax.sql.*;
import javax.servlet.http.*;
import javax.servlet.ServletContext;
import org.apache.struts.action.*;

public final class UserUpdateAction extends Action
{
	public ActionForward execute(
			ActionMapping mapping,
			ActionForm form,
			HttpServletRequest request,
			HttpServletResponse response)
	throws Exception
	{
		DynaActionForm userForm = (DynaActionForm)form;
		
		String userName;
		String trueName = (String)userForm.get("truename");
		String sex = (String)userForm.get("sex");
		String birth = (String)userForm.get("birth");
		String address = (String)userForm.get("address");
		String tel = (String)userForm.get("tel");
		String email = (String)userForm.get("email");
		
		//
		trueName = CharSet.GBK_ISO(trueName);
		sex = CharSet.GBK_ISO(sex);
		birth = CharSet.GBK_ISO(birth);
		address = CharSet.GBK_ISO(address);
		tel = CharSet.GBK_ISO(tel);
		email = CharSet.GBK_ISO(email);
		
		//
		HttpSession session = request.getSession(true);
		userName = (String)session.getAttribute(Constants.LOGIN_USERNAME_KEY);
		
		//
		Users user = new Users();
		user.setUserName(userName);
		user.setTrueName(trueName);
		user.setSex(sex);
		user.setBirth(birth);
		user.setAddress(address);
		user.setTel(tel);
		user.setEmail(email);
		
		//
		ServletContext context = servlet.getServletContext();
		DataSource dataSource = (DataSource)context.getAttribute(Constants.DATASOURCE_KEY);
		DB db = new DB(dataSource);
		//
		String PageForward = null;
		ActionMessages errors = null;
		
		//
		if (Users.ifExist(db,userName))
		{
			//存在此用户
			if ( user.updateInfo(db) )
			{
				//修改成功
				PageForward = "toUserUpdateOK";
				session.setAttribute(Constants.USER_INFO_KEY,user);
			}//End of if
			else
			{
				//修改失败
				errors.add(ActionMessages.GLOBAL_MESSAGE,
						new ActionMessage("errors.userUpdateFail"));
				if (!errors.isEmpty())
				{
					saveErrors(request,errors);
				}//End of if
				
				PageForward = "toWrong";
			}//End of else
		}//End of if
		
		//
		db.close();
		
		return(mapping.findForward(PageForward));
	}//End of execute
	
}//End of class UserUpdateAction

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?