首页 文章

制作Web表单:Java与HTML

提问于
浏览 1428 次
6

我是编程新手,这个问题可能真的很愚蠢,但我仍然想问,因为我不知道哪些做法可行,哪些不可行 . 你看,我现在正在学习基础J2EE . 我们的任务是使用JSP和servlet创建基于Web的应用程序 . 我的一个问题是做表格 .

我知道HTML是在JSP中制作表单的最佳实践,因为几乎所有人都在使用它(基于书籍/互联网上的示例) . 但是Java也有自己的形式,即Swing,AWT,它都是通过使用事件来完成的 . 如果我不想使用HTML,我可以使用Java的Swing / AWT,还是仅用于桌面应用程序?除了我刚才提到的,我还能用什么呢?

6 回答

  • 3

    但是Java也有自己的形式,即JSwing,Swing,AWT,它们都是通过使用事件来完成的 .

    是的java在Swing和AWT中有很多组件 .
    Swing和AWT组件都支持事件处理 .
    但我从来没有听说过JSwing .

    如果我不想使用HTML,我可以使用Java的JSwing / Swing / AWT,还是仅用于桌面应用程序?

    Swing和AWT仅适用于桌面应用程序 .
    但正如Orbit所说

    在Appletz? - 轨道

    您可以在applet上使用Swing组件,然后将applet嵌入到JSP页面中 .

    我知道HTML是在JSP中制作表单的最佳实践

    使用HTML比使用Applet制作表单要容易得多

    正如Andrew所说

    Applet是一个开发和部署的PITA,大多数用户更喜欢纯HTML(或动态HTML,使用JavaScript)到applet .

  • 2

    你在说什么叫做Rich Internet Applications RIA . 这些是使您的网页看起来像桌面应用程序的Web应用程序 . 您可以使用Grails and FlexGWTJavaFX来实现此目的 . 你可以使用许多非常有趣和优秀的环境,如VaadinOpen Laszlo,基于GWT . GWT和基于它的框架生成JavaScript并为每个浏览器环境生成单独的输出 .

    这些是未来的工具 . 我真的不明白为什么这些技术还不是主流 .

    这是一个list of the various RIAs框架 . 期待在不久的将来欢迎SourceForge的新人 .

  • 2

    您可以尝试Wicket - 似乎将您的桌面过期转移到网络上

  • 4

    也许您需要考虑在哪里运行什么,以及这些程序如何通信 . 在开发Web应用程序时,您正在协调(至少)两台不同的计算机之间的对话 .

    • 一方面,您正在运行一个Web服务器,它提供静态内容(刚刚发送但没有更改的简单文件)和动态内容(基本上只在需要时构建的文件,并且会根据其情况而改变) - 例如显示用户姓名的欢迎页面) . 纯HTML是静态内容,JSP和servlet提供动态内容 .

    • 另一方面,您正在运行浏览器 . 浏览器可以显示静态内容,运行内置于这些页面的javascript程序,以及嵌入特定类型的应用程序 . 嵌入式应用程序的示例是Flash和Applet .

    所以你可以清楚,JSP和Servlet没有在客户端机器上运行,它们只是为浏览器提供不同的内容来显示 . J2EE程序不会传递给客户端,它只是位于服务器上,执行对话的一方与执行另一方的浏览器 .

    Web表单只是一个HTML块,告诉浏览器显示文本字段,按钮和其他控件 . 浏览器知道所有这些事情,您不需要编写程序来告诉它如何显示表单并将内容发送回服务器 . 一个简单的表单不需要是动态的 - 你每次都会问同样的问题 - 所以你可以用纯HTML编写它 .

    当用户提交表单时,数据将传输到服务器,您需要编写一个程序来接收该数据并对其执行某些操作 . 这是servlet的角色,它可以接收数据并响应 - 使用另一个网页,可能使用JSP来显示动态内容(即表单提交的答案) .

    如果这听起来很复杂,那当然可以 . 有各种框架(Wicket,Struts等)试图通过隐藏对话的一些细节和携带来更容易地开发Web应用程序自动完成常见任务 . 但是,底层机制仍然相同 - 来自服务器的内容显示在浏览器上,可以发回表单内容等消息或不同页面的请求 . 了解基本机制可以让您在如何做更强大的事情上做出明智的选择 .

    嵌入式应用程序允许您在客户端上运行更复杂的软件 - 因此您可以显示动画或自定义控件 . 但是,该软件仅在客户端上运行,仍然需要将数据传回服务器 . 服务器仍然需要运行它自己的软件来接收数据并使用它做一些事情 . 因此,嵌入式应用程序不会使您的工作变得更容易,但可以让您更好地控制客户端的工作方式 . 但是,现代的Web浏览器可以让您对表单的显示和处理方式进行大量控制,因此您需要有充分的理由抛弃它并使用Flash或applet之类的东西 .

  • 1

    对于网站,始终使用HTML(和Javascript,用于输入更正,警报等) . 使用Java和Flash越少越好 . 请记住,网站必须快速有效,用户不希望等待几分钟才能加载Java小程序 .

  • 2

    我建议你用HTML做 . 因为HTML可以创建奇迹,您可以使用HTML以语义分割您的Web应用程序 . 我建议你使用Wicket(它的框架),所有这些都被分割了 . 也就是说,网页设计可以使用HTML单独完成,演示可以通过CSS完成,事件处理都可以通过JAVA完成 . 而wicket也照顾所有这些联系 . 所以看看Wicket . 希望它能帮助你 .

相关问题