swing客户端设置(哪些是swing的界面组件)

技术Swing客户端的知识有哪些这篇文章将为大家详细讲解有关Swing客户端的知识有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.简介Jakarta Struts

本文将为大家详细讲解有关Swing客户端的知识,文章内容质量较高,所以边肖将与大家分享以供参考,希望大家看完本文后对相关知识有一定的了解。

1.简介

Jakarta Struts是一个基于MVC模式创建servlet应用程序的框架。大多数Struts应用程序使用浏览器作为客户端。事实上,Struts足够开放,可以使用其他客户端模式。在这里,我将把我的文章“编写第二个Jakarta Struts应用程序”中的一个浏览器应用程序示例更改为Swing客户端模式,只需稍加修改代码。

本文主要介绍如何使用Swing客户端连接现有的Servlet应用程序。如果你计划开发一个java应用程序,你可以使用浏览器作为客户端,也可以使用Swing作为客户端,你需要根据你的程序需求灵活选择架构,比如EJB或者web service,它们提供简单的接口。

2.Struts结构

在我们开始之前,让我们来看看浏览器是如何与Struts应用程序通信的。这些将反映在我们的Swing应用程序中。

Struts应用通过servlet接收GET或POST请求启动。

servlet决定调用哪个‘动作’,并从URL获取信息。

实现Action的java类在struts-config.xml中配置

struts的输出由jsp显示,jsp的名称也在struts-config.xml文件中指定。

所以* * *非浏览器应用程序需要能够向servlet发送请求,并从jsp页面获得响应。

3.The URLConnection class

使用URLConnection类可以很容易地用java编写servlet请求代码。这门课很有趣,因为它有一些奇怪的设计。如果你想看它的实现,我建议你读一下‘避开隐藏在URL连接类中的陷阱’。

如果您想发送带有“list”操作的请求并接受打印响应,您需要编写如下代码:

urlURl=NewURl(' http://my server/project/list . do ');URL connectionConn=URL . OpenConnection();BufferedReaderin=new bufferedreader(new inputstreamreader(conn . getinputstream()));Stringlinewhile((line=in.readLine())!=null){System.out.println(第行);一般来说,您通常需要在请求的同时发送一些数据——就像提交表单一样。这些数据需要在您阅读回复之前发送。

urlURl=NewURl(' http://my server/project/list . do ');URL connectionConn=URL . OpenConnection();conn . setdooutput(true);conn . setrequestproperty(' user-agent ',' SWING ');BufferedWriterout=

nbsp;    new BufferedWriter(new OutputStreamWriter(conn.getOutputStream()));        out.write("name1=value1&name2=value2");        out.flush();       out.close();              String c = conn.getHeaderField("Set-Cookie");       BufferedReader in =           new BufferedReader(new InputStreamReader(conn.getInputStream()));      String line;        while ((line = in.readLine()) != null) {         System.out.println(line);      }

这个例子同时也显示了如何读写HTTP头信息。
***个例子使用GET方法与HTTP通信,而第二个例子使用POST方法通信。你同样可以使用GET方法来给servlet传送数据,但是就必须要把数据加到URL里,像这样:

URL url = new URL("http://myserver/project/list.do?name1=value1&name2=value2");

4.Identifying the client

现在我们知道怎么发送和请求数据了,但是我们怎么接受数据呢?如果响应是给浏览器的,那响应里就包含了HTML或者还有JavaScript和样式。对于我们的Swing客户端,我们只需要数据。这将带来一个新问题:Struts应用程序如何能识别出客户端是一个浏览器,是个Swing还是其它什么呢?
一种解决办法是在每个请求里添加参数时其能间鉴别出是哪种客户端。我在第二个例子里已经使用了user-agent这个头信息来使其识别出是个Swing客户端。
当Struts应用程序准备好给客户端返回数据时,它就会检测user-agent的值,然后选择适合客户端的jsp页面。这将会替代Struts Action类设置的跳转信息。

String client = (String)request.getHeader("user-agent");       // Forward control to the list page       if (client.equals("SWING"))         return (mapping.findForward("swinglist"));       else return (mapping.findForward("list"));

关于Swing客户端的知识有哪些就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/151902.html

(0)

相关推荐

  • 盖的繁体字,情定豪气义盖天下繁体怎么写

    技术盖的繁体字,情定豪气义盖天下繁体怎么写“定”的繁体字就是“定”盖的繁体字。定,ding,从宀从正。正家而天下定。
    不动的,不变的:~额。~价。~律。~论。~期。~型。~义。~都(dū)。~稿。~数(shù)(a.规定

    生活 2021年10月21日
  • 怎样浅谈Java Servlets与CGI程序

    技术怎样浅谈Java Servlets与CGI程序怎样浅谈Java Servlets与CGI程序,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。从网络的早期阶

    攻略 2021年11月20日
  • php png失真的解决办法是什么

    技术php png失真的解决办法是什么这篇文章主要介绍“php png失真的解决办法是什么”,在日常操作中,相信很多人在php png失真的解决办法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望

    攻略 2021年10月23日
  • 算法逻辑中的因果关系(持续更新)

    技术算法逻辑中的因果关系(持续更新) 算法逻辑中的因果关系(持续更新)总结算法中可以前后处理的方法实例
    世间有好坏,算法逻辑也有前后‘因果’,我们可以从数组中看出有第一项和最后一项。
    以LQ26删除有序

    礼包 2021年12月22日
  • MySQL GUI有哪些工具

    技术MySQL GUI有哪些工具这篇文章主要介绍“MySQL GUI有哪些工具”,在日常操作中,相信很多人在MySQL GUI有哪些工具问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MyS

    攻略 2021年11月12日
  • 女生标准体重表,中国人男女的体重标准是多少

    技术女生标准体重表,中国人男女的体重标准是多少其实现在全世界都使用体重指数(BMI)来衡量一个人胖或不胖。具体的计算的方法是女生标准体重表:
    BMI=体重(公斤)/身高(米)的平方
    例如:某MM的身高1.7米,体重为65

    生活 2021年10月28日