最近遇到的问题非常让人困惑,mybatis封装数据库记录成java实体,数据库中是小写,我在java bean的setter方法中将字段改为大写,但是发现没有生效,调试进而发现,mybatis根本没有调用实体的getter和setter方法,这样我想在get或set方法中做一些数据的变形就不可能了,百度了一下,mybatis通过反射直接赋值和读取字段,不需要getter和setter方法,请问有办法强制mybatis必须使用getter和setter方法么?项目中用了lombok是不是有干扰
public String getRedminePwd() {
if (this.redminePwd.contains("redmine")) {
return this.redminePwd;
}
if (!StringUtils.isEmpty(this.redminePwd1)) {
this.redminePwd = "redmine01:" + this.redminePwd1;
}
if (!StringUtils.isEmpty(this.redminePwd2)) {
this.redminePwd = this.redminePwd+"," + "redmine02:" + this.redminePwd2;
}
String pwd= StringUtils.trimLeadingCharacter(this.redminePwd, ',');
this.redminePwd=pwd;
return pwd;
}
如上述代码,我用了this.redminePwd=pwd才能让mybatis拿到正确的值;而本来我可以直接return pwd就行... 我的mybatis版本是3.4.5