diff --git a/主程序和案例 b/主程序和案例 new file mode 100644 index 0000000..8475fd3 --- /dev/null +++ b/主程序和案例 @@ -0,0 +1,57 @@ +import java.time.LocalDate; +import java.util.Scanner; + +public class MainTest { + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + HistoryCommand history = new HistoryCommand(); + + // 实验案例1:创建Article对象测试 + System.out.println("----- 实验案例1:创建并打印文章对象 -----"); + Article art = new Article( + "Java入门教程", + "面向对象、集合、作业讲解", + "https://test.com/java", + "张老师", + LocalDate.of(2025,5,7) + ); + art.showInfo(); + System.out.println(); + + // 实验案例2:命令别名 + 历史记录 + URL校验 交互测试 + System.out.println("----- 实验案例2:命令行交互测试 -----"); + System.out.println("指令示例:c 网址、h、exit"); + while(true){ + System.out.print("请输入命令:"); + String input = sc.nextLine().trim(); + + // 记录原始命令到历史 + history.addCommand(input); + + // 解析别名 + String realCmd = CommandUtil.parseAlias(input); + System.out.println("解析后命令:" + realCmd); + + // 简单指令分发 + if(realCmd.startsWith("crawl")){ + String[] parts = realCmd.split(" ",2); + if(parts.length >= 2){ + String url = parts[1]; + if(CommandUtil.checkUrl(url)){ + System.out.println("URL合法,开始爬取:" + url); + }else{ + System.out.println("URL格式不合法!"); + } + } + }else if(realCmd.equals("history")){ + // 查看历史 + history.showHistory(); + }else if(realCmd.equals("exit")){ + System.out.println("退出程序"); + break; + } + System.out.println("------------------------"); + } + sc.close(); + } +} \ No newline at end of file