在OpenJWeb中使用dwr技术提交页面内容(网站意见)的示例

OpenJWeb中使用dwr技术提交页面内容的示例

 

OpenJWeb China

QQ:29803446

Email:baozhengw@163.com

 

 

本文介绍通过dwr技术将网站意见提交到后台的例子。

 

具体步骤:

 

(1)       创建一个dwr工具类,此工具类负责将传入的网站意见实体存储到数据库中:

 

package com.openjweb.portal.util;

 

import javax.servlet.http.HttpServletRequest;

 

import org.apache.log4j.Logger;

import org.openjweb.core.service.IDBSupportService;

import org.openjweb.core.service.ServiceLocator;

import org.openjweb.core.util.CMSUtil;

import org.openjweb.core.util.StringUtil;

import com.openjweb.portal.entity.PortalAdvise;

 

public class PortalAdviseUtil

{

    private static final Logger logger = Logger.getLogger(PortalAdviseUtil.class);

    /**

     * 提交网站建议,暂不考虑验证码。

     * @param entity

     * @param request

     * @return

     */

    public static String submitPortalAdvise(PortalAdvise entity,String dbService,HttpServletRequest request)

    {

       String sReturn = "提交信息成功!";

       IDBSupportService service = (IDBSupportService)ServiceLocator.getBean(dbService);

       try

       {

           entity.setPkId(service.getSerial().toString());

           entity.setRowId(StringUtil.getUUID());

           entity.setCreateDt(StringUtil.getCurrentDateTime());

           entity.setUpdateDt(entity.getCreateDt());

      

           //获取网站编码,根据网站编码存储网站意见。

           entity.setSiteCode(CMSUtil.getWebsiteCode(request));

           service.saveOrUpdate(entity);

       }

       catch(Exception ex)

       {

           sReturn = "提交信息失败!";

       }

      

       return sReturn;

    }

 

}

 

这段代码主要用处是接收从页面中传入的网站意见实体(PortalAdvise entity),并调用openjwebDAO框架将实体数据保存到数据库中。参PortalAdvise entity的值是通过dwr调用传入进来的,下面我们我们看一下dwr的配置文件,位于WEB-INF/dwr.xml:

 

<!DOCTYPE dwr PUBLIC

    "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN"

    "http://www.getahead.ltd.uk/dwr/dwr10.dtd">

<dwr>

    <allow>

….

<!—将已经存在的网站意见实体类在这里声明一下,以便dwr通过对象的形式将页面数据映射到java实体类参数中-->

         <convert converter="bean" match="com.openjweb.portal.entity.PortalAdvise"/>

<!—下面声明PortalAdviseUtil类,以便页面中可以使用js的形式简接调用-->

    <create creator="new" javascript="PortalAdviseUtil">

            <param name="class" value="com.openjweb.portal.util.PortalAdviseUtil" />

            <include method="submitPortalAdvise" />

        </create>

    </allow>

</dwr>

 

下面是填写网站意见的页面样式:

 (CSDN的图片上传功能似乎不能用了,图片略)

 

 

下面是页面代码(只列出点击提交建议的javascript代码):

<!—dwr必需-->

<script type='text/javascript' src='<%=request.getContextPath()%>/dwr/util.js'></script>

<!—dwr必需-->

 

<script type='text/javascript' src='<%=request.getContextPath()%>/dwr/engine.js'></script>

<script type='text/javascript'

<!—dwr调用java-->

 

<script type='text/javascript' src='<%=request.getContextPath()%>/dwr/interface/PortalAdviseUtil.js'></script>

 

使用dwr直接提交页面数据的好处是避免使用复杂的MVC框架,直接将页面数据提交到业务逻辑层进行处理。

posted @ 2010-06-03 15:08  ajuanabc  阅读(126)  评论(0编辑  收藏  举报