public class ProjectAddAction extends Action { InputStream istream;
public ActionForward execute(ActionMapping mapping, ActionForm actionform, HttpServletRequest request, HttpServletResponse reponse) throws Exception { String v = request.getParameter("v");//如果v有值且为1,则表示是显示该页面,否则表示是在该页面中点击了保存按钮 ProjectAddForm paf = (ProjectAddForm) actionform;//强制转换actionform ManagerDao md = new ManagerDao();//经理Dao类 ProjectDao pd = new ProjectDao();//项目Dao类 System.out.println("v="+v); if (v!=null&&v.equals("1")) {//如果是显示页面则跳转到projectadd.jsp页面 List l = md.queryName();//查询经理名称和id,该方法将返回一个list列表 paf.setManagerlist(l);//将该列表存入Actionform中 return mapping.findForward("add");//跳转到projectadd.jsp } else { String dir = servlet.getServletContext().getRealPath("/photo");//图片将被提交到该目录中 //------------ Project p = new Project();//新建实体类 p.setPcycle(paf.getPcycle());//从formbean中取值存入实体类中 p.setPintro(paf.getPintro()); p.setPmanager(paf.getPmanager()); p.setPmoney(paf.getPmoney()); p.setPname(paf.getPname()); p.setPstudent(paf.getPstudent()); // ---从目录中取得照片 FormFile file = paf.getFile(); String filename = file.getFileName(); istream = file.getInputStream(); String path = dir + "//" + filename; OutputStream ostream = new FileOutputStream(path); int bytesRead = 0; byte[] buffer = new byte[8192]; while ((bytesRead = istream.read(buffer, 0, 8192)) != -1) { ostream.write(buffer, 0, bytesRead); } byte[] ph = pd.insertPhoto(path);// p.setPpicture(ph);//将图片的字节流插入实体类中 file.destroy(); istream.close(); ostream.close(); pd.insert(p);//将实体类通过projectDao类插入数据库 return mapping.findForward("list");//跳转回projectlist.do既projectlist.jsp }
}}
