先前用eclipse搭建了SSM框架,这次首次使用IDEA搭建,按照原来的步骤做,发现target下没有mapper.xml,并且访问网页时报错:Invalid bound statement (not found): cn.edu.ujn.ch17.dao.ThingMapper.selectById 即找不到mapper映射文件。

我的项目目录为:
在这里插入图片描述
如上图所示,因为mapper.xml在src\main\java下,而不是在resources下,导致target不能包含它们。

eclipse会自动把项目src\main\java\目录下的配置文件(.xml)和资源文件(.properties)搬运到target目录下,而IDEA默认是不会帮我们做这件事的。

因此,在porm.xml的< build>标签中加:

		<resource> 
			<directory>src/main/java</directory> 
			<includes> 
				<include>**/*.properties</include> 
				<include>**/*.xml</include> 
			</includes> 
			<filtering>false</filtering> 
		</resource> 
		<resource>
			<directory>src/main/resources</directory> 
			<includes> 
				<include>**/*.properties</include>
				<include>**/*.xml</include> 
			</includes> 
			<filtering>false</filtering> 
		</resource> 

意思是把在src/main/java和src/main/resources目录下的xml文件(和properties文件)都包含进去。

然后选中项目,右击选择maven-reload project(重新加载项目),这样就成功了。

原文:https://www.cnblogs.com/ethan-37/p/12723703.html 侵删

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐