`
raozhengyong
  • 浏览: 15810 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类

DWR反向Ajax示例(2)

    博客分类:
  • Ajax
阅读更多
PS:上接DWR反向Ajax示例(1);
3.Java后台代码:
package test;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.Collection;
import java.util.Date;
import org.directwebremoting.WebContext;
import org.directwebremoting.WebContextFactory;
import org.directwebremoting.proxy.dwr.Util;
import database.DBConnection;
/**
 * DWR反向Ajax示例
 * @author rzy
 * @version 1.0
 * */
public class JavaChat 
{
	private static String[][] msgs = null;
	public static WebContext wctx = null;
	//把信息显示到页面上
	public void addMessage(String[][] messages)
	{
		wctx = WebContextFactory.get();
		Util utilThis = new Util(wctx.getScriptSession());
		utilThis.setValue("title", "");
		utilThis.setValue("content", "");
		String currentPage = "/dwrtest/javachat1.jsp";
		Collection sessions = wctx.getScriptSessionsByPage(currentPage);
		Util utilAll = new Util(sessions);
		utilAll.removeAllRows("msg");
		utilAll.addRows("msg", messages);
		utilAll.setStyle("msg", "color", "red");
	}
	//调用添加和显示方法
	public void sendRow(String title,String content)
	{
		addMsg(title,content);
		addRowMsg();
	}
	//添加到信息到数据库中
	public int addMsg(String title,String content)
	{
		String sql = "insert into messages(title,content,date) values ('"+title+"','"+content+"','"+getSysDate()+"')";
		DBConnection dbConn = new DBConnection();
		int row = dbConn.executeUpdate(sql);
		dbConn.close();
		return row;
	}
	//获取数据库已有信息并添加到页面上
	public void addRowMsg()
	{
		String sql = "select * from messages order by id desc";
		DBConnection dbConn = new DBConnection();
		dbConn.rs = dbConn.executeQuery(sql);
		try {
			dbConn.rs.last();
			int num = dbConn.rs.getRow();
			dbConn.rs.beforeFirst();
			msgs = new String[num][3];
			int i = 0;
			while(dbConn.rs.next())
			{
				for(int j=0;j<3;j++)
				{
					if(j==0)
					{
						msgs[i][j] = "["+dbConn.rs.getString("title")+"]";
					}else if(j==1)
					{
						msgs[i][j] = dbConn.rs.getString("content");
					}else if(j==2)
					{
						msgs[i][j] = dbConn.rs.getString("date");
					}
				}
				i++;
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally
		{
			dbConn.close();
		}
		addMessage(msgs);
	}
	//获取当前日期
	public static String getSysDate()
	{
		SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
		Date date = new Date();
		String nowDate = format.format(date);
		return nowDate;
	}
}

PS:DBConnection类是一个对数据库连接和操作的封装类;
数据库:表名:messages,字段:id,title,content,date.
分享到:
评论

相关推荐

    dwr的例子 反向AJAX 实现时时提醒

    Direct Web Remoting (DWR) 是一个开源Java库,它允许在浏览器和服务器之间进行安全、高效的异步通信,即所谓的“反向AJAX”或“Comet”技术。DWR使得JavaScript能够调用服务器端的Java方法,就像它们是本地函数一样...

    dwr3ReverseAjax示例

    通过学习和实践这个“dwr3ReverseAjax示例”,开发者可以掌握DWR的基本用法,以及如何利用Ajax和反向Ajax构建实时Web应用。这不仅对理解DWR的工作原理有所帮助,也能提升在实际项目中运用这些技术的能力。

    dwr ajax完整示例,内有dwr配置说明文档,eclicps工程

    首先,DWR的核心功能在于它的反向AJAX技术。传统的AJAX请求是单向的,即从客户端到服务器,而DWR允许服务器主动向客户端推送数据,实现了真正的双向通信。这使得Web应用能够实现更多的实时功能,如聊天室、股票报价...

    DWR让Ajax如此简单

    - **Reverse Ajax(反向Ajax)**: DWR实现了反向Ajax,即服务器可以主动推送数据到客户端,而不仅仅是响应客户端的请求。 - **Caching(缓存)**: DWR支持缓存服务器端的响应,提高性能,减少网络流量。 ### 2. ...

    DWR学习资料

    DWR学习资料 :DWR 3.0 上传文件.txt DWR3.0反向Ajax示例.txt DWR3.0学习笔记.txt DWR3.0学习网址.txt dwr分页.doc DWR分页代码.doc DWR中文文档.doc DWR中文文档.pdf dwr做comet的完整实现.doc Spring整合DWR comet ...

    DWR 1.0 学习示例

    1. **反向AJAX(Reverse Ajax)**: DWR的核心就是反向AJAX,即由服务器向客户端推送数据,而不是传统的由客户端发起请求获取数据。这使得用户界面能够实时更新,提高了用户体验。 2. **配置文件**:DWR的配置通常...

    dwr3 中文示例

    1. **反向AJAX(Reverse AJAX)**:DWR通过创建JavaScript和Java之间的通信桥梁,实现了服务器端代码能够主动更新客户端页面,而不仅仅是响应用户的请求,这就是反向AJAX。 2. **自动暴露(Auto-Exposure)**:DWR3...

    反向ajax聊天简单例子

    总结,"反向Ajax聊天简单例子"是一个学习反向Ajax技术的实践项目,通过DWR框架实现了服务器主动推送消息的聊天功能。理解并实践这个例子,有助于开发者掌握Ajax的高级用法,提升Web应用的实时性和互动性。

    反向Ajax的聊天室

    总结来说,反向Ajax聊天室是利用DWR框架实现的一种Web应用,它利用Ajax技术提供实时的聊天体验,而不需要用户频繁刷新页面。《基于J2EE的Ajax宝典》提供了详细的教学指导,涵盖了从服务器端到客户端的完整实现过程。...

    使用DWR开发AJAX For J2EE

    - **反向AJAX (Reverse AJAX)**:DWR的核心是反向AJAX,即服务器主动推送数据到客户端,而不是传统的客户端发起请求获取数据。 - **远程调用 (Remote Method Invocation)**:DWR允许JavaScript直接调用服务器上的...

    DWR反向推送

    总的来说,DWR反向推送技术为开发富互联网应用(RIA)提供了一种有效的方法,让Web应用更加互动和实时。通过深入理解和实践DwrTest项目,你可以更好地掌握如何在实际项目中利用DWR实现各种功能。

    利用dwr实现Ajax

    DWR (Direct Web Remoting) 是一个开源Java库,它允许Web应用程序在客户端JavaScript和服务器端Java之间进行异步通信,实现Ajax(Asynchronous JavaScript and XML)功能。DWR简化了Ajax开发,使得开发者可以方便地...

    dwr入门简单实现示例

    1. **反向Ajax (Reverse Ajax)**:DWR的核心是反向Ajax,即由服务器主动向客户端推送数据,而不是传统的用户触发请求,服务器响应数据的方式。 2. **JavaBeans和JavaScript对象映射**:DWR将Java对象自动转换为...

    dwr ajax 学习框架

    这种机制被称为"反向Ajax"或"Web Remoting"。 1. **安装与配置**:DWR的安装通常涉及将JAR文件添加到项目的类路径中,并在Web应用的`web.xml`中配置DWR的Servlet。配置包括设置允许访问的远程方法、安全设置等。 2...

    dwr框架简单应用示例

    - **Reverse Ajax(反向Ajax)**: DWR支持反向Ajax,即服务器可以主动向客户端发送数据,而不仅仅响应客户端的请求,增强了实时性。 - **CORS(跨源资源共享)**: DWR通过实现CORS,允许不同源的JavaScript与服务器...

    AJAX技术之DWR框架入门

    3. **Reverse AJAX**:DWR实现了反向AJAX,即服务器主动推送数据到客户端。这对于实时应用(如聊天室、股票报价)非常有用。 4. **AutoComplete**:DWR提供了自动完成功能,用于在输入框中实现下拉提示,提高用户...

    dwr实例,ajax的效果

    Engine通过反向Ajax(Reverse Ajax)技术实现异步通信。 2. **Servlet**:DWR Servlet是部署在服务器上的一个组件,它接收来自浏览器的请求,然后转发给相应的Java对象进行处理。 3. **Mapping**:DWR使用XML或...

    Ajax Dwr详细资料

    1. **反向AJAX(Reverse AJAX)**: DWR允许JavaScript代码在用户浏览器上直接调用服务器端的Java方法,就像调用本地函数一样,这使得Web应用能够实现即时响应和动态更新。 2. **自动类型转换**: DWR自动处理了Java...

    ajax dwr学习笔记和jar文件

    2. **反向Ajax(Reverse Ajax)**:DWR是反向Ajax的一个实现,意味着服务器可以主动向客户端发送数据,而不仅仅是响应客户端的请求。 二、DWR的主要组件 1. **CMT (Cross Page Posting)**:这是DWR的基础,用于在不同...

    ajax--dwr测试

    2. **主动反向Ajax**:`activeReverseAjaxEnabled=true`开启了DWR的主动反向Ajax功能,使得服务器能够主动推送数据给客户端。 3. **性能优化**:通过调整`maxWaitAfterWrite`参数来控制连接等待时间,可以有效提升...

Global site tag (gtag.js) - Google Analytics