我有一个相当简单的Web应用程序,带有用于编辑实体的页面。 加载大约需要30秒,我不明白为什么。 SQL查询仅需一秒钟即可完成。
我的控制器方法
@GetMapping(value = "/lasterapport/{id}")
public String lasterapport(Model model, @PathVariable("id") Long id) {
model.addAttribute("lasterapport", lasterapportRepository.getOne(id));
model.addAttribute("brukere", brukerRepository.findAll());
model.addAttribute("lastere", maskinRepository.findLastere());
model.addAttribute("trucker", maskinRepository.findTrucker());
model.addAttribute("masser", masseRepository.findAll());
model.addAttribute("destinasjoner", destinasjonRepository.findAll());
return "lasterapport";
}
我的实体(不具有getter,setter和构造函数,以提高可读性)
@Entity
public class Lasterapport {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@ManyToOne
private Bruker truckBruker;
@ManyToOne
private Bruker lasterBruker;
@ManyToOne
private Maskin truckMaskin;
@ManyToOne
private Maskin lasterMaskin;
@ManyToOne
private Masse masse;
@ManyToOne
private Destinasjon destinasjon;
private Integer tonn;
private Date tidspunkt;
private String vifte_id;
}
我的观点只是具有所有不同的ManyToOne关系的这些选择输入的表单
<div class="form-group">
<label for="maskinLaster">Sjåfør laster</label>
<select class="form-control" th:field="*{lasterBruker}">
<option th:each="dropDownItem : ${brukere}"
th:value="${dropDownItem.id}"
th:text="${dropDownItem.navn}" >
</option>
</select>
</div>
我在想这与Spring如何处理表单数据有关?即使查询相当快,但如果我不添加为select-input提供选项的属性,则页面几乎会立即完成加载。
答案 0 :(得分:0)
事实证明,这是在此之前经历过的:Thymeleaf Select Option Performance Issue
因此,我的解决方案希望不使用 th:field ,并且页面会立即加载。