Sha*_*eil 5 java spring jsp jspx optional
我们有几个具有可空字段的域对象.我们已经读过hibernate需要'raw'对象来正确映射它,所以我们的getter返回选项.我们的域对象如下所示:
public class User {
private String firstName;
private User boss;
public Optional<String> getFirstName(){
....
}
public Optional<User> getBoss() {
...
}
}
Run Code Online (Sandbox Code Playgroud)
但是现在我们在.jspx文件中解析/绑定这些字段时遇到了问题.(无论是显示还是表单输入字段.)对于基本类型和字符串,我们可以通过定义自定义OptionalToStringConverter来绕过它.
还有一个问题是对其他域对象的可空引用.
我们考虑了几个选项,但对它们中的任何一个都不满意:
我们想知道在jspx中是否有一种很好的方法来解决选项.
在表单绑定方面,Spring 很好地处理了这个问题:例如,它会将下面的第一个值映射到Optional.empty(),将第二个和第三个值映射到适当的Optional<Boolean>。
<form:select path="anOptionalBoolean">
<form:option value="" label="Not Specified"/>
<form:option value="true" label="Yes"/>
<form:option value="false" label="No"/>
</form:select>
Run Code Online (Sandbox Code Playgroud)
在显示值方面,我没有发现比在 EL 表达式中使用.getand等更好的东西。.present它确实会产生相当麻烦的代码。
| 归档时间: |
|
| 查看次数: |
78 次 |
| 最近记录: |