‘壹’ 服务端与客户端的交互技术有几种
一般来说他们并不直接通信,你写的又不是即时聊天软件,否则你也不会用c/s架构,对吧。一般来说客户端和服务器端通过修改同一数据库来实现间接通信,比如客户端将自己的请求写入数据库相应的字段中(可能需呀多个字段来描述一条具体的请求),服务器则不断扫描数据库,发现并处理用户请求并将处理结果写回数据库以便客户端查询处理结果。
javaweb的客户端就是浏览器,是根据TCP/IP协议进行数据传输,按照HTTP协议进行交互的
‘叁’ 客户机服务器交互模式的特点及应用
C/S结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。Server是服务器瑞,client是客户端。
客户端是面向用户的,用户通过客户端提交各种请求(软件功能范围内的)。
服务器端处理客户请求并作出回应。Client就是中文中的客户,用户,使
用者,而Server就是和client相对应的东西,Client和Server之间的关系是一种服务的提供方,和服务
的使用方之间的关系,这种关系是生活中普遍存在的关系.例如,我们去银行取钱,我们就是银行的Cli
ent,而银行作为一个整体是我们的Server.为我们提供服务的是银行的一套系统,而不仅仅是某一个
具体的工作人员.这种关系,就是Client和Server之间的关系.Client/Server就是利用这种关系作为
基础而构成的系统.
在客户机/服务器网络中,服务器是网络的核心,而客户机是网络的基础,客户机依靠服务器获得所需要的网络资源,而服务器为客户机提供网络必须的资源。
它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到
Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server
应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。
‘肆’ 网络游戏客户端和服务器之间数据怎么交互的
最简单的模式就是,
客户端接收键盘,鼠标等的消息,然后发送个服务器。
服务器收到这些消息后,发送给其他(指定或者所有的)客户端
就像你在WEB聊天室聊天一样。首先键盘输入了一大堆文字。然后按下“递交”按钮,于是客户端收集你填写的那些文字内容,然后发送给服务器。(也许里面有些色情暴力的字眼)
服务器在接收的这些消息后,发送给其他用户。(服务器可能和谐掉那些色情暴力的字眼,变成了XXOO)
网络游戏的客户端和服务器也是一样的道理
客户端纪录所有的消息指令,一般来说,如果该消息指令可能影响到其他人的,或者需要被其他人看到,这个消息就会需要被发送到服务器。
服务器处理这些消息进行处理,发送给其他相关的客户端。
直白点来说,服务器端与客户端分别处理哪些事情?你是老板,你说了算。
‘伍’ 如何实现数据交互
web数据交互方式,web数据交互,简单的讲,是client与server端的数据交互,通过http协议交互的。【扩展】对于小型个人系统,数据量不是很大的都是通过webservice,webservice读取数据库,然后返回结果;对于公司企业的大型数据系统等采用预先将数据库中的每一条信息静态化成xml,客户直接下载xml然后本地解析的数据交互方法。web数据交互,从server的角度讲:主要有pull,push两个,一个是拉,另外一个是推。1)pull 是拉,客户端向服务器端主动的拉取数据,采用的技术是ajax 和Xss(跨站脚本)2)push 是服务器向客户端主动的推动数据,第一种方式是长连接,客户端与服务器之间一直保持着连接,如果有数据的更新,服务器向客户端推送数据,客户端接受服务器端的数据,可以理解为长轮询,客户端与服务器端必须一直是连接着的状态。另外还有一种是伪长链接的。有2种实现方式,一种是基于ajax的,它与传统的ajax的方式不同在于,服务器端会阻塞客户端的请求直到有数据传递或者超时才返回。客户端 JavaScript 响应处理函数会在处理完服务器返回的信息后,再次发出请求,重新建立连接。 当客户端处理接收的数据、重新建立连接时,服务器端可能有新的数据到达;这些信息会被服务器端保存直到客户端重新建立连接,客户端会一次把当前服务器端所有的信息取回。
‘陆’ android客户端怎么与服务器交互
1、java服务器建立至少一种服务webservices、servlet、socket
2、客户端通过socket或者httpurlconnection的方式进行连接访问
服务端:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
resp.setContentType("text/html;charset=utf-8");
req.setCharacterEncoding("utf-8");
resp.setCharacterEncoding("utf-8");
PrintWriter out = resp.getWriter();
//用HTML格式给浏览器返回数据
out.println("<html>");
out.println("<head>");
out.println("<title>Tomcat Servlet测试</title>");
out.println("</head>");
out.println("<body>");
out.println("Hello,First Servlet!");
out.println("</body>");
out.println("</html>");
out.println("Hello,第一个Tomcat!!!");
out.close();
}
客户端:
private String doGet(String url){
String responseStr = "";
try {
String name = nameEdit.getText().toString().trim();
String code = codeEdit.getText().toString().trim();
String getUrl = URL + "?NAME=" + name+"&"+"CODE=" + code;
HttpGet httpRequest = new HttpGet(getUrl);
HttpParams params = new BasicHttpParams();
ConnManagerParams.setTimeout(params, 1000);
HttpConnectionParams.setConnectionTimeout(params, 3000);
HttpConnectionParams.setSoTimeout(params, 5000);
httpRequest.setParams(params);
HttpResponse httpResponse = new DefaultHttpClient().execute(httpRequest);
final int ret = httpResponse.getStatusLine().getStatusCode();
if(ret == HttpStatus.SC_OK){
responseStr = EntityUtils.toString(httpResponse.getEntity(), HTTP.UTF_8);
}else{
responseStr = "-1";
}
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return responseStr;
}
‘柒’ 做java QQ聊天室的时候,多个客户端怎么通过服务器进行交互
把服务器看成是文件中转站就行了,从客户端接收消息,再转发到目标客户端。
source
<->
server
<=>
destination
‘捌’ android客户端和服务器端怎么交互
android客户端和服务器端是基于IntentService的,具体如下:
后台使用简单的servlet,支持GET或POST。这个servlet最终返回给前台一个字符串flag,值是true或false,表示登录是否成功。
然后在安卓的ADT上创建一个安卓项目,建立两个Activity,分别作为登录界面和登录成功界面。
HTTP的访问公共类,用于处理GET和POST请求。
IntentService服务,用于在后台以队列方式处理耗时操作。
在AndroidManifest.xml中注册IntentService。注意uses-permission节点,为程序开启访问网络的权限。
登陆界面处理,注意按钮监听事件中,使用Intent将要传递的值传给service。接收广播类中,同样使用Intent将要传递的值传给下一个Activity。在onCreate()中,动态注册接收广播类的实例receiver。在接收广播类中,不要使用完毕后忘记注销接收器,否则会报一个Are you missing a call to unregisterReceiver()? 的异常。
‘玖’ 客户端与服务端如何实现交互
简单的这么说吧,注册页面有个form表单,表单里面有一些注册信息,form表单有个action让其等于你的zhucehuili.asp,然后在zhucehuili.asp中用request接收表单中的值,有多少个值就需要多少个request来分别接受,然后进行相应处理就可以了,比如说插入数据库等等……
‘拾’ 如何实现客户端与服务器的交互
C/S模式和B/S各有其有点也各有其缺点,B/S模式在开发中需要考虑数据如何从客户端提交到服务器端,数据又如何返回到客户端,这些是B/S模式所特有的,在去年之前,开发B/S模式的程序,我都是利用form来交互数据,当我看到XML之后,发现XML是个好冬冬,有很多优点,有好的东西当然不能独享啦,想当年为了实现XML交互数据,几乎把网络翻了个遍。咚,一块砖头上来了。呵呵,废话少说,下面我们就进入正题。
B/S模式分为服务器端和客户端,客户端接受用户的请求,客户端向应用服务提出请求,应用服务从数据库服务中获得数据,应用服务将数据进行计算并将结果提交给客户端,客户端将结果呈现给用户。这样,我们就看到了数据从客户到服务器,经过服务器的处理再返回到客户端,由客户端软件(如IE)显示结果。
(以ASP教本语言为例,其它的语言一样哈。)
1.Form方式
Form方式是最基本的向服务器提交数据的方式。
test.asp文件代码:
<%@ Language=VBScript %>
<%
Response.Expires=-1
Response.CharSet="UTF-8"
Session.CodePage="65001"
%>
<form name="frmTest" id="frmTest" action="test.asp" method="POST">
<input name="name" id=" name" type="text" value="">
<input type="hidden" name="number" id="number" value="10">
<input type="submit" value="Submit" name="B1">
</form>
<%
dim intnumber
dim strname
if IsEmpty(Request("name")) then
strname =""
else
strname =Request("name")
end if
if IsEmpty(Request("number")) then
intnumber =0
else
intnumber =Request("number")
end if