NetBeans 电子商务教程 - 设置开发环境

此页上的内容适用于 NetBeans IDE 版本 6.8 和 6.9

以下步骤描述了如何设置开发环境。在该过程中,您将了解 IDE 的一些主要窗口,以及 IDE 如何使用 Ant 构建脚本对项目执行常见操作。在本教程单元结束时,您将创建好 Web 应用程序项目,确认可以成功构建项目,并将其部署到开发服务器,然后从 IDE 中运行该项目。

此外,您还学习了如何将 IDE 与 MySQL 数据库服务器相连、如何创建数据库实例,以及如何从 IDE 的 "Services"(服务)窗口连接至数据库实例。在本单元中,将创建一个名为 affablebean 的新数据库,该数据库将在整个教程中使用。

您可以查看此教程中构建的应用程序的实时演示:NetBeans 电子商务教程演示应用程序



软件或资源 要求的版本
NetBeans IDE Java 包,6.8 或 6.9
Java 开发工具包 (JDK) 版本 6
GlassFish Server v3 或 Open Source Edition 3.0.1
MySQL 数据库服务器 版本 5.1

注:

  • NetBeans IDE 需要 Java 开发工具包 (JDK) 才能正常运行。如果不具备上面列出的任何资源,则应首先下载并安装 JDK。
  • NetBeans IDE Java 包包含在本教程中构建的应用程序所需的 Java Web 和 Java EE 技术。
  • NetBeans IDE Java 包还包含本教程所需的 GlassFish Server。可以单独下载 GlassFish Server,但是 NetBeans 下载中附带的版本具有在 IDE 中自动注册的额外好处。

创建 Web 项目

  1. 启动 NetBeans IDE。如果是首次运行 IDE,则会看到 IDE 的 "Start Page"(起始页)。
    NetBeans IDE 起始页
  2. 单击 "New Project"(新建项目)(新建项目图标) 按钮(Ctrl-Shift-N 组合键;在 Mac 上为 ⌘-Shift-N 组合键)以创建新的 Java Web 项目。此时,将打开新建项目向导,以指导您完成该过程。在 "Categories"(类别)下选择 "Java Web",并在 "Projects"(项目)下选择 "Web Application"(Web 应用程序)。
    新建项目向导
  3. 单击 "Next"(下一步)。
  4. 在“步骤 2:Name and Location(名称和位置)”中,将项目命名为 AffableBean。在此步骤中,还可以指定计算机上项目的所在位置。默认情况下,IDE 将在主目录中创建 NetBeansProjects 文件夹。如果要更改位置,请在 "Project Location"(项目位置)文本字段中输入相应路径。
  5. 单击 "Next"(下一步)。
  6. 在步骤 3 "Server and Settings"(服务器和设置)中,将 GlassFish v3 指定为服务器。在开发期间,项目将部署到该服务器上。由于 NetBeans 安装中已包括 GlassFish v3,因此您会看到 "GlassFish v3" 在 "Server"(服务器)下拉字段中列出。

    如果要部署到尚未在 IDE 中注册的服务器上,则可以单击 "Add"(添加)按钮,然后逐步执行添加服务器实例向导。您可以在 "Servers"(服务器)窗口(从主菜单中选择 "Tools"(工具)> "Servers"(服务器))中查看在 IDE 中注册的所有服务器。

  7. 选择 "Java EE 6 Web" 作为 Java EE 版本。

    创建的应用程序将使用各种 Java EE 6 功能,即 Servlet 标注(Servlet 3.0 规范中的新增内容),以及直接在 Servlet 容器中使用的 EJB(EJB 3.1 规范中的新增内容)。Servlet 3.0 和 EJB 3.1 都是 Java EE 6 平台的一部分,因此,您需要与 EE-6 兼容的服务器(如 GlassFish v3)才能完成本教程的学习。有关详细信息,请参见关于规范和实现
  8. 确保取消选中 "Enable Contexts and Dependency Injection"(启用上下文和依赖关系注入)选项。此选项是特定于上下文和依赖关系注入 (CDI) 技术的,由 JSR-299 指定,不在本教程中使用。有关详细信息,请参见上下文和依赖关系注入以及 JSF 2.0 入门指南
    新建 Web 应用程序向导的

    请注意,默认情况下,应用程序的上下文路径是项目的名称。这是应用程序在部署到服务器之后可以访问的路径。例如,GlassFish 使用 8080 作为默认端口号,因此在开发期间,您可以通过以下路径在浏览器窗口中访问项目:
    http://localhost:8080/AffableBean/
  9. 单击 "Finish"(完成)。IDE 将生成名为 AffableBean 的框架项目,该项目遵循 J2EE BluePrints Web 应用程序结构约定。IDE 将按照其默认布局显示各种窗口。
    NetBeans IDE - 默认布局
  10. 检查 IDE 的默认布局。下面简要介绍了所显示的窗口和标签:
    • Editor(编辑器):编辑器(Ctrl-0 组合键;在 Mac 上为 ⌘-0 组合键)是 IDE 的中心组件,可能也是您花费时间最多的地方。编辑器可自动根据所使用的语言调整,同时提供了文档支持、代码完成以及特定于编码时采用的技术的提示和错误消息。
    • "Projects"(项目)窗口:"Projects"(项目)窗口(Ctrl-1 组合键;在 Mac 上为 ⌘-1 组合键)是项目源的入口点。它提供了重要项目内容的逻辑视图,并根据文件功能(例如 Configuration Files)将其组合在一起。在 "Projects"(项目)窗口中右键单击文件节点时,可以调用对开发任务通用的操作(即 BuildCleanDeployRun)。
    • "Files"(文件)窗口:"Files"(文件)窗口(Ctrl-2 组合键;在 Mac 上为 ⌘-2 组合键)提供了基于目录的项目视图。换而言之,该窗口使您可以查看项目的结构,因为它位于计算机的文件系统中。在此窗口中,可以查看与项目有关的所有文件,包括 Ant 构建脚本 (build.xml),以及 IDE 处理项目所需的文件(包含在 nbproject 文件夹中)。如果已运行项目,则可以看到编译的 Java 文件(build 文件夹)的位置。如果已明确构建项目(方法是:在 "Projects"(项目)窗口中右键单击项目节点,然后从弹出式菜单中选择 "Build"(构建)或 "Clean and Build"(清理并构建)),则可以查看项目的可分发 WAR 文件(包含在 dist 文件夹中)。
    • Navigator(导航器):"Navigator"(导航器)(Ctrl-7 组合键;在 Mac 上为 ⌘-7 组合键)提供了在编辑器中打开的文件的结构概述。例如,如果显示 HTML Web 页,则 "Navigator"(导航器)将采用与该页的文档对象模型 (DOM) 相对应的方式列出标记节点。如果在编辑器中打开 Java 类,则 "Navigator"(导航器)将显示与该类有关的属性和方法。您可以使用 "Navigator"(导航器)在编辑器内导航至相关项。例如,在 "Navigator"(导航器)中双击节点时,光标将在编辑器中直接转至该元素。
    • "Tasks"(任务)窗口:"Tasks"(任务)窗口(Ctrl-6 组合键;在 Mac 上为 ⌘-6 组合键)将自动扫描代码,并列出包含编译错误、快速修复和样式警告的代码行。对于 Java 类,还列出包含 "TODO" 或 "FIXME" 等字样的注释行。
    • "Services"(服务)窗口:"Services"(服务)窗口(Ctrl-5 组合键;在 Mac 上为 ⌘-5 组合键)提供了一个界面,用于管理服务器、Web 服务、数据库及其连接,以及其他与团队开发有关的服务。
    • "Output"(输出)窗口:(未显示)"Output"(输出)窗口(Ctrl-4 组合键;在 Mac 上为 ⌘-4 组合键)在调用操作(用于调用通常来自服务器等外部资源的服务)时自动显示,可以镜像服务器日志文件。对于 Web 项目,该窗口还让您可以查看与 Ant 任务(例如 BuildClean and BuildClean)有关的信息。
    • Palette(组件面板):(未显示)"Palette"(组件面板)(Ctrl-Shift-8 组合键;在 Mac 上为 ⌘-Shift-8 组合键)提供了各种可拖放至编辑器中的简便代码片段。"Palette"(组件面板)中包含很多片段,它们还可以通过在编辑器中调用代码完成来访问,如该教程后面所述。

    注:所有的 IDE 窗口都可以通过 "Window"(窗口)菜单项进行访问。

运行 Web 项目

  1. 运行新的 AffableBean 项目。为此,可在 "Projects"(项目)窗口中,右键单击项目节点,然后选择 "Run"(运行);否则,在 IDE 的主工具栏中单击 "Run Project"(运行项目)(运行项目图标) 按钮(F6 键;在 Mac 上为 fn-F6 组合键)。

    此时将打开一个浏览器窗口,以显示项目的欢迎页。
    显示在浏览器中的项目欢迎页
    那么,刚才发生了什么情况?运行 Web 项目时,IDE 将调用项目构建脚本中的 run Ant 目标。您可以在编辑器中打开项目的 build.xml 文件进行调查。
  2. 切换至 "Files"(文件)窗口(Ctrl-2 组合键;在 Mac 上为 ⌘-2 组合键),展开项目节点,然后双击项目中包含的 build.xml 文件。在编辑器中打开 build.xml 文件时,"Navigator"(导航器)会列出该脚本中的所有可用 Ant 目标。
    显示 build.xml 的 Ant 目标的导航器

    使用常规目标 (正常 Ant 目标图标) 图标显示正常 Ant 目标。强调的 Ant 目标 (强调的 Ant 目标图标) 图标仅指示目标包含显示为工具提示的描述(如上图所示)。有关详细信息,请参见创建、导入和配置 Java 项目

  3. 双击 run 目标。build-impl.xml 文件在编辑器中打开,并显示目标定义。
    <target depends="run-deploy,run-display-browser" description="Deploy to server and show in browser." name="run"/>
    我们单击 build.xml 中的目标时,为何打开了 build-impl.xml 文件?如果切换回 build.xml(按 Ctrl-Tab 组合键)并查看文件内容,则会看到以下行:
    <import file="nbproject/build-impl.xml"/>

    项目的构建脚本基本上是一个空文件,用于从 nbproject/build-impl.xml 中导入 NetBeans 定义的目标。

    您可以添加新目标,也可以覆盖 NetBeans 定义的现有目标,以自由编辑项目的标准脚本 build.xml。不过,您不能编辑 build-impl.xml 文件。

    通过 run 目标的定义,您可以看到它取决于以下目标:
    • run-deploy
    • run-display-browser
    以上这两个目标又取决于其他目标,您可以在 build-impl.xml 文件中的其他地方查看这些目标。但从根本上讲,调用 run 目标时会执行以下操作:
    1. 编译项目。
    2. 创建 WAR 文件。
    3. 启动服务器(如果尚未运行)。
    4. 将 WAR 文件部署到指定服务器上。
    5. 打开浏览器,以显示服务器的 URL 和应用程序的上下文路径。

    有关使用 Ant 的详细信息,请参见正式的 Ant 手册

  4. 要为项目构建可分发的 WAR 文件,请从 IDE 的 "Run"(运行)菜单中,选择 "Clean and Build Project"(清理并构建项目)(或 "Clean and Build Main Project"(清理并构建主项目))。
  5. 在 "Files"(文件)窗口(Ctrl-2 组合键;在 Mac 上为 ⌘-2 组合键)中,展开项目节点。dist 文件夹中包含项目的 WAR 文件。build 文件夹中包含编译的项目。

    注:如果清理项目(在 "Projects"(项目)窗口中,右键单击项目节点,然后从弹出式菜单中选择 Clean(清理)),则会删除这两个文件夹。

  6. 切换至 "Services"(服务)窗口(Ctrl-5 组合键;在 Mac 上为 ⌘-5 组合键),然后展开 "Servers"(服务器)> "GlassFish Server 3" > "Applications"(应用程序)节点。

    注:对于 NetBeans 6.8 用户,"GlassFish v3" 是默认服务器名称。

    GlassFish Server 节点上的绿色箭头图标 () 指示服务器正在运行。Applications 文件夹列出了所有部署的应用程序;您可以看到,AffableBean 应用程序已成功部署。

在此阶段,您已在 IDE 中创建了 Java Web 项目,并确认可以成功构建该项目并将其部署到开发服务器上,且已在运行时在浏览器中将其打开。


与数据库服务器进行通信

下载并安装 MySQL 数据库服务器之后,可以通过 IDE 与其连接。默认安装使用 "root" 和 ""(空字符串)作为连接至数据库服务器的用户帐户和口令。不过,鉴于存在 GlassFish 连接问题,建议您将帐户与非空口令结合使用。[1]以下说明介绍了如何通过 MySQL 命令行运行数据库服务器并将 root 帐户的口令更改为 "nbuser"。"root"/"nbuser" 组合将在整个 NetBeans 电子商务教程中使用。如果数据库服务器处于运行状态并已正确配置,则可以在 IDE 中对其进行注册,并创建数据库实例。

注:下面的命令行说明假定,您已将 mysql 命令添加到 PATH 环境变量中。(如果尚未这样做,则在命令行中输入 mysql 命令时,将会收到 "mysql: command not found" 错误。)

如果尚未将 mysql 添加到 PATH 中,则可以输入 MySQL 安装的 bin 目录的完整路径,以调用命令。例如,如果 mysql 命令位于计算机上的 /usr/local/mysql/bin,则可以输入以下内容:

shell> /usr/local/mysql/bin/mysql -u root

有关详细信息,请参见正式的 MySQL 参考手册:


请执行以下步骤。

检查 MySQL 服务器是否正在运行

从 IDE 中连接到 MySQL 服务器之前,需要确保该服务器正在运行。要完成此操作,一种方法是使用 mysqladmin 客户端的 ping 命令。

  1. 打开命令行提示符,然后键入以下内容:
    shell> mysqladmin ping
    如果服务器正在运行,您会看到类似于以下内容的输出:
    mysqld is alive
    如果服务器没有运行,则会看到类似于以下内容的输出:
    mysqladmin: connect to server at 'localhost' failed
    error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock'
    Check that mysqld is running and that the socket: '/tmp/mysql.sock' exists!

启动数据库服务器

如果 MySQL 服务器没有运行,则可以从命令行中启动该服务器。如需简单的跨平台概述,请参见 2.13.1.2. 自动启动和停止 MySQL。以下步骤提供了一般性指导,具体视操作系统而定。

类 Unix 系统:

对于类 Unix 系统,建议您通过调用 mysqld_safe 启动 MySQL 服务器。

  1. 打开命令行提示符,然后运行 mysqld_safe 命令:
    shell> sudo ./mysqld_safe
    将看到类似于以下内容的输出:
    090906 02:14:37 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data

Windows:

通过 MySQL Windows 安装程序,可以将数据库服务器安装为 Windows 服务,MySQL 可通过该服务自动随同操作系统一起启动和停止。如果需要手动启动数据库,请从安装目录的 bin 文件夹中运行 mysqld 命令。

  1. 打开 Windows 控制台窗口(从 "Start"(开始)菜单中,选择 "Run"(运行),然后在文本字段中键入 cmd)。此时将显示一个命令行窗口。
  2. 输入此命令(指定的路径假定您已将版本 5.1 安装到默认安装位置):
    C:\> "C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqld"

有关详细信息,请参见正式的 MySQL 参考手册:2.4.5.5. 从 Windows 命令行中启动 MySQL

更改口令

要将 root 帐户的口令设置为 "nbuser",请执行以下步骤。

  1. 打开命令行提示符,然后键入以下内容:
    shell> mysql -u root
    mysql> UPDATE mysql.user SET Password = PASSWORD('nbuser') WHERE User = 'root';
    mysql> FLUSH PRIVILEGES;

有关详细信息,请参见正式的 MySQL 参考手册:《2.13.2. 确保初始 MySQL 帐户安全》。

在 IDE 中注册服务器

通过 IDE 的 "Services"(服务)窗口,可以执行以下操作:连接到服务器、启动和停止服务器、查看数据库实例和其中的数据,以及在服务器上运行外部管理工具。

  1. 在 "Services"(服务)窗口中,右键单击 "Databases"(数据库)节点,然后选择 "Register MySQL Server"(注册 MySQL 服务器)。

    在 "MySQL Server Properties"(MySQL 服务器属性)对话框的 "Basic Properties"(基本属性)标签下方,您可以看到 MySQL 服务器安装的默认设置。它们是:
    • Server Host Name(服务器主机名):localhost
    • Server Port Number(服务器端口号):3306
    • Administrator User Name(管理员用户名):root
    • Administrator Password(管理员口令):nbuser
  2. 选中 "Save Password"(保存口令)选项。
  3. 单击 "OK"(确定)。IDE 将会连接到 MySQL 数据库服务器,并列出由该服务器维护的数据库实例。如果展开 "Drivers"(驱动程序)节点,则还可以看到 IDE 中包含 MySQL 的连接器/J JDBC 驱动程序

    应用服务器(即 GlassFish)需要驱动程序,才能实现 Java 代码与 MySQL 数据库之间的通信。由于 IDE 中已包含连接器/J 驱动程序,因此不需要进行下载。此外,如后面所述,可以在服务器设置中通过指定方式来启用 JDBC 驱动程序部署,从而将该驱动程序自动部署到 GlassFish(如果服务器上未安装该驱动程序)。

    下面的步骤 4 至 7 为可选操作。您可以将 IDE 配置为启动和停止 MySQL 服务器,以及在服务器上运行外部管理工具。
  4. 右键单击 MySQL 服务器节点,然后选择 "Properties"(属性)。在 "MySQL Server Properties"(MySQL 服务器属性)对话框中,选择 "Admin Properties"(管理属性)标签。
  5. 在 "Path/URL to admin tool"(管理工具的路径/URL)字段中,输入计算机上数据库管理工具(如 MySQL Administrator)的可执行文件的路径。MySQL Administrator 包含在 MySQL GUI 工具包中。
  6. 在 "Path to start command"(启动命令的路径)字段中,键入 MySQL 启动命令(即 mysqldmysqld_safe)的路径,具体视操作系统而定。(请参见上面的启动数据库服务器。)

    注:对于类 Unix 系统,您可能会发现,只能使用根或管理权限调用启动命令。要解决这一问题,可以创建一个脚本(如果是 Linux 和 Solaris,请使用 GKSu;如果是 Mac,则使用 osascript),以完成此任务。有关详细信息,请参见此博客帖子

  7. 在 "Path to stop command"(停止命令的路径)字段中,输入 MySQL 停止命令(即 mysqladmin shutdown)的路径。因为该命令要求提供具有关闭权限的用户帐户,因此必须在 "Arguments"(参数)字段中输入用户名/口令凭证。例如:
    • 参数:-u root -pnbuser shutdown

设置了 "Advanced Properties"(高级属性)标签下列出的字段后,可以执行以下操作:

  • 启动 MySQL 服务器:右键单击 MySQL 服务器节点,然后选择 "Start"(启动)。
  • 停止 MySQL 服务器:右键单击 MySQL 服务器节点,然后选择 "Stop"(停止)。
  • 运行外部管理工具:右键单击 MySQL 服务器节点,然后选择 "Run Administration Tool"(运行管理工具)。

创建数据库实例

  1. 创建将在本教程中使用的数据库实例。为此,请右键单击 MySQL 服务器节点,然后选择 "Create Database"(创建数据库)。
  2. 在显示的对话框中,键入 affablebean。选中 "Grant Full Access to"(将完全访问权限授予)选项,然后从下拉字段中选择 。这样就可以使用 localhost 主机上的 root 帐户访问数据库了。此后,在服务器上创建连接池时,需要提供 root 帐户和 nbuser 口令作为用户名/口令凭证,才能向服务器授予数据库访问权限。
  3. 单击 "OK"(确定)。在执行此操作后,将创建名为 affablebean 的数据库,并自动建立与数据库的连接。连接将通过连接节点 (数据库连接节点) 显示在 "Services"(服务)窗口中。

    注:连接节点一直保留在 "Services"(服务)窗口中。如果重新启动 IDE,则显示的连接节点 () 将带有锯齿线,这指示连接已中断。要重新连接到数据库,请确保数据库服务器正在运行,然后右键单击节点,并选择 "Connect"(连接)。

  4. 展开 affablebean 数据库的连接节点。连接中包含数据库的默认方案 (affablebean),其中包括表、视图和过程的节点。目前,这些节点都是空的,因为我们尚未创建任何内容。

在此阶段,您已从 IDE 中连接到 MySQL 服务器,并创建名为 affablebean 的新数据库,该数据库将在整个教程中使用。另外,您已在 IDE 中创建 Java Web 项目,并确认可以成功构建该项目并将其部署到开发服务器上,且已在运行时在浏览器中将其打开。现在,开发环境已经准备就绪,您可以开始设计应用程序的数据模型了。


另请参见


参考

  1. ^ 使用 GlassFish v3,可通过空口令创建到 MySQL 数据库服务器的连接池。GlassFish Open Source Edition 3.0.1 是随 NetBeans IDE 6.9 一起提供的,不支持使用空口令创建连接。请参见 GlassFish 问题 12221
get support for the NetBeans

Support


By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2013, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo