zl程序教程

您现在的位置是:首页 >  后端

当前栏目

[Kotlin Spring boot] Connect template with a backing bean

SpringKotlinBoot with bean connect Template
2023-09-14 09:00:46 时间

Backing bean:

A typical JavaServer Faces application includes one or more backing beans, each of which is a type of JavaServer Faces managed bean that can be associated with the components used in a particular page. This section introduces the basic concepts of creating, configuring, and using backing beans in an application.

 

templates/seatBooking.html:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Theater Booking</title>
</head>
<body>
    <h1>Theater Booking</h1>
<h2>Seat availability</h2>

    <form action="/checkAvailability" th:object="${bean}" method="POST">
    <p>Check if seat number
        <select th:field="*{selectedSeatNum}">
            <option th:each="n : ${bean.seatNums}" th:value="${n}" th:text="${n}" />
        </select>
         in row
        <select th:field="*{selectedSeatRow}">
            <option th:each="r : ${bean.seatRows}" th:value="${r}" th:text="${r}" />
        </select>
        is available <input type="submit"/></p>

    </form>

    <p th:text="${bean.result}"></p>
</body>
</html>

 

Create bean and connect to controller:

package com.virtualpairprogrammers.theater.control

import org.springframework.stereotype.Controller
import org.springframework.web.bind.annotation.RequestMapping
import org.springframework.web.servlet.ModelAndView

@Controller
class MainController {

    @RequestMapping("")
    fun homePage() : ModelAndView {
        return ModelAndView("seatBooking", "bean", CheckAvailabilityBackingBean())
    }
}

class CheckAvailabilityBackingBean() {
    val seatNums = 1..36
    val seatRows = 'A'..'O'
    var selectedSeatNum: Int = 1
    var selectedSeatRow: Char = 'A'
    var result: String = ""
}