STS3与IDEA文件路径解析问题复盘

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
云解析DNS,个人版 1个月
简介: STS3与IDEA文件路径解析问题复盘

问题出现


搭建spring mvc boot程序,并整合mybatis。已经成功运行于Spring开发套件STS3中,移植到IDEA中出现没有sqlSessionFactory,因此也就创建不了服务层数据Bean。


解决思路


  • 对比源程序文件和引用的jar包,确认无误
  • 修改application.yml文件中的端口,查看调试代码中端口号是否被修改,查看该文件是否被正确加载
  • 如果正确加载后,仍旧不能读取数据库数据,接着继续查找mybatis配置属性块,查看检索的bean包对不对,以及mapper.xml文件路径对不对
  • 本文中遇到的问题就出现在mapper.xml文件路径上
  • 在STS3中,路径是classpath:/resources/mapping/*Mapper.xml,将文件放到IDEA中始终创建数据库Bean出现问题,于是在这个路径基础上各种换,把路径写全,相对路径等操作,还是不行
  • 最后通过IEDA的copy path功能,提取到绝对路径值,代入其中,可以正常初始化了,但是还是出现数据访问问题,说明问题还是出现在路径上,因为在STS3中运行正确
  • 明确了路径问题,接着写相对路径,其值是classpath:\resources\mapping\*Mapper.xml,终于可以正确访问了


为什么一开始没想到


因为windows和linux路径访问是区别的,一个是/,一个是\,没有想到同一个操作系统中会出现这种问题,只考虑绝对和相对路径来回更改


问题深入理解


因为在图形框架中加载图片时也遇到过路径问题,因此总结一下路径问题出现有三种方式


  • 操作系统不同
  • 直接是文件中赋值,不是字符串形式
  • 代码中以字符串形式


对于第一种和第三种很好解决,特别地,第二种问题出现方式,因为解析配置文件是直接将路径值代入到代码中,根路径中已经出现了操作系统特有的路径分隔符,配置文件中的值补全到其中,如果不同,就会出现这种形式的路径D:\myproject\src\main/resources/mapping/UserMapper.xml,因此无法访问。


相关文章
|
3月前
|
Java Maven
Javaweb之 IDEA集成Maven的详细解析(2)
3、填写模块名称,坐标信息,点击finish,创建完成
120 4
|
存储 SpringCloudAlibaba Cloud Native
【微服务33】分布式事务Seata源码解析一:在IDEA中启动Seata Server
【微服务33】分布式事务Seata源码解析一:在IDEA中启动Seata Server
1021 0
【微服务33】分布式事务Seata源码解析一:在IDEA中启动Seata Server
|
2月前
|
Linux 数据处理
探索Linux中的namei命令:文件路径解析的利器
`namei`是Linux工具,解析文件路径展示每个组件详情,包括类型、权限、属主等。它递归从根目录开始,帮助理解文件系统结构,尤其处理符号链接和挂载点。使用 `-l` 选项提供长格式输出, `-m` 以挂载点显示, `-x` 显示调试信息。示例用法如解析`/home/user/documents/report.txt`路径。注意权限、路径正确性及符号链接影响。可与其他命令结合使用。
|
3月前
|
Java Maven
Javaweb之 IDEA集成Maven的详细解析(1)
03. IDEA集成Maven 我们要想在IDEA中使用Maven进行项目构建,就需要在IDEA中集成Maven 3.1 配置Maven环境 3.1.1 当前工程设置 1、选择 IDEA中 File => Settings => Build,Execution,Deployment => Build Tools => Maven
177 3
|
敏捷开发 Java 测试技术
Spring源码解析 | 第一篇 :IntelliJ IDEA编译Spring5.3.x源码
Spring源码解析 | 第一篇 :IntelliJ IDEA编译Spring5.3.x源码
|
Java
IDEA 报错:org.apache.jasper.JasperException:无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri
IDEA 报错:org.apache.jasper.JasperException:无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri
2438 0
IDEA 报错:org.apache.jasper.JasperException:无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri
|
10月前
|
Cloud Native IDE Go
Git与IDEA: 解决`dev`分支切换问题及其背后原因 为何在IDEA中无法切换到`dev`分支?全面解析!
Git与IDEA: 解决`dev`分支切换问题及其背后原因 为何在IDEA中无法切换到`dev`分支?全面解析!
247 0
|
SQL Java 关系型数据库
MyBatis版本升级导致OffsetDateTime入参解析异常问题复盘
最近有一个数据统计服务需要升级SpringBoot的版本,由1.5.x.RELEASE直接升级到2.3.0.RELEASE,考虑到没有用到SpringBoot的内建SPI,升级过程算是顺利。但是出于代码洁癖和版本洁癖,看到项目中依赖的MyBatis的版本是3.4.5,相比当时的最新版本3.5.5大有落后,于是顺便把它升级到3.5.5。升级完毕之后,执行所有现存的集成测试,发现有部分OffsetDateTime类型入参的查询方法出现异常,于是进行源码层面的DEBUG找到最终的问题并且解决。
183 0
MyBatis版本升级导致OffsetDateTime入参解析异常问题复盘
|
开发工具 Android开发
实战必备开发工具解析(二)请别再用eclipse了,idea安装与使用
实战必备开发工具解析(二)请别再用eclipse了,idea安装与使用
102 0
实战必备开发工具解析(二)请别再用eclipse了,idea安装与使用
IDEA黄色警告解析集锦 - 类名【xxx】应以Impl结尾
IDEA黄色警告解析集锦 - 类名【xxx】应以Impl结尾
281 0

热门文章

最新文章

推荐镜像

更多