如图,MyBatis中,在实现数据库表一对一关联时运行测试类test报PooledDataSource forcefully closed/removed all connections,逐步检查后发现测试类、映射文件mapper.xml都没有错误,也添加了mapper.xml文件注册到mybatis核心文件里面,数据库配置文件无问题。
经过多番检查后发现是mybatis核心文件里面缺少了<setting>节点,<setting>节点应该加在<properties>下方,<typeAliases>上方。
解决:
加入
<settings> <setting name="autoMappingBehavior" value="FULL"/> //表示mapper文件的resultMap使用自动映射,不需要列出所有的字段名。(原因在这里,我在mapper文件里面省略了所有的字段名,却忘记添加这个setting) (真的超容易忘记bushi) <setting name="cacheEnabled" value="true"/> //使用MyBatis的缓存,提高查询效率 </settings>