java经验记录
1、采用get方法更新对象的,每个循环都要new一下,要不然数据会乱七八糟
2、entity中的变量,使用lomlok以后,可以方便的直接用类名来new对象、new队列。但是队列还是要用ArrayList 这个不知道是向上还是向下转型!是
List<IgnitionOfCarNumStatistic> IgnitionOfCarNumStatisticlist= new ArrayList<>();
3、java:找不到符号 :注意注解有没有生效
、、
4、程序报错多多使用debug模式,它报错的地方很有可能和实际有问题的地方差别很远
5、yml文件中可能不会标红色了,需要特别注意颜色和别人不一样的字
6、no beans found在对应mapper添加@Repository
7、新拉取的项目出现红色,应该最先检查pom文件是否报错
8、dependency报错,删文件,注释掉是没用的,在删文件后要将那一行直接剪切掉,idea才会重新加载你的依赖,粘贴上来的时候会自动重新下载的,都不需要clean install reimport
9、mirrors和repositorys同时存在会报错,把其中一个注释掉就可以用了,我也不知道为什么。镜像路径出了大多数王文推荐的public还加上了central等等很多路径,已经是把所有的文件全部都覆盖掉了。mirrors其实就只是用来快速下载依赖的,
repositorys官方提供的,速度非常慢。
10、sql只要提示select项在group by中不唯一,就直接在group by 中加上这一项就可以了
11、接口是没办法创建对象的,但是可以用类名+变量名,创建变量,用这个变量调用接口中的方法。因为接口都是静态的,没办法通过对象调用。
13、没事不要用distinct,它非常非常慢。能用group by替换的都尽量替换,效率高无数倍
14、在git更新的时候选择rebase
15、对数据库进行操作的时候jason文件是最快的,其次是excl,最次是insert语句
16、空指针异常非常可怕,应对的方法是进行初始化的时候先赋值一个默认值进去。列表中没有数的时候你去调用它就会导致空指针异常。
if (Strings.isNullOrEmpty(modelTemp)){
这句话可以用来解决空指针异常
17、解决传入参数有时需要为无参数的问题:
public ApiResponseBuilder.ApiResponse<List<WeeklyReportAdasCarNumStatistic>> queryAdasCarNumDay(@RequestParam String date,@RequestParam String model) {
if(StringUtils.isBlank(model)){
model = null;
}
需要注意:虽然传入参数可以为null,但是在postman中也需要输入它,然后传输null,不可以不写,不写就会报错,它仍旧是属于“必传参数”
18、was not registered for synchronization because synchronization is not active这个报错看起来是系统的原因,实际上很有可能是sql语法不对的原因
再更新:这个报错有时根本不影响查询
19、新下载的项目无法运行先检查图标是不是蓝色C,否则是src没有在project structure上面注册成功,参考链接https://blog.csdn.net/hgg923/article/details/72899922
20、提示找不到包的,包名不对的,先检查maven里面模块名是不是都已经加载上,如果没有,需要右键模块点击“add什么什么”的
21、datasource问题的排查方法(新项目pom文件经常有问题)
22、. 、 $、 | 和 * 等转义字符,必须得加 \\