10/28
实验三:JFinal极速开发框架实验
一、实验要求
根据参考资料,学习JFinal极速开发框架的使用并如下任务:
任务一:了解Maven及其使用方法,总结其功能作用(占20%)
任务二:学习JFinal框架,基于Maven建立JFinal工程,并对JFinal框架功能进行总结介绍(占30%)
任务三:基于JFinal完成一个简单的学生信息管理系统(要求实现学生信息的增删改查)(占40%)
实验总结:(占10%)
二、实验步骤
任务一:
Maven 是一个项目管理和自动构建工具,特别适用于 Java 项目。以下是 Maven 的主要功能和作用:
1. **依赖管理**:Maven 通过坐标定位的方式自动下载和管理项目所需的依赖库,避免了手动下载和管理的繁琐过程,降低了项目的维护成本。
2. **构建自动化**:Maven 内置了构建生命周期,支持项目的编译、测试、打包等构建过程,并提供了丰富的插件来扩展构建功能。
3. **项目信息一致性**:通过 POM 文件,Maven 可以确保项目的构建、报告和文档具有一致的信息。
4. **跨平台性**:Maven 使用 Java 编写,因此可以在任何支持 Java 的平台上运行,具有良好的跨平台性。
5. **多模块管理**:Maven 支持多模块项目的管理,使得大型项目可以分解为多个子模块,每个子模块都可以独立构建和管理。
6. **标准化构建流程**:Maven 通过定义有序的构建阶段,确保项目的构建过程是一致的,减少了不同开发人员或不同构建环境之间的差异。
7. **自动化构建**:Maven 能够自动执行构建生命周期中的各个阶段,无需开发人员手动干预,提高了构建效率。
8. **扩展性**:Maven 允许通过插件来扩展构建生命周期,开发人员可以根据项目需求添加自定义的构建任务。
9. **基于模型的构建**:Maven 能够将任意数量的项目构建到预定义的输出类型中,如 JAR,WAR 或基于项目元数据的分发,而不需要在大多数情况下执行任何脚本。
10. **项目信息的一致性站点**:使用与构建过程相同的元数据,Maven 能够生成一个网站或 PDF,包括您要添加的任何文档,并添加到关于项目开发状态的标准报告中。
11. **发布管理和发布单独的输出**:Maven 将不需要额外的配置,就可以与源代码管理系统(如 Subversion 或 Git)集成,并可以基于某个标签管理项目的发布。它也可以将其发布到分发位置供其他项目使用。Maven 能够发布单独的输出,如 JAR,包含其他依赖和文档的归档,或者作为源代码发布。
12. **并行构建**:Maven 能够分析项目依赖关系,并行构建工作,使用此功能,可以将性能提高 20%-50%。
13. **更好的错误和完整性报告**:Maven 使用了较为完善的错误报告机制,它提供了指向 Maven Wiki 页面的链接,您将在其中获得有关错误的完整描述。
总结来说,Maven 的主要作用是简化和标准化项目构建过程,它将项目的编译、生成文档、创建报告、发布、部署等任务无缝衔接,构建成一套完整的生命周期,从而提高开发效率和质量。
任务二:
基于Maven建立JFinal工程
- 1. 新建Maven项目:
- 打开IDEA,创建一个新的项目(Create New Project)。
- 选择Maven项目,不使用模板,填写项目名称,例如jfinal-demo,完成项目创建。
- 2. 配置父POM:
- 删除自动生成的src目录。
- 编辑根目录下的pom.xml,将打包格式设置为pom,作为父工程,用于定义各模块依赖的包的版本、编码方式等。
- 3. 添加JFinal依赖:
- 在pom.xml中添加JFinal的依赖项,例如:
xml
<dependencies>
<dependency>
<groupId>com.jfinal</groupId>
<artifactId>jfinal</artifactId>
<version>${latest.version}</version>
</dependency>
</dependencies>
- 替换${latest.version}为JFinal的最新版本号。
- 4. 新建子Module:
- 在父项目上单击鼠标右键,新建子Module,例如jfinal-web。
- 创建时选择使用模板,完成模块创建。
- 5. 编写测试代码:
- 在新建的Module中编写测试用代码,例如创建一个简单的Controller来测试JFinal是否正确配置和运行。
JFinal框架功能总结介绍
- 1. MVC架构:
- JFinal遵循MVC设计模式,将应用程序分为模型(Model)、视图(View)和控制器(Controller)三个部分,使代码更加清晰、模块化。
- 2. 简单易用:
- JFinal提供简单易用的API,通过约定大于配置的方式,减少了开发者的配置工作,使开发更加高效。
- 3. 路由功能:
- JFinal的路由配置非常灵活,支持RESTful风格的URL映射,使得URL与控制器方法之间的关系更加清晰。开发者可以通过注解或配置文件定义路由规则。
- 4. ActiveRecord模式:
- JFinal提供了ActiveRecord模式,将数据库表映射成Java对象,使得数据库操作更加简便。支持主流的数据库操作,如查询、插入、更新、删除等。
- 5. 模板引擎支持:
- JFinal默认采用JFinal Template作为模板引擎,支持类似JSP的模板语法,方便开发者在视图中嵌入动态内容。
- 6. 插件体系:
- JFinal提供了丰富的插件体系,包括缓存插件、任务调度插件、路由插件等,使得开发者可以根据项目需要灵活地添加额外的功能。
- 7. 极速开发:
- JFinal的核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。
- 8. 数据库操作:
- JFinal通过Model类和ActiveRecordPlugin进行数据库操作,无需编写SQL语句,直接调用对象的方法即可完成数据库操作。
- 9. 事务管理:
- JFinal支持事务管理,确保在数据库操作中的一组操作要么全部成功提交,要么全部失败回滚,保证了数据的一致性和完整性。
任务三:
主界面:从数据查询出所有学生信息并打印在界面上
添加学生信息:侧边栏选择选项添加学生信息后跳转界面
输入要添加的学生信息
点击提交后跳转到主界面
点击编辑:进入修改页面
点击删除后删除学生信息
三、实验总结
本次实验旨在通过学习JFinal极速开发框架的使用,掌握基于Maven构建JFinal工程的方法,并实现一个简单的学生信息管理系统,以加深对JFinal框架及其MVC架构的理解,并提高实际开发能力。通过本次实验我学习了Maven的基本功能和作用,包括依赖管理、构建自动化、项目信息一致性等,并成功使用Maven创建了JFinal工程。通过配置父POM文件和添加JFinal依赖,为后续的开发工作打下了基础。
通过本次实验,成功实现了一个简单的学生信息管理系统,包括学生信息的增删改查功能。该系统界面简洁,操作方便,能够满足基本的学生信息管理需求。

浙公网安备 33010602011771号