取数据库出来的属性值为null

取出来的list可以看到值,但是list的每个实体属性都是空的,如下图所示。mProjects就是取出来的list,1图是能看到最下方的属性值,2图点开看到实体的属性值都是null,最后取值的话也是全部取值到null。能解决吗这个?

List<MProject> mProjects =
                MProject.dao.find("select *  from mproject where projectName = ? And state = 1 ", projectName);

图片.png图片.png


评论区

软件攻城狮

2017-01-18 16:53

MProject是自动生成的model吗?
如果是你使用get方法输出下字段内容看看。

小三上酒

2017-01-18 16:57

@软件攻城狮 MProject是我的model,get字段内容得到的是null

小三上酒

2017-01-18 16:58

@软件攻城狮 mProjects .toString()的话得到的就是第一张图最下面的那一串

软件攻城狮

2017-01-18 20:16

问题就是你的model是不是继承com.jfinal.plugin.activerecord.Model

lyh061619

2017-01-18 22:22

第一先看你的model类继承对了没,如果是用插件自动生成的话,记得在你的配置上用如:
//添加表映射
_MappingKit.mapping(arp);
如果是手动自己生成的话也要注意在配置上做实体映射下。

小三上酒

2017-01-19 09:02

@lyh061619 model继承了,我是手动生成的,arp.addMapping("mproject", MProject.class); 这个我也加进去了。增改删操作都能运行,就是查不行~~

小三上酒

2017-01-19 09:03

@软件攻城狮 model继承了的。
import com.jfinal.plugin.activerecord.Model;

public class MProject extends Model{

小三上酒

2017-01-19 09:53

@软件攻城狮 其实setAttr的话前台是可以遍历查看的的,但是我想在后台拿到整个类再进行别的操作,有其他办法吗?

lyh061619

2017-01-19 09:53

@小三上酒 既然你是手动生成的,那你的属性有没有映射对了,他baseXX属性与表字段是这样对应的:
@SuppressWarnings("serial")
public abstract class BaseAbout> extends Model implements IBean {

public void setId(java.lang.Integer id) {
set("id", id);
}

public java.lang.Integer getId() {
return get("id");
}

public void setTitle(java.lang.String title) {
set("title", title);
}

public java.lang.String getTitle() {
return get("title");
}

public void setContent(java.lang.String content) {
set("content", content);
}

public java.lang.String getContent() {
return get("content");
}

public void setCreateAt(java.lang.String createAt) {
set("create_at", createAt);
}

public java.lang.String getCreateAt() {
return get("create_at");
}

}
回头看下你这手动生成的Basexx是不是与上面贴码的一样,其实再看下_MappingKit这个类的内容是不是中如:
public class _MappingKit {

public static void mapping(ActiveRecordPlugin arp) {
arp.addMapping("about", "id", About.class);
arp.addMapping("cases", "id", Cases.class);
arp.addMapping("client", "id", Client.class);
arp.addMapping("contact", "id", Contact.class);
arp.addMapping("news", "id", News.class);
arp.addMapping("resource", "id", Resource.class);
arp.addMapping("role", "id", Role.class);
arp.addMapping("role_resource", "id", RoleResource.class);
arp.addMapping("s_log", "id", SLog.class);
arp.addMapping("seo", "id", Seo.class);
arp.addMapping("seo_log", "id", SeoLog.class);
arp.addMapping("service", "id", Service.class);
arp.addMapping("user", "id", User.class);
arp.addMapping("user_role", "id", UserRole.class);
}
}
如果不是赶紧调整。

小三上酒

2017-01-19 10:24

@lyh061619 大兄弟,还是不行啊。。其实值是有的, setAttr的话前台是可以遍历查看的,但是在后台就是取不到一个完整的类出来。。。我想取一个完整的类在后台用~~

lyh061619

2017-01-19 10:30

@小三上酒 把你的码贴出来我看,你想实现什么功能,前台就都显示,后台不行。

lyh061619

2017-01-19 10:30

@小三上酒 要不就是你哪写得有问题,还是自己思路错了。

热门反馈

扫码入社