(struts1)UsersAction.java

来源:互联网 发布:安卓编程工具手机版 编辑:程序博客网 时间:2024/05/16 11:58

package accp.struts.lxl.action;

 

import java.io.FileOutputStream;

import java.io.OutputStream;

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.action.DynaActionForm;

import org.apache.struts.actions.DispatchAction;

import org.apache.struts.upload.FormFile;

 

import accp.struts.lxl.biz.UsersBiz;

import accp.struts.lxl.com.MyUtil;

import accp.struts.lxl.pojo.Users;

 

public class UsersAction extends DispatchAction

{

public UsersBiz ubz=new UsersBiz();

public ActionForward doLogin(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) throws Exception 

{

DynaActionForm dform=(DynaActionForm)form;

Users user=(Users)dform.get("user");

 

Users valiUser=ubz.checkUserByNameAndPass(user);

if(null==valiUser) return mapping.findForward("login");

request.getSession().setAttribute("currentUser", valiUser);

return mapping.findForward("index");

//return doRead(mapping, form, request, response);

}

public ActionForward doRead(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) throws Exception 

{

List<Users> users=ubz.readAllUsers();

request.setAttribute("userlist", users);

System.out.println("进入doRead,保存用户集合");

return mapping.findForward("userlist");

}

/**

* 跳转到添加用户页面��

* @param mapping

* @param form

* @param request

* @param response

* @return

* @throws Exception

*/

public ActionForward toCreate(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) throws Exception 

{

request.setAttribute("hobbies", MyUtil.hobbies);

//密钥,保存一个令牌标识

saveToken(request);

System.out.println("密钥,保存一个令牌标识");

System.out.println("跳转到添加用户页面");

 

return mapping.findForward("createUser");

}

/**

* @param mapping

* @param form

* @param request

* @param response

* @return

* @throws Exception

*/

public ActionForward doCreate(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) throws Exception 

{

System.out.println("进入doCreate");

DynaActionForm dform=(DynaActionForm)form;

if(isTokenValid(request))

{

System.out.println("新密钥");

Users user=(Users)dform.get("user");

String [] userhobbies=dform.getStrings("userhobbies");

if(null!=userhobbies && userhobbies.length>0)

{

String hobby="";

for (String h : userhobbies) {

hobby+=h+",";

}

user.setHobby(hobby.substring(0,hobby.length()-1));

}

//获得客户端上传的文件

FormFile file=(FormFile)dform.get("userpic");

System.out.println("客户端上传的文件名:"+file.getFileName());

if(!"".equals(file.getFileName()))

{

//获得上传目录路径

String uploadPath=getServlet().getServletContext().getRealPath("/upload/");

System.out.println("上传目录路径"+uploadPath);

//获得上传文件后缀名

String extensionName=file.getFileName().substring(file.getFileName().lastIndexOf("."));

System.out.println("上传文件后缀名"+extensionName);

String fileFullName=uploadPath+"//"+ user.getLoginName()+extensionName;

System.out.println("完整文件路径名:"+fileFullName);

//用文件流来处理上传的文件

OutputStream fos=null;

try {

fos=new FileOutputStream(fileFullName);

//以字节方式往流中写东西

fos.write(file.getFileData());

System.out.println("以字节方式往流中写东西");

fos.flush();

} catch (RuntimeException e) {

// TODO 自动生成 catch 块

e.printStackTrace();

}finally

{

if(null!=fos) fos.close();

}

user.setPic(user.getLoginName()+extensionName);

System.out.println("保存图片名");

}

ubz.createUser(user);

//重置令牌

resetToken(request);

System.out.println("重置令牌reset");

}else

{

saveToken(request);

System.out.println("保存令牌save");

}

System.out.println("调doRead()");

return doRead(mapping, form, request, response);

}

}

原创粉丝点击