dwr的简单使用

摘要:
项目中使用了DWR,因此我简单地学习了以下内容:单击页面上的按钮,弹出一个窗口,显示登录用户的基本信息。DOCTYPEdwrPUBLIC“-//GetAheadLimited//DTDDirectWebRemoting1.0//EN”http://directwebremoting.org/schema/dwr10.dtd“>4.在jsp页面中引入相关的js:注意,双引号引入的js是虚拟的,对应于dwr.xml中的javascript属性,而单引号引入的js封装在dwr.jar包中。--dwrend-->5.jsp调用js,这与普通的js函数相同:调用函数。

项目中使用到了dwr,所以就简单的学习了一下下:在页面点击按钮弹出窗口显示登陆用户基本信息。

1.导入dwr.jar到项目的lib包中。

2.配置web.xml文件:在web.xml中添加添加Servlet映射。

<servlet>
  <display-name>DWR Servlet</display-name>
  <servlet-name>dwr-invoker</servlet-name>
  <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
  <init-param>
    <param-name>debug</param-name>
    <param-value>true</param-value>
  </init-param>
  <init-param>
    <param-name>logLevel</param-name>
    <param-value>DEBUG</param-value>
  </init-param>
</servlet>

<servlet-mapping>
  <servlet-name>dwr-invoker</servlet-name>
  <url-pattern>/dwr/*</url-pattern>
</servlet-mapping>

3.添加来配置dwr.xml文件:注意dwr文件和web.xml保持在同一目录下,create是函数调用相关参数和方法(反射),convert是返回的封装对象(如User)。

<!DOCTYPE dwr PUBLIC
    "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" 
    "http://directwebremoting.org/schema/dwr10.dtd" >
<dwr>
  <init>
  	<converter    />
  </init>

  <allow>
    <create creator="new" javascript="LoginUserInfo">
		<param name="class" value="com.wl.manager.dwr.LoginUserInfo"/>
		<include method="showLoginUserInfo"/>
		<include method="showString"/>
    </create>
	<convert match="com.wl.common.dto.User" converter="bean"></convert>
  </allow>
</dwr>

4.在jsp页面引入相关js:注意,双引号引入的js是虚拟的,和dwr.xml中的javascript属性相对应(所以页面使用dwr.xml中对应的映射时,就需要引入这种虚拟js,建议在单个页面使用就引入),而单引号引入的js是在dwr.jar包中封装存在的(建议在页面头部、菜单部分、尾部等页面统一引入)。

<!-- dwr start ok! -->
<script type="text/javascript" src="http://t.zoukankan.com/dwr/interface/LoginUserInfo.js"> </script>
<script type='text/javascript' src='http://t.zoukankan.com/dwr/engine.js'></script>
<script type='text/javascript' src='http://t.zoukankan.com/dwr/util.js'></script>
<!-- dwr end -->

5.jsp调用js,和普通js函数一致:调用函数。

onclick="dodwr(${Session.userid})"

6.相关js:其中function(data){*}是回调函数,data是后台方法函数返回的数据,可以是String,封装对象(如User对象),List,Map,本例中是返回封装对象.

function dodwr(uid){
  LoginUserInfo.showLoginUserInfo(uid, function(data) {
    $("#login_user_name").val(data.userName);
    $("#login_user_password").val(data.passWord);
    $("#login_user_status").val(userStatus2(data.userStatus));
    $("#login_user_createTime").val(data.creatTime);
  });
});

7.后台方法:对象User不在叙述,仅给出查询方法。

package com.wl.manager.dwr;


import java.sql.SQLException;

import com.wl.common.dao.UserDao;
import com.wl.common.dto.User;

public class LoginUserInfo{

	public String showString (){
		System.out.println("zhe shi yi ge ceshi!");
		return "zheshi ygie ceshi ";
	}
	
	public User showLoginUserInfo(int uid) throws SQLException {
		User u = new UserDao().getById(uid);
		System.out.println(u.getUserName());
		System.out.println(u.getPassWord());
		return u;
	}
	
}

  

免责声明:文章转载自《dwr的简单使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇暴力破解原理与过程详解phonegap学习入门下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

ES开启慢查询日志

10s#超过10秒的查询将生成警告日志index.search.slowlog.threshold.query.info:5s#超过5秒的查询会生成信息日志index.search.slowlog.tthreshold.query.debug:...

试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)

解决方法:iis应用程序池--˃高级设置--˃启用32位应用程序˂!body{font-family:"Verdana";font-weight:normal;font-size:.7em;color:black;}p{font-family:"Verdana";font-weight:normal;color:black;margin-top:-5px}b...

Debian忘记密码重置

我使用的系统是Debian8,但这种方法也适用于Debian7以上的系统。具体步骤是重新启动VPS。您可以使用“CTRL+ALT+DEL”按钮直接在面板或VNC上重新启动VPS,然后按图中的“e”按钮;在BIOS界面上,按“e”进入GRUB引导菜单,然后按“e”进入编辑;输入GRUB编辑红色框中的内容,并将“ro”替换为“rwinit=/bin/sh”;修改...

2.页面绘制和引入组件库uView

文本+背景色的形式,而不是横幅图的形式,可以节省未来的工作量。在index.vue中,关于开关的代码:EFGHIJKLMNOPQRSTUWXYZB˃DEFGHIJKLNNOPQRSTUVWXYZEFGHIJKLMNOPQRSTUVWXYZ导出默认值{data(){return{}},onLoad()},方法:{}}。横幅{width:100%;height:...

如何根据角色批量激活SAP Fiori服务

我们知道Fiori的角色不同于ERP,即使您的帐户具有SAP_ALL权限,但当您打开Fiori时,它也是空的:只有在您将Fiori所需的角色添加到帐户并激活相关服务时,才能使用Fioriapp。否则,打开Fioriapps将报告错误。可以通过GUI事务代码找到特定错误:/n/iwfnd/error_Log以查看特定原因。...

微信小程序-获取input值的两种方法

1、bindinput其中e.detail是获取input数据其中包含value值,cursor是获取光标的位置。...