[英]Spring boot with spring data jpa. How can i perform partial update of entity from request body?
[英]How can I return JPA data from a rest resource to a webpage using Spring Boot?
我正在使用Spring Boot Guides中的本教程。 我如何将所有营养从数据库返回到JSP或ThymeLeaf页面。 现在,我想在项目中使用前端和后端。
如何配置项目,以使其余响应出现在计划添加的网页上? 我需要添加一些xml配置吗? 在春季仍然有必要吗?
实体:
@Entity
@Table(name = "NUTRIENT_DEFINITION")
public class NutritionDefinition implements Serializable {
@Id
@NotNull()
@Size(max = 3)
@Column(name = "USDA_NUTRIENT_IDENTIFIER")
private String usdaNutrientIdentifier;
@NotNull
@Size(max = 7)
@Column(name = "UNITS")
private String units;
@Size(max = 20)
@Column(name = "INFOODS_TAG")
private String infoodsTag;
@NotNull
@Size(max = 60)
@Column(name = "NUTRIENT_NAME")
private String nutrientName;
@NotNull
@Size(max = 1)
@Column(name = "NUMBER_OF_DECIMAL_PLACES")
private String numberOfDecimalPlaces;
@NotNull
@Size(max = 6)
@Column(name = "SORT_ORDER")
private String sortOrder;
protected NutritionDefinition(){
}
public NutritionDefinition(String usda_nutrient_identifier,String units, String infoods_tag,
String nutrient_name, String number_of_decimal_places, String sort_order){
this.usdaNutrientIdentifier = usda_nutrient_identifier;
this.units = units;
this.infoodsTag = infoods_tag;
this.nutrientName = nutrient_name;
this.numberOfDecimalPlaces = number_of_decimal_places;
this.sortOrder = sort_order;
}
public String getUsdaNutrientIdentifier() {
return usdaNutrientIdentifier;
}
public void setUsdaNutrientIdentifier(String usdaNutrientIdentifier) {
this.usdaNutrientIdentifier = usdaNutrientIdentifier;
}
public String getUnits() {
return units;
}
public void setUnits(String units) {
this.units = units;
}
public String getInfoodsTag() {
return infoodsTag;
}
public void setInfoodsTag(String infoodsTag) {
this.infoodsTag = infoodsTag;
}
public String getNutrientName() {
return nutrientName;
}
public void setNutrientName(String nutrientName) {
this.nutrientName = nutrientName;
}
public String getNumberOfDecimalPlaces() {
return numberOfDecimalPlaces;
}
public void setNumberOfDecimalPlaces(String numberOfDecimalPlaces) {
this.numberOfDecimalPlaces = numberOfDecimalPlaces;
}
public String getSortOrder() {
return sortOrder;
}
public void setSortOrder(String sortOrder) {
this.sortOrder = sortOrder;
}
}
休息课:
@RepositoryRestResource(collectionResourceRel = "NutritionDefinition", path = "NutritionDefinition")
public interface NutrientRepository extends PagingAndSortingRepository<NutritionDefinition,String>{
List<NutritionDefinition> findBynutrientName(@Param("nutrientName")String name);
}
编辑:我已经看到了代码示例,其中有一个名为“模型”的对象作为参数传递给其余存储库,但是,我不知道如何将其编织到示例项目中。
ReposityRestResource
在返回RESTful响应时是显式的。 如果您希望将结果显示为HTML而不是JSON,那么您想使用Thymeleaf之类的重播引擎。 一个极端的情况是,如果您希望网页对支持服务进行AJAX调用以提取数据。
如果要返回带有Thymeleaf的HTML,则可以,您希望将结果添加到“模型”页面中,以便Thymeleaf可以呈现它。 有一个入门指南: https : //spring.io/guides/gs/serving-web-content/ 。 您在该指南上想要做的另一件事是将存储库注入到控制器中并调用find方法。
对于AJAX解决方案,您可以使用jQuery之类的JavaScript库来调用该服务。 我对流程并不熟悉。 最好添加另一个针对该问题的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.