在4.3.1节中我们设置datasetCompany的dataType属性为[SlCompany]表示此DataSet包含这个DataType结构的一个Collection集合,如下图所示:
假如数据库中只有一条Company记录,我们仅需要加载一条记录该怎么办呢?
首先我们需要修改datasetCompany的dataType属性,如下图所示:

单击dataType属性右侧的小图标,会出现如下的DataType选择向导:

在选择DataType时,选择Object Type时设置为Defalut,采用Default就表示当前数据容器DataSet只能包含一个DataType的数据实体。
点击【Finish】按钮保存修改后,接下来我们需要修改后台对应方法。
双击打开com.bstek.dorado.sample.standardlesson.service.CompanyService.java,我们来看为datasetCompany提供服务的getCompany方法:
@DataProvider
public Collection<SlCompany> getCompany(){
return slcompanyDao.getAll();
}
可以看到方法返回的是一个集合,需要修改这个方法,使之返回单个SlCompany对象,修改后代码如下:
@DataProvider
public SlCompany getCompany(){
List<SlCompany> list = slcompanyDao.getAll();
for(SlCompany company:list){
return company;
}
return null;
}
重启服务器,在浏览器中输入如下网址:http://localhost:8080/standardlesson/com.bstek.dorado.sample.standardlesson.junior.contacts.CompanyInfo.d
效果如下图所示:

表示修改成功。