细说Java各种bug(下)

文章目录

  • 31.Mysql获取的时间和存储的时间不一致
  • 32.关于maven打包 “程序包com.sun.deploy.net不存在” 的问题
  • 33.thymeleaf 模板在linux下解析报500问题
  • 34.前端出入特殊字符后端接收为空格
  • 35.第一次登陆很慢
  • 36.Result consisted of more than one row错误的修正
  • 37.Idea的jdk版本
  • 38.application.ym不出现叶子
  • 39.SpringCloudConfig使用ssh方式连接GitHub报错JSchException: Auth fail
  • 40.IDEA新建项目一直下载Resolving dependencies of xxx
  • 41.对象字段为全大写时,转json后会变成全小写问题
  • 42.Mybatis元素内容必须由格式正确的字符数据或标记组成.
  • 42.Mybatis元素内容必须由格式正确的字符数据或标记组成.
  • 43.一般bean创建失败的异常都是mapper.xml文件中的错误

31.Mysql获取的时间和存储的时间不一致

解决办法:
在实体类的时间属性上加上如下注解:

@JsonFormat(pattern = “yyyy-MM-dd HH:mm:ss”, timezone =GMT+8)

问题解决!!!
扩展:

@JsonFormat 有两种使用用法:在对象属性上,或者在属性的 getter 方法上
因为我们是东八区(北京时间)。所以我们在格式化的时候要指定时区(imezone = “GMT+8”)
@JsonFormat与@DateTimeFormat区别:@JsonFormat用于将后台返回前台的Date变量转换为字符串类型;
而@DateTimeFormat用于将前台传到后台字符串变量转换为Date类型

32.关于maven打包 “程序包com.sun.deploy.net不存在” 的问题

com.sun.deploy.net.URLEncoder 换成 java.net.URLEncoder 即可

33.thymeleaf 模板在linux下解析报500问题

springboot 项目在本地运行没问题,放在linux下出现访问页面报500的问题。
这可能是模板解析找不到模板路径的问题,比如controller层返回的url中出现有大写,文件名为config.html,路径写出了device/Config,在window下启动项目的时候,这是能访问到的,但是在linux下必须与文件名一致,还有前面不要加/ 也会500

34.前端出入特殊字符后端接收为空格

在前端使用encodeURIComponent进行设置

"   删除\n" +
"   删除\n" + 

35.第一次登陆很慢

在JVM环境中解决
打开$JAVA_PATH/jre/lib/security/java.security这个文件,找到下面的内容:

securerandom.source=file:/dev/random

替换成

securerandom.source=file:/dev/./random

36.Result consisted of more than one row错误的修正

一看到这个错误,就知道是在使用SELECT INTO的时候出现了多于一行的情况

37.Idea的jdk版本

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w9qiYxQa-1598026740664)(D:\1workeFiles\运行文件\有道云笔记\qq78DD6D55826D645CB39BD6FE390A4558\05026619edbb4732be8421fbb46baa53\clipboard.png)]

38.application.ym不出现叶子

h t t p s : / / w w w . b i l i b i l i . c o m / v i d e o / a v 93813318 ? p = 63 https://www.bilibili.com/video/av93813318?p=63 https://www.bilibili.com/video/av93813318?p=63

39.SpringCloudConfig使用ssh方式连接GitHub报错JSchException: Auth fail

使用这种方式生成公钥,就可以解决

ssh-keygen -m PEM -t rsa -b 4096 -C "[email protected]"

40.IDEA新建项目一直下载Resolving dependencies of xxx

可能是maven3.5.2版本不行,换个版本

-DarchetypeCatalog=internal

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dCyHyRVw-1598026740665)(D:\1workeFiles\运行文件\有道云笔记\qq78DD6D55826D645CB39BD6FE390A4558\9c8cbddd9f31409a8f3196656ab07083\clipboard.png)]

41.对象字段为全大写时,转json后会变成全小写问题

private String ZYH;                 //
private String PID;                 //

但以json格式传到其他项目的时候,变成了 zyh,pid

解决办法

import com.fasterxml.jackson.annotation.JsonProperty;
 
 
    @JsonProperty("ZYH")
    private String ZYH;                 //
    @JsonProperty("PID")
    private String PID;                 //
 
    @JsonProperty("ZYH")
    public String getZYH() {
        return ZYH;
    }
 
    @JsonProperty("ZYH")
    public void setZYH(String ZYH) {
        this.ZYH = ZYH;
    }
 
    @JsonProperty("PID")
    public String getPID() {
        return PID;
    }
 
    @JsonProperty("PID")
    public void setPID(String PID) {
        this.PID = PID;
    }

要把getter,setter方法也要加上,不然json就会出现ZYH,zyh,PID,pid四个,两个大写,两个小写,值是一样的

42.Mybatis元素内容必须由格式正确的字符数据或标记组成.

原因 : Mapper.xml 文件里 < (小于)号 , >(大于)号 ,会被认为是括号,需要额外注意,

解决办法 : 将 < 号换成 < > 号 换成>

<if test="param.day =='1'">
AND DATE_SUB(CURDATE(), INTERVAL 7 DAY) <=  SEARCH_TIME
if>
@JsonProperty("PID")
public String getPID() {
    return PID;
}

@JsonProperty("PID")
public void setPID(String PID) {
    this.PID = PID;
}

要把getter,setter方法也要加上,不然json就会出现ZYH,zyh,PID,pid四个,两个大写,两个小写,值是一样的

42.Mybatis元素内容必须由格式正确的字符数据或标记组成.

原因 : Mapper.xml 文件里 < (小于)号 , >(大于)号 ,会被认为是括号,需要额外注意,

解决办法 : 将 < 号换成 < > 号 换成>

<if test="param.day =='1'">
AND DATE_SUB(CURDATE(), INTERVAL 7 DAY) &lt;=  SEARCH_TIME
</if>

43.一般bean创建失败的异常都是mapper.xml文件中的错误

你可能感兴趣的:(Java,java,bug,开发语言)