集美大学 计算机 郑如滨

教学博客

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

说明:

本文由人机协作生成,作者提供主要思路,借助AI通过多轮迭代逐步优化生成。

核心思路

教学目标:让学生体验“在AI辅助下,从零创建Maven项目,引入一个第三方库,并跑通一个核心功能”的全流程

一个简易Maven入门教程:Maven简要使用说明:在IDEA中创建一个基于POI的处理Excel文件的简单Java Maven项目

📦 统一简化方案 (适用于所有项目)

项目 90分钟极简版核心目标 可选技术栈(亦可自选) 功能要求极简版
1. 天气预报 调用API(难点),解析JSON,打印结果。 仅保留 OkHttp + Jackson 1. 查询一个固定城市的天气(使用免费天气API查询获得包含填起的JSON数据)。2. 解析JSON,控制台打印温度和天气描述。进阶:将结果保存为CSV
2. 基于SQLite的学生管理系统或基于你现有的系统进行改造。 连接SQLite数据库,执行一次插入和查询 SQLite JDBC + Jackson (用于JSON输出) 1. 创建数据库和一张学生表。2. 插入一条学生数据。3. 查询并打印所有学生。4. 可通过AI生成测试数据。5. 进阶 (三选二):在基础功能上,从以下任务中任选两项完成:① 成绩统计:计算并打印学生的平均成绩。② 信息查找:实现按姓名的模糊搜索功能。③ 数据导出:将查询到的所有学生对象列表,使用Jackson库转换为JSON数组字符串,并输出(或保存)到本地的 .txt.json 文本文档
3. 网页图片下载器 解析网页,下载一张图片 Jsoup (用Java内置IO下载) 1. 输入一个网页URL。2. 用Jsoup找到第一张图片的链接。3. 下载该图片到本地
4. 博客生成器 读取Markdown,转换为纯文本段落 CommonMark 1. 读取一个.md文件。2. 将Markdown内容转换为HTML字符串,并保存为HTML页面。3. 控制台输出前200字符。
5. 邮件群发工具 读取Excel,打印联系人信息 Apache POI (xlsx) 1. 读取预设的Excel文件。注:可通过AI生成。2. 解析第一行数据。3. 控制台打印姓名和邮箱。
6. 数据转换工具 读取CSV,转换为List并打印 OpenCSV 1. 读取一个预设的students.csv文件。注:CSV文件内容可通过AI生成。2. 将每一行解析为Student对象(字段:id, name, email, score)。3. 控制台打印所有对象。4. 编写将一组Student对象生成为新CSV文件的功能。5. 进阶:为students.csv生成一份数据质量检测报告,必须包含以下两项检测:无效邮箱检测:识别并列出所有格式不符合 xxx@xxx.xxx 基本规则的邮箱;异常分数检测:识别并列出所有 score 字段不在 0-100 合理范围内的数据行。
7. 数据可视化平台 提供静态数据,生成一个图表JSON 仅保留 ECharts Java (不涉及Web) 1. 用代码构造一组静态数据(如每月销售额)。2. 使用ECharts Java API生成一个柱状图的option配置。3. 将option转为JSON字符串并输出到文件/控制台。
8. 基于Lucene的文本文档搜索引擎 创建索引,执行一次简单查询 Lucene + IK Analyzer 1. 使用IK Analyzer对事先准备好的大量文本文档(如.txt、.csv、.log、.ini等)进行分词。2. 创建Lucene索引。3. 实现一个简单查询(如:查找包含"编程"的文档)。4. 控制台输出查询结果。5.进阶:使用 Apache Tika 处理 pdf、docx、xlsx 等文档
9. 基于Lucene的词频统计与可视化小系统 读取中文文档,统计高频词并以交互式网页图表呈现 Lucene + IK Analyzer + ECharts Java 1. 使用 IK Analyzer 对一篇预设的中文文本文档进行分词。2. 遍历分词结果,统计所有词语的出现频率(词频)。3. 将统计出的前10个高频词及其词频在控制台打印输出。4. 进阶1:使用ECharts Java库,根据高频词数据生成一个柱状图的完整配置(Option对象),并将该配置输出为一个独立的HTML文件,在浏览器中打开即可显示交互式图表。5. 进阶2:对多篇文档进行词频统计,并比较不同文档的高频词差异,或在同一图表中用不同系列(series)展示。
10. 智能问答助手 调用LLM API(如DeepSeek、通义千问)实现对话功能 OkHttp + Jackson + 大模型API 1. 配置API密钥和基础URL。2. 封装API请求方法。3. 实现单轮问答功能。4. 控制台输入问题,输出AI回答。5.进阶:实现多轮对话记忆功能。

🧭 标准化教学流程 (90分钟)

完成这个项目,你会接触到一些新朋友:Maven(项目管家)、pom.xml(依赖清单)、CSV(数据表格)、ECharts(图表画家)。别担心,我们的通关秘诀是:别管原理,先复制粘贴,跑起来再说! 看到程序运行成功,你就赢了第一局。

如果运行中冒出“错误”,这可是绝佳的求助信号!直接把它丢给AI(比如:“我用Java写代码时遇到了这个错误:[粘贴错误信息],请问怎么解决?”),你就能亲眼看到AI是如何帮你“打怪升级”的。

🌟 组队加成建议 (2人最佳)

  • 驾驶员:主要负责和AI对话,生成、修改代码,并让项目跑起来。

  • 领航员:专注于理解“驾驶员”写出的每一行代码、每一个配置是干什么的。搞懂概念后,再讲给队友听。

在AI时代,一个会操作、一个懂原理的两人小队,足以攻克大部分入门项目。大胆去试吧!

  1. 创建Maven项目 (15分钟)

    1. 目标:在IDEA中创建新项目,认识pom.xml

    2. AI提示词示例: > “我需要创建一个Java的Maven项目,请给我创建项目的步骤,以及在pom.xml中如何设置JDK版本为21。”

    3. 或者直接通过lingma插件的智能体模式,给出项目概述、项目运行环境,让其生成相应的pom.xml。

  2. 在pom.xml中添加依赖 (20分钟)

    1. 目标:在pom.xml中添加极简版技术栈所需的1-2个依赖。

    2. AI提示词示例 (以天气预报为例): > “在我的Maven项目pom.xml里,请帮我添加okhttp和jackson-databind这两个依赖的最新版本。”

  3. 编写并理解核心代码 (40分钟)

    1. 目标:利用AI生成极简版功能代码,老师带领学生阅读并理解关键行。

    2. AI提示词示例 (以天气预报为例): >用 Java 写一个 WeatherService 类,使用 OkHttp 调用 和风天气(QWeather)的免费天气实况接口(例如:https://devapi.qweather.com/v7/weather/now),使用 Jackson 解析返回的 JSON,并打印出城市名、温度和天气描述(如‘晴’、‘多云’)。请在代码中注释说明如何免费获取 API Key(提示:访问 https://dev.qweather.com 注册即可),并做好网络异常和 JSON 解析异常的处理。注意:天气API也可使用接口盒子。

  4. 运行与调试 (15分钟)

    1. 目标:解决常见问题(如依赖下载失败、API Key配置、网络超时),让程序跑通。
    2. 思考: 在现有的基础上进一步完成进阶任务。
posted on 2025-12-16 22:18  zhrb  阅读(120)  评论(0)    收藏  举报