1 回答
TA贡献1812条经验 获得超5个赞
在你的 thymeleaf 模板中,你基本需要做三件事:
需要将城市对象(您需要一个名为 city 的模型)绑定到表单元素:
<form th:action="@{/cities}" method="POST" th:object="${city}">
将模型添加到处理表单视图的控制器(获取控制器):
model.addAttribute("city", new City());
将 th:field 添加到与模型属性字段名称匹配的 html 标记中:
<select th:field="*{name}">
在 POST 控制器中,您需要将城市对象添加为参数/参数,并调用将对象保存到数据库中的服务:
@RestController
public class CityController {
@Autowired
CityService cityService;
@RequestMapping(value = "/cities", method = RequestMethod.POST)
public String addCity(City city) { cityService.save(city); }
}
请注意,“/cities”值必须与表单操作“@{/cities}”匹配。
然后在您的服务类中,您将拥有 save 方法和 cityRepository:
@Service
public class CityService {
@Autowired
CityRepository cityRepository;
public City save(City city) { cityRepository.save(city); }
}
最后,您需要一个从 CrudRepository 或 JpaRepository 扩展的存储库类:
@Repository
public interface CityRepository extends CrudRepository<City, Long> {
}
通过从 CrudRepository 扩展,您将可以访问 save()、findAll()、findById() 方法等。
希望有帮助!
添加回答
举报