首页
开源
资讯
活动
开源许可证
软件工程云服务
软件代码质量检测云服务
持续集成与部署云服务
社区个性化内容推荐服务
贡献审阅人推荐服务
群体化学习服务
重睛鸟代码扫描工具
登录
注册
代码拉取完成,页面将自动刷新
Watch
15
Star
71
Fork
44
freakchicken
/
dbapi-spring-boot-starter
Fork 仓库
加载中
取消
确认
代码
Issues
2
Pull Requests
0
Wiki
0
统计
更新失败,请稍后重试!
Issues
/
详情
移除标识
内容风险标识
本任务被
标识为内容中包含有代码安全 Bug 、隐私泄露等敏感信息,仓库外成员不可访问
打包成jar包后,spring没办法通过File的形式访问jar包里面的文件
待办的
#I61KGJ
三目鸟
创建于
2022-11-16 22:31
打包成jar包后,spring没办法通过File的形式访问jar包里面的文件,如下图 ![打包成jar后,无法通过读取文件的方式读取jar文件里面配置文件](https://foruda.gitee.com/images/1668750160578153007/99665dc3_1428912.png "屏幕截图") 百度之后问题原因是: 打包之后,spring没办法通过File的形式访问jar包里面的文件。 https://blog.csdn.net/u013084266/article/details/112238267 综上所述,我做了如下尝试,可以解决问题。 DBApi类 ``` public DBApi(DBConfig dbConfig) { this.dbConfig = dbConfig; try { String sqlContent; try { File sqlFile = ResourceUtils.getFile(this.dbConfig.getSql()); sqlContent = FileUtils.readFileToString(sqlFile, StandardCharsets.UTF_8); } catch (Exception exception) { ClassPathResource sqlResource = new ClassPathResource(this.dbConfig.getSql()); InputStream sqlInputStream = sqlResource.getInputStream(); sqlContent = IOUtils.toString(sqlInputStream, Charsets.toCharset(StandardCharsets.UTF_8)); } this.sqlMap = XmlParser.parseSql(sqlContent); String dsContent; try { File dsFile = ResourceUtils.getFile(this.dbConfig.getDatasource()); dsContent = FileUtils.readFileToString(dsFile, StandardCharsets.UTF_8); } catch (Exception exception) { ClassPathResource dsResource = new ClassPathResource(this.dbConfig.getDatasource()); InputStream dsInputStream = dsResource.getInputStream(); dsContent = IOUtils.toString(dsInputStream, Charsets.toCharset(StandardCharsets.UTF_8)); } this.dataSourceMap = XmlParser.parseDatasource(dsContent); } catch (Exception e) { e.printStackTrace(); } } ```
打包成jar包后,spring没办法通过File的形式访问jar包里面的文件,如下图 ![打包成jar后,无法通过读取文件的方式读取jar文件里面配置文件](https://foruda.gitee.com/images/1668750160578153007/99665dc3_1428912.png "屏幕截图") 百度之后问题原因是: 打包之后,spring没办法通过File的形式访问jar包里面的文件。 https://blog.csdn.net/u013084266/article/details/112238267 综上所述,我做了如下尝试,可以解决问题。 DBApi类 ``` public DBApi(DBConfig dbConfig) { this.dbConfig = dbConfig; try { String sqlContent; try { File sqlFile = ResourceUtils.getFile(this.dbConfig.getSql()); sqlContent = FileUtils.readFileToString(sqlFile, StandardCharsets.UTF_8); } catch (Exception exception) { ClassPathResource sqlResource = new ClassPathResource(this.dbConfig.getSql()); InputStream sqlInputStream = sqlResource.getInputStream(); sqlContent = IOUtils.toString(sqlInputStream, Charsets.toCharset(StandardCharsets.UTF_8)); } this.sqlMap = XmlParser.parseSql(sqlContent); String dsContent; try { File dsFile = ResourceUtils.getFile(this.dbConfig.getDatasource()); dsContent = FileUtils.readFileToString(dsFile, StandardCharsets.UTF_8); } catch (Exception exception) { ClassPathResource dsResource = new ClassPathResource(this.dbConfig.getDatasource()); InputStream dsInputStream = dsResource.getInputStream(); dsContent = IOUtils.toString(dsInputStream, Charsets.toCharset(StandardCharsets.UTF_8)); } this.dataSourceMap = XmlParser.parseDatasource(dsContent); } catch (Exception e) { e.printStackTrace(); } } ```
评论 (
0
)
三目鸟
创建了
任务
三目鸟
修改了
描述
原值
打包成jar后,无法通过读取文件的方式读取jar包里面配置文件
```
DBApi类中 DBApi(DBConfig dbConfig)方法 我做了如下的尝试。
public DBApi(DBConfig dbConfig) {
this.dbConfig = dbConfig;
try {
String sqlContent;
try {
File sqlFile = ResourceUtils.getFile(this.dbConfig.getSql());
sqlContent = FileUtils.readFileToString(sqlFile, StandardCharsets.UTF_8);
} catch (Exception exception) {
ClassPathResource sqlResource = new ClassPathResource(this.dbConfig.getSql());
InputStream sqlInputStream = sqlResource.getInputStream();
sqlContent = IOUtils.toString(sqlInputStream, Charsets.toCharset(StandardCharsets.UTF_8));
}
this.sqlMap = XmlParser.parseSql(sqlContent);
String dsContent;
try {
File dsFile = ResourceUtils.getFile(this.dbConfig.getDatasource());
dsContent = FileUtils.readFileToString(dsFile, StandardCharsets.UTF_8);
} catch (Exception exception) {
ClassPathResource dsResource = new ClassPathResource(this.dbConfig.getDatasource());
InputStream dsInputStream = dsResource.getInputStream();
dsContent = IOUtils.toString(dsInputStream, Charsets.toCharset(StandardCharsets.UTF_8));
}
this.dataSourceMap = XmlParser.parseDatasource(dsContent);
} catch (Exception e) {
e.printStackTrace();
}
}
```
新值
打包成jar后,无法通过读取文件的方式读取jar包里面配置文件
![输入图片说明](https://foruda.gitee.com/images/1668750160578153007/99665dc3_1428912.png "屏幕截图")
```
DBApi类中 DBApi(DBConfig dbConfig)方法 我做了如下的尝试。
public DBApi(DBConfig dbConfig) {
this.dbConfig = dbConfig;
try {
String sqlContent;
try {
File sqlFile = ResourceUtils.getFile(this.dbConfig.getSql());
sqlContent = FileUtils.readFileToString(sqlFile, StandardCharsets.UTF_8);
} catch (Exception exception) {
ClassPathResource sqlResource = new ClassPathResource(this.dbConfig.getSql());
InputStream sqlInputStream = sqlResource.getInputStream();
sqlContent = IOUtils.toString(sqlInputStream, Charsets.toCharset(StandardCharsets.UTF_8));
}
this.sqlMap = XmlParser.parseSql(sqlContent);
String dsContent;
try {
File dsFile = ResourceUtils.getFile(this.dbConfig.getDatasource());
dsContent = FileUtils.readFileToString(dsFile, StandardCharsets.UTF_8);
} catch (Exception exception) {
ClassPathResource dsResource = new ClassPathResource(this.dbConfig.getDatasource());
InputStream dsInputStream = dsResource.getInputStream();
dsContent = IOUtils.toString(dsInputStream, Charsets.toCharset(StandardCharsets.UTF_8));
}
this.dataSourceMap = XmlParser.parseDatasource(dsContent);
} catch (Exception e) {
e.printStackTrace();
}
}
```
三目鸟
修改了
描述
原值
打包成jar
后,无法通过读取文件的方式读取jar包里面配置文件
![
输入图片说明](https://foruda.gitee.com/image
s
/1668750160578153007/99665dc3_1428912.png "屏幕截图")
```
DBA
p
i类中 DBApi(DBCo
n
fig dbConfig)方法 我做了如下的尝试。
public DBApi(DBConfig dbConfig) {
this.dbConfig = dbConfig;
try {
String sqlContent;
try {
File sqlFile = ResourceUtils.getFile(this.dbConfig.getSql());
sqlContent = FileUtils.readFileToString(sqlFile, StandardCharsets.UTF_8);
} catch (Exception exception) {
Cla
s
sPathR
e
source sqlResource = new ClassPathResource(this.dbConfig.getSql());
InputStream sqlInputStream = sqlResource.getInputStream();
sq
l
Content =
IOUtils.toS
t
ring(sqlInpu
t
Stream, Charsets.toCharset(StandardCharsets.UTF_8));
}
this.sqlMap = XmlParser.parseSql(sqlContent);
String dsContent;
try
{
File dsFile = ResourceUtils.getFile(this.dbConfig.getDatasource());
d
s
Content
= FileUtils.
r
eadFileToString(dsFile, StandardCharsets.UTF_8);
} catch (Exception exception) {
Clas
s
PathResource dsResource = new ClassPathResource(this.dbConfig.getDatasource());
InputStream dsInputStream = dsResource.getInputStream();
dsContent =
IOUtils.toS
t
ring(dsInputStream, Charsets.toCharset(StandardCharsets.UTF_8));
}
this.dataSourceMap
= XmlParser.parseDatasource(dsContent);
}
catch
(Exception e) {
e.pri
n
tS
t
ackTrace();
}
}
```
新值
打包成jar
包后,spring没办法通过File的形式访问jar包里面的文件,如下图
![
打包成jar后,无法通过读取文件的方式读取jar文件里面配置文件](http
s
://foruda.gitee.com/images/1668750160578153007/99665dc3_1428912.png "屏幕截图")
百度之后问题原因是: 打包之后,spring没办法通过File的形式访问jar包里面的文件。
htt
p
s://blog.csdn.
n
et/u013084266/article/details/112238267
结合上面的问题,我做了如下尝试,
DBApi类
```
public
DBApi(DBConfig dbConfig) {
this.dbConfig = dbConfig;
try
{
String
s
qlCont
e
nt;
try
{
Fi
l
e sqlFile
= ResourceU
t
ils.getFile(
t
his.dbConfig.getSql());
sqlContent = FileUtils.readFileToString(sqlFile, StandardCharsets.UTF_8);
} catch (Exception exception) {
ClassPathResource sqlResource = new ClassPathResource(this.dbConfig.getSql());
InputStream sqlInputStream = sqlResource.getInputStream();
sqlContent = IOUtils.toString(sqlInputStream, Charsets.toCharset(StandardCharsets.UTF_8));
}
this.
s
qlMap =
XmlParser.pa
r
seSql(sqlContent);
String d
s
Content;
try
{
File dsFile
= ResourceU
t
ils.getFile(this.dbConfig.getDatasource());
dsContent = FileUtils.readFileToString(dsFile, StandardCharsets.UTF_8);
} catch (Exception
exception) {
ClassPathResource dsResource = new ClassPathResource(this.dbConfig.getDatasource());
I
n
pu
t
Stream dsInputStream = dsResource.getInputStream();
dsContent = IOUtils.toString(dsInputStream, Charsets.toCharset(StandardCharsets.UTF_8));
}
this.dataSourceMap = XmlParser.parseDatasource(dsContent);
} catch (Exception e) {
e.printStackTrace();
}
}
```
三目鸟
修改了
标题
原值
打包成jar
后,无法通过读取文件的方式读取jar包里面配置文件
新值
打包成jar
包后,spring没办法通过File的形式访问jar包里面的文件
三目鸟
修改了
描述
原值
打包成jar包后,spring没办法通过File的形式访问jar包里面的文件,如下图
![打包成jar后,无法通过读取文件的方式读取jar文件里面配置文件](https://foruda.gitee.com/images/1668750160578153007/99665dc3_1428912.png "屏幕截图")
百度之后问题原因是: 打包之后,spring没办法通过File的形式访问jar包里面的文件。
https://blog.csdn.net/u013084266/article/details/112238267
结合上面的问题,我做了如下尝试,
DBApi类
```
public DBApi(DBConfig dbConfig) {
this.dbConfig = dbConfig;
try {
String sqlContent;
try {
File sqlFile = ResourceUtils.getFile(this.dbConfig.getSql());
sqlContent = FileUtils.readFileToString(sqlFile, StandardCharsets.UTF_8);
} catch (Exception exception) {
ClassPathResource sqlResource = new ClassPathResource(this.dbConfig.getSql());
InputStream sqlInputStream = sqlResource.getInputStream();
sqlContent = IOUtils.toString(sqlInputStream, Charsets.toCharset(StandardCharsets.UTF_8));
}
this.sqlMap = XmlParser.parseSql(sqlContent);
String dsContent;
try {
File dsFile = ResourceUtils.getFile(this.dbConfig.getDatasource());
dsContent = FileUtils.readFileToString(dsFile, StandardCharsets.UTF_8);
} catch (Exception exception) {
ClassPathResource dsResource = new ClassPathResource(this.dbConfig.getDatasource());
InputStream dsInputStream = dsResource.getInputStream();
dsContent = IOUtils.toString(dsInputStream, Charsets.toCharset(StandardCharsets.UTF_8));
}
this.dataSourceMap = XmlParser.parseDatasource(dsContent);
} catch (Exception e) {
e.printStackTrace();
}
}
```
新值
打包成jar包后,spring没办法通过File的形式访问jar包里面的文件,如下图
![打包成jar后,无法通过读取文件的方式读取jar文件里面配置文件](https://foruda.gitee.com/images/1668750160578153007/99665dc3_1428912.png "屏幕截图")
百度之后问题原因是: 打包之后,spring没办法通过File的形式访问jar包里面的文件。
https://blog.csdn.net/u013084266/article/details/112238267
综上所述,我做了如下尝试,可以解决问题。
DBApi类
```
public DBApi(DBConfig dbConfig) {
this.dbConfig = dbConfig;
try {
String sqlContent;
try {
File sqlFile = ResourceUtils.getFile(this.dbConfig.getSql());
sqlContent = FileUtils.readFileToString(sqlFile, StandardCharsets.UTF_8);
} catch (Exception exception) {
ClassPathResource sqlResource = new ClassPathResource(this.dbConfig.getSql());
InputStream sqlInputStream = sqlResource.getInputStream();
sqlContent = IOUtils.toString(sqlInputStream, Charsets.toCharset(StandardCharsets.UTF_8));
}
this.sqlMap = XmlParser.parseSql(sqlContent);
String dsContent;
try {
File dsFile = ResourceUtils.getFile(this.dbConfig.getDatasource());
dsContent = FileUtils.readFileToString(dsFile, StandardCharsets.UTF_8);
} catch (Exception exception) {
ClassPathResource dsResource = new ClassPathResource(this.dbConfig.getDatasource());
InputStream dsInputStream = dsResource.getInputStream();
dsContent = IOUtils.toString(dsInputStream, Charsets.toCharset(StandardCharsets.UTF_8));
}
this.dataSourceMap = XmlParser.parseDatasource(dsContent);
} catch (Exception e) {
e.printStackTrace();
}
}
```
三目鸟
关联了
freakchicken/dbapi-spring-boot-starter Pull Request !1
展开全部操作日志
折叠全部操作日志
登录
后才可以发表评论
状态
待办的
待办的
进行中
已完成
已关闭
负责人
未设置
标签
未设置
标签管理
里程碑
未关联里程碑
未关联里程碑
Pull Requests
未关联
未关联
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
未关联
分支 (2)
标签 (2)
master
1.2.0
1.1.0
1.0.1
开始日期   -   截止日期
-
置顶选项
不置顶
置顶等级:高
置顶等级:中
置顶等级:低
优先级
不指定
严重
主要
次要
不重要
参与者(1)