1. UTF-8 BOM格式
问题描述:在读取文件存入数据库时,数据前面有一个空白,在文件中看不见该空白串,也删不掉。
原因:该文件为UTF-8BOM格式
去掉BOM
String str2HexStr = FileParseUtil.str2HexStr(split[0].trim());
if (str2HexStr.substring(0, 6).equalsIgnoreCase(“efbbbf”)) {
str2HexStr = str2HexStr.substring(6);
}
String decode = FileParseUtil.decode(str2HexStr);
/**
* 字符串转换成为16进制(无需Unicode编码)
*
* @param str
* @return
*/
public static String str2HexStr(String str) {
char[] chars = “0123456789ABCDEF”.toCharArray();
StringBuilder sb = new StringBuilder("");
byte[] bs = str.getBytes();
int bit;
for (int i = 0; i < bs.length; i++) {
bit = (bs[i] & 0x0f0) >> 4;
sb.append(chars[bit]);
bit = bs[i] & 0x0f;
sb.append(chars[bit]);
// sb.append(’ ');
}
return sb.toString().trim();
}
/*
2. SpringBoot启动bean注入失败
原因可能是因为jre,检查Window->Preferences->JAVA->Installed JRES,选择jre
3. Maven打包报SVN remove失败,maven依赖jar无法collect
可能是因为setting.xml中maven源配置问题,本次因为引用阿里源出错,导致jar不可用
4. 配置durid数据库连接池后无法使用拼接sql
因为durid中配置了防止sql注入的防火墙,只需要在配置参数中关掉即可
spring.datasource.druid.filters=stat(原先配置为stat,wall)
5. 关于使用@Value取值为null的问题
第一种情况,在声明属性的时候可能使用了static或final关键字
第二种情况,类没有加@Component或者@Service等,没有交给spring管理
第三种情况,这个类是new出来的,而不是@AutoWired获得
6.本地jar包存在,但是pom.xml报错说jar不存在
检查是否有多个本地仓库,检查引用的setting文件中的仓库路径
Window -> Preferences -> Maven -> User Settings
7.代码没有改变,但是不同工作空间下效果不一样
原因可能会因为新的工作空间下maven包的settings.xml文件没有引用正确,导致jar包版本没有引用正确
可参照6中的方法修改
8.Nginx配置外网映射,访问项目路径后报404
请求
解决:
检查端口是否都可用,本次换了一个端口就可以了
9.每次使用maven打包时会打印很多日志,类似项目启动
查看springboot项目是否有单元测试代码!
10.使用EntityQueryHelper查询没有问题,但是使用自定义sql查询数据库返回值中某个字段为null
因为数据库表字段名包含下划线
需要配置添加
mybatis.type-aliases-package = com.wanbo.entity
mybatis.configuration.map-underscore-to-camel-case = true
11.每一次使用STS新建spring-boot项目,pom.xml文件总是第一行报错
虽然报错,但是不影响项目运行,而且报错提示很奇怪:Uknow
解决,将pom.xml文件中spring-boot-start-parent版本号改为2.1.4.RELEASE即可
org.springframework.boot spring-boot-starter-parent 2.1.4.RELEASE starter-parent 2.1.4.RELEASE