日期:2014-05-17  浏览次数:20712 次

高手求教 一个聊天室的问题 动动你手指 解决一烦恼
高手们 急救啊 最近做了一个聊天室 用了AJAX+JSP 我现在想做一个聊天记录 想将聊天记录保存到xml中 我没有用servlet 我想直接用jsp生成一个xml 然后用AJAX来获取那个页面的返回 可以实现么? 怎么实现? 在线急救!!!!!


------解决方案--------------------
<%%>在这里面写JAVA代码~
------解决方案--------------------
告诉你可能涉及到的知识,然后你自己百度查好吗!
简单版:
jsp
小脚本
javascript的xmlhttprequest类
java读写xml
深入版:
在简单版的基础上加:
servlet
axjax框架
差不多了楼下补充~
自己写出来才有成就感不是吗?
------解决方案--------------------
把聊天内容保存到数据库里,用jsp就是<% java修改保存xml %>;
读取聊天内容,ajax方法调用一个纯jsp文件,jsp内容为<% java读取xml;out.println(xmlString) %>,ajax取得数据用js放到你想放的显示框中。

------解决方案--------------------
记录传给JSP,JSP存入XML,这是共同的,没什么好说的。
之后可以有两种形式:

1.JSP返回成功与否的标志,或者返回XML的URL。接到标志为成功的话则读取预定位置的XML,或者根据返回的XML的URL读取。

2.JSP存入XML,然后读入XML,设置返回WEB信息头为XML文件格式(就如返回下载文件的方法一样),这样前台AJAX就直接得到XML的内容了。上面是分两步走,这个是一步到达。
------解决方案--------------------
第二种也是要保存到XML文件里——如果你想过后使用的话,而且作为聊天室,当然大家都需要看到聊天的内容,而只在页面里处理完直接返回的话,就只有发送请求的人能看见,等其它人发送请求时,就失去前面的信息了。所以还是得保存的,只不过是通常可以存到APPLICATION里,只需要保存两三屏的信息就可以,用不了太多空间。

所以最开始说了“记录传给JSP,JSP存入XML,这是共同的,没什么好说的。”就是都需要做的。接下来只是返回一个URL让AJAX再去读目标XML,还是直接返回XML文档体给发送的AJAX。相对来说肯定是后者节省效率。但少数特殊情况也不排除合适使用第一种,楼主自己决定吧。