大三每日总结
实验三:JFinal极速开发框架实验
一、实验要求
根据参考资料,学习JFinal极速开发框架的使用并如下任务:
任务一:了解Maven及其使用方法,总结其功能作用(占20%)
任务二:学习JFinal框架,基于Maven建立JFinal工程,并对JFinal框架功能进行总结介绍(占30%)
任务三:基于JFinal完成一个简单的学生信息管理系统(要求实现学生信息的增删改查)(占40%)
实验总结:(占10%)
二、实验步骤
任务一:
maven相关了解,可在菜鸟教程学习
maven相关功能总结
1. 项目对象模型(POM):
Maven使用POM文件来描述项目的配置信息,包括项目的依赖、插件、目录结构、构建目标等。POM文件是XML格式的。
2. 一致的构建生命周期:
Maven定义了一套标准的构建生命周期,包括clean、compile、test、package、install和deploy等阶段。这简化了构建过程,使得开发者可以通过执行特定的目标来完成不同的构建任务。
3. 依赖管理:
Maven自动管理项目的依赖关系。通过在POM文件中声明依赖,Maven能够自动下载所需的库文件,并确保项目的构建和运行环境都包含正确的依赖项。
4. 插件系统:
Maven采用插件系统来扩展其功能。插件可以用于执行各种任务,如编译、测试、打包、部署等。许多常见的开发任务都可以通过现有的Maven插件来完成。
5. 集中化的仓库管理:
Maven使用中央仓库(Central Repository)作为默认的依赖项存储库。开发者可以从中央仓库下载常见的Java库。此外,Maven还支持自定义本地仓库和远程仓库。
6. 多模块支持:
Maven支持多模块项目,允许将大型项目划分为独立的模块,每个模块都有自己的POM文件和目录结构。
7. 自动化项目生成:
Maven提供了一些Archetypes,这是预定义项目模板,用于快速生成具有特定结构和配置的项目。
8. 文档生成:
Maven可以通过插件生成项目的文档,包括JavaDoc文档和站点文档。
9. 易于扩展:
Maven的插件系统和构建生命周期的设计使其易于扩展。开发者可以编写自定义插件以满足项目的特定需求。
10. 命令行工具和集成开发环境(IDE)支持:
Maven可以通过命令行工具执行,也能与主流的集成开发环境(如Eclipse、IntelliJ IDEA)集成,使得开发者能够在熟悉的环境中使用Maven。
任务二:
JFinal相关了解学习,之前只听说过,没实际操作过,本次对JFinal进行系统的学习和了解
根据社区网址,了解并学习JFinal的使用
JFinal相关总结
1. MVC 架构:
Model-View-Controller(MVC)模式: JFinal框架采用MVC模式,使开发者能够将应用程序分成模型、视图和控制器,提高了代码的可维护性和可扩展性。
2. 极简的设计:
简洁的API设计: JFinal提供了简单、直观的API,降低了开发的复杂度,使得常见的操作更加容易。
3. 插件扩展机制:
插件式设计: 框架提供了丰富的插件机制,开发者可以方便地扩展框架功能,例如,JFinal提供了热加载、Druid连接池等插件。
4. AOP支持:
面向切面编程(AOP): 支持AOP,使得在程序中更容易实现横切关注点的编程。
5. 路由配置:
强大的路由配置: JFinal允许通过简单的配置设置路由,使URL与相应的控制器方法进行映射。
6. 编写简便:
代码生成工具: 提供了代码生成器,可以自动生成Model、Controller等文件,简化了开发过程。
7. 强大的拦截器:
拦截器机制: 拦截器可以在请求到达Controller之前或之后对请求进行处理,使得处理流程更加灵活。
8. 异常处理:
全局异常处理: 支持全局异常处理,能够捕获处理异常并进行统一的处理。
9. 支持多种视图渲染:
多种视图引擎支持: 支持多种视图引擎,包括FreeMarker、JSP、Velocity等,方便开发者根据需要选择合适的视图渲染方式。
10. 轻量级和高性能:
轻量级高性能: JFinal框架本身设计简洁轻量,性能出色,适合于构建中小型Web应用。
任务三:
管理系统实现,根据社区相关介绍,以及官方说明文档,对JFinal进行编写
首先利用maven导入资源包
编写基础类
编写容器
创建数据库
编写相关页面代码,下面是基础信息管理的展示
首先首页展示
点击学生信息管理,可跳转到信息页面,查询的学生的所以信息
删除可删除学生信息
修改可修改学生信息
同时可以添加新的学生信息
最终添加成功,完成管理系统的增删改查功能
三、实验总结
本次实验出现的问题是数据调用不到,接收不到数据库的信息,页面跳转丢失
主要在容器中添加页面相对应的跳转地址
同时注意数据库的连接配置
还有信息列表的对应传递
尤其是这里,一开始没有对应上,每次传值都为空,无法浏览数据
实验总结:本次JFinal是第一次编写JFinal的项目,整体难度还是比较大的,主要是对其中的很多知识并不理解,导致边做边查,进展缓慢,而且这次做的页面也是比较难看,不过经过本次实验,我对JFinal的了解更尽一步,对他相关的知识有了一些了解,收获还是很大的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南