| public void load() { // String id = request.getParameter("id"); String actiontype = "save"; String style=request.getParameter("style"); if (id != null) { Xinxi xinxi = (Xinxi) DALBase.load("xinxi", "where id=" + id); if (xinxi != null) { request.setAttribute("xinxi", xinxi); } actiontype = "update"; } request.setAttribute("id", id); request.setAttribute("actiontype", actiontype); try { request.getRequestDispatcher("xinxiadd.jsp").forward(request,response); } catch (ServletException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } /****************************************************** *********************** 数据绑定内部支持********************* *******************************************************/ public void binding() { String filter = ""; // int pageindex = 1; int pagesize = 10; String title=request.getParameter("title"); String lanmuid=request.getParameter("lanmuid"); // 获取当前分页 if(title!=null) filter="where title like '%"+title+"%'"; else { filter=" where 1=1 "; } if(lanmuid!=null&&lanmuid!="") filter+=" and lanmuid="+lanmuid; System.out.println("filter="+filter); String currentpageindex = request.getParameter("currentpageindex"); // 当前页面尺寸 String currentpagesize = request.getParameter("pagesize"); // 设置当前页 if (currentpageindex != null) pageindex = new Integer(currentpageindex); // 设置当前页尺寸 if (currentpagesize != null) pagesize = new Integer(currentpagesize); List<Xinxi> listxinxi = DALBase.getPageEnity("xinxi", filter, pageindex, pagesize); int recordscount = DALBase.getRecordCount("xinxi", filter == null ? ": filter); request.setAttribute("listxinxi", listxinxi); PagerMetal pm = new PagerMetal(recordscount); // 设置尺寸 pm.setPagesize(pagesize); // 设置当前显示页 pm.setCurpageindex(pageindex); // 设置分页信息 request.setAttribute("pagermetal", pm); // 分发请求参数 dispatchParams(request, response); try { request.getRequestDispatcher("/admin/xinximanager.jsp").forward( request, response); } catch (ServletException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }解释每一行
时间: 2023-07-23 18:50:20 浏览: 92
这段代码是一个Java类中的两个方法,load()和binding()。
load()方法的作用是加载一个名为"xinxiadd.jsp"的页面,并在加载页面之前,根据请求参数中的id来判断是执行新增还是修改操作。如果id不为空,则表示执行修改操作,会从数据库中加载id对应的数据,并将数据设置为request的属性,然后设置请求参数actiontype为"update"。如果id为空,则表示执行新增操作,请求参数actiontype为"save"。最后使用request的getRequestDispatcher()方法来将请求转发到xinxiadd.jsp页面。
binding()方法的作用是进行数据绑定操作。首先获取请求参数title和lanmuid,根据这两个参数来组合过滤条件filter。然后获取请求参数currentpageindex和currentpagesize,来设置当前页和每页显示的数据条数。接着调用DALBase.getPageEnity()方法来获取符合过滤条件的数据列表listxinxi,并调用DALBase.getRecordCount()方法来获取总记录数recordscount。然后创建一个PagerMetal对象pm,用于设置分页信息,并将数据列表和分页信息设置为request的属性。最后使用getRequestDispatcher()方法将请求转发到admin/xinximanager.jsp页面。
相关问题
public void update() { String forwardurl = request.getParameter("forwardurl"); String id = request.getParameter("id"); if (id == null) return; Album album = (Album) DALBase.load(Album.class, new Integer(id)); if (album == null) return; String name = request.getParameter("name"); String des = request.getParameter("des"); String xtype = request.getParameter("xtype"); String privilege = request.getParameter("privilege"); String pubren = request.getParameter("pubren"); String pubtime = request.getParameter("pubtime"); String tupian = request.getParameter("tupian"); SimpleDateFormat sdfalbum = new SimpleDateFormat("yyyy-MM-dd"); album.setName(name); album.setDes(des); album.setXtype(xtype); album.setPrivilege(privilege); album.setPubren(pubren); if (pubtime != null) { try { album.setPubtime(sdfalbum.parse(pubtime)); } catch (ParseException e) { e.printStackTrace(); } } album.setTupian(tupian); DALBase.update(album); // attachments(new Integer(album.getId()).toString()); if (forwardurl == null) { forwardurl = "/admin/albummanager.do?actiontype=get"; } try { response.sendRedirect(SystemParam.getSiteRoot() + forwardurl); } catch (Exception e) { e.printStackTrace(); } }翻译这段代码
这段代码是Java语言编写的,其作用是更新相册信息。该函数首先获取HTTP请求中的相关参数(如相册ID、名称、描述、类型、权限等),然后根据相册ID从数据库中加载相册对象。接着,将获取的参数设置到相册对象的属性中。如果有发布时间参数,将其转换为日期格式并设置到相册对象的属性中。最后,将更新后的相册对象保存到数据库中,并将用户重定向到指定的页面(如相册管理页面)。如果重定向地址未指定,则默认跳转到相册管理页面。
public class AlbumAction extends PageActionBase { @Override public void onLoad() { String actiontype = request.getParameter("actiontype"); System.out.println("actiontype=" + actiontype); if (actiontype == null) return; } public void delete() { String id = request.getParameter("id"); DALBase.delete("album", " where id=" + id); DALBase.delete("albumitem","where albumid='"+id+"'"); binding(); } public void save() { String forwardurl = request.getParameter("forwardurl"); // 验证错误url String errorurl = request.getParameter("errorurl"); String name = request.getParameter("name"); String des = request.getParameter("des"); String xtype = request.getParameter("xtype"); String privilege = request.getParameter("privilege"); String pubren = request.getParameter("pubren"); SimpleDateFormat sdfalbum = new SimpleDateFormat("yyyy-MM-dd"); Album album = new Album(); album.setName(name == null ? "" : name); album.setDes(des == null ? "" : des); album.setXtype(xtype == null ? "" : xtype); album.setPrivilege(privilege == null ? "" : privilege); album.setPubren(pubren == null ? "" : pubren); album.setPubtime(new Date()); album.setTupian(SystemParam.getSiteRoot()+"/upload/pic-none.png"); DALBase.save(album); if (forwardurl == null) { forwardurl = "/admin/albummanager.do?actiontype=get"; } try { response.sendRedirect(SystemParam.getSiteRoot() + forwardurl); } catch (Exception e) { e.printStackTrace(); } }翻译这段代码
这段代码是一个名为"AlbumAction"的Java类,继承了"PageActionBase"类。该类包含了三个方法:onLoad()、delete()和save()。
onLoad()方法会在页面加载时被调用,通过获取请求参数"actiontype"并打印输出来判断是否需要进行后续操作。
delete()方法会获取请求参数"id",并通过调用"DALBase"类的"delete()"方法删除"album"和"albumitem"表中对应id的记录,接着调用"binding()"方法进行数据绑定。
save()方法会获取请求参数"forwardurl"和"errorurl",以及相应的表单参数,创建一个Album对象并调用"DALBase"类的"save()"方法将其保存到数据库中。最后,通过判断"forwardurl"是否为null来重定向到相应的页面。
注意:这段代码中的一些方法和类并未在代码中给出,需要在上下文中理解。
阅读全文