[英]How can I get PCF App Manager to display information about my detected as Spring Boot Application?
[英]How can I get the information in the correct form (Spring Boot)
我创建了一个 spring 引导项目。 我想通过 vaadin 显示信息,如图所示。 我试过了,但它在一行上显示了所有信息。 只用 Vaadin 14. 如何正确书写,让一切完美呈现
我正在使用 vaadin 14 UI 框架
@Route
@Service
public class MainView extends VerticalLayout {
RestTemplate restTemplate=new RestTemplate();
public String URL(String d){
return "http://localhost:8080/api/whois/" + d;
}
public DomainDTO domainDTO(String url){
return restTemplate.getForObject(url, DomainDTO.class);
}
public MainView(){
FormLayout formLayout=new FormLayout();
TextField textField=new TextField();
textField.setPlaceholder("please input domain");
textField.setWidth("630px");
textField.setHeight("50px");
Text text1=new Text("");
VerticalLayout v1=new VerticalLayout();
v1.add(text1);
Button button=new Button("SHOW");
button.addClickListener(event -> {
DomainDTO dto = domainDTO(URL(textField.getValue()));
String txt = "";
txt += "Domain Name............: " + dto.getDomainInfo().getDomainName();
txt += "Organization Using Domain Name";
txt += "Organization name......: " + dto.getDomainInfo().getOrganizationName();
txt += "Street Address.........:" + dto.getDomainInfo().getStreetAddress();
txt += "city...................:" + dto.getDomainInfo().getCity();
txt += "state..................:" + dto.getDomainInfo().getState();
txt += "postal code............:" + dto.getDomainInfo().getPostalCode();
txt += "country................:" + dto.getDomainInfo().getCountry();
txt += "handle.................:" + dto.getContactInfo().getHandle();
txt += "voice..................:" + dto.getContactInfo().getVoice();
txt += "fax....................:" + dto.getContactInfo().getFax();
txt += "email..................:" + dto.getContactInfo().getEmail();
text1.setText(txt);
}
);
button.addThemeVariants(ButtonVariant.LUMO_PRIMARY);
formLayout.addFormItem(textField,"DOMAIN");
button.setWidth("30%");
formLayout.addFormItem(button," ");
add(formLayout,v1);
}
}
Text
class 不是最好的,因为你不能给它添加换行符,也不能设置样式。
这样的事情怎么样?
public MainView() {
Div textContainer = new Div();
textContainer.add(createHeader("Organization Using Domain Name"));
textContainer.add(createLine("Name", dto.getDomainInfo().getDomainName()));
textContainer.add(createLine("Organization Name", dto.getDomainInfo().getOrganizationName()));
textContainer.add(createLine("Street Address", dto.getDomainInfo().getStreetAddress()));
textContainer.add(createHeader("Administrative Contact/Agent"));
textContainer.add(createLine("Handle", dto.getDomainInfo().getHandle()));
textContainer.add(createLine("Name", dto.getDomainInfo().getName()));
add(textContainer);
}
private Component createLine(String key, String value) {
int keyLength = 24;
StringBuilder sb = new StringBuilder(key);
// Add padding dots ...
for(int i = key.length(); i < keyLength; i++) {
sb.append(".");
}
sb.append(": ");
sb.append(value);
Paragraph line = new Paragraph(sb.toString());
line.getStyle().set("font-family", "monospace");
line.getStyle().set("margin", "0");
return line;
}
private Component createHeader(String caption) {
Paragraph header = new Paragraph(caption);
header.getStyle().set("font-family", "monospace");
header.getStyle().set("margin", "16px 0 0 0 ");
return header;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.