作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用以下内容将检索到的值添加到类中。所有值都将添加到类的属性中,但我正在使用组合(类中有一个类对象),并且它不会在输出中显示任何内容。
class employee
{
....
private Address address = new Address();
.....
}
...
Employee emp = new Employee();
try {
ps = con.prepareStatement("select * from employee,address "
+ "WHERE employee.username = ? AND "
+ "employee.ADD_ID = address.ID");
ps.setString(1, username);
ResultSet r = ps.executeQuery();
if (r.next()) {
BeanProcessor bp = new BeanProcessor();
emp = bp.toBean(r,Employee.class);
System.out.println("blockkkk:"+emp.getAddress().getBlock());
//output of above line is blockkkk:null
}
con.close();
ps.close();
} catch (SQLException e) {
System.err.println(e.getMessage());
}
return emp;
地址类别如下:
public class Address {
.....
private String block;
....
public String getBlock() {
return block;
}
public void setBlock(String block) {
this.block = block;
}
....
}
最佳答案
BeanProcessor.toBean
的工作原理如下:
将 ResultSet 行转换为 JavaBean。此实现使用反射和 BeanInfo 类来将列名称与 bean 属性名称相匹配。属性与列的匹配基于以下几个因素:
当从 ResultSet 返回 SQL NULL 时,原始 bean 属性将设置为其默认值。数字字段设置为 0, boolean 值设置为 false。当返回 SQL NULL 时,对象 bean 属性设置为 null。这与 ResultSet get* 方法的行为相同。
该地址可能不是可写属性。请检查一下。
关于java - 如何将结果集复制到对象中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14929818/
我是一名优秀的程序员,十分优秀!