自己动手写SpringMVC(四)

本文详细介绍了如何通过DispatcherServlet实现任务一:扫描并维护项目中的所有bean。具体步骤包括利用URL获取资源路径、递归遍历目录及子目录、收集类信息并存储于List中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文将主要实现DispatcherServlet!

之前已经分析过DispatcherServlet主要的任务,分为五个任务,我们从任务一开始开始实现!

任务1:把项目中所有的bean扫描,进行维护;

实现代码如下:

private void scanPackage(String basePackage){
		URL url = this.getClass().getClassLoader().getResource("/"+basePackage.replaceAll("\\.", "/"));
		String filestr = url.getFile();
		File file = new File(filestr);
		String[] filesStr = file.list();
		for(String path:filesStr){
			File filePath = new File(filestr+path);
			if(filePath.isDirectory()){
				scanPackage(basePackage+"."+path);
			}else{
								classNames.add(basePackage+'.'+filePath.getName());		
            }
		}
	}

由上面的代码可以看出,通过扫描所有文件之后,需要将类信息存放在一个名为classNames的List中,这里我用的是ArrayList:

private List<String> classNames = new ArrayList<String>();

任务1想要实现,这里需要调用scanPackage("com.tx");

到此任务1完成!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值