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)

相关推荐

  • C#泛型类概念举例分析

    技术C#泛型类概念举例分析这篇文章主要讲解了“C#泛型类概念举例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#泛型类概念举例分析”吧!C# 泛型类封装不是特定于具

    攻略 2021年12月2日
  • 龙虾怎么洗简单又干净,怎样杀小龙虾,洗小龙虾

    技术龙虾怎么洗简单又干净,怎样杀小龙虾,洗小龙虾小龙虾清洗起来很麻烦,特别是那两个大钳子很具有威慑力,让人都不知道该怎么拿捏清洗龙虾怎么洗简单又干净。 步骤如下:
    1、先盐水养半小时很多龙虾生存的水域都不太干净,而且龙

    生活 2021年10月30日
  • 如何在VMware ESXi 搭建的虚拟机上进行京胜物联网模拟器的配置

    技术如何在VMware ESXi 搭建的虚拟机上进行京胜物联网模拟器的配置这篇文章给大家介绍如何在VMware ESXi 搭建的虚拟机上进行京胜物联网模拟器的配置,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能

    攻略 2021年12月10日
  • C语言数据类型是如何被大多数计算机系统所支持

    技术C语言数据类型是如何被大多数计算机系统所支持今天就跟大家聊聊有关C语言数据类型是如何被大多数计算机系统所支持,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。问题

    攻略 2021年10月29日
  • 拍身份证照片要求,拍摄身份证照片有哪些要求

    技术拍身份证照片要求,拍摄身份证照片有哪些要求不能穿着制式服装拍身份证照片要求,尽量穿深色、有领上衣。公民申请办理居民身份证时,相片为彩色正面免冠头像。申领人请勿穿着制式服装,尽量穿深色、有领上衣,但并不局限于黑色、深蓝

    生活 2021年10月24日
  • 黄骨鱼的做法,湘菜特色菜干锅黄骨鱼怎么做

    技术黄骨鱼的做法,湘菜特色菜干锅黄骨鱼怎么做主料黄骨鱼的做法:黄骨鱼500克 调料:食盐少许、酱油少许、葱少许、蒜少许、干辣椒少许、生抽少许、香菜少许、植物油适量。 干锅黄骨鱼的做法:
    1.新鲜的黄骨鱼处理干净后,用少

    生活 2021年10月27日