Spring Boot页面加载缓慢

时间:2018-11-06 08:22:28

标签: hibernate spring-boot

我有一个相当简单的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提供选项的属性,则页面几乎会立即完成加载。

1 个答案:

答案 0 :(得分:0)

事实证明,这是在此之前经历过的:Thymeleaf Select Option Performance Issue

因此,我的解决方案希望不使用 th:field ,并且页面会立即加载。