📅  最后修改于: 2021-01-11 05:43:43             🧑  作者: Mango
REST应用程序遵循REST体系结构方法。我们使用REST应用程序来开发和设计网络应用程序。它生成对数据执行CRUD操作的HTTP请求。通常,它以JSON或XML格式返回数据。
在以下示例中,我们将创建一个REST应用程序。在此应用程序中,我们创建了一个产品列表并返回相同的列表。它以JSON格式返回数据。
让我们在RSET应用程序中实现它,并通过使用以下步骤来了解REST方法。
步骤1:打开https://start.spring.io/ 。
步骤2:选择Spring Boot版本2.3.0.M2 。
步骤3:提供群组名称。我们提供了组名com.javatpoint 。
步骤4:提供工件。我们提供了Artifact spring-boot-rest-example 。
步骤5:添加Spring Web依赖项。
步骤6:点击Generate(生成)按钮。当我们单击Generate按钮时,它将与应用程序相关的所有规范包装到Jar文件中,并将其下载到本地系统。
步骤7:解压缩jar文件。
步骤8:复制文件夹并将其粘贴到STS工作区中。
步骤9:导入项目。
文件->导入->现有Maven项目->下一步->浏览->选择文件夹spring- spring-boot-rest-example->选择文件夹->完成
导入项目需要时间。成功导入项目后,我们可以在IDE的Package Explorer部分中看到它。
步骤10:在包com.javatpoint中创建一个模型类。我们创建了一个名为Product的模型类。在此类中,请执行以下操作:
右键单击文件->源->生成Getter和Setters->全选->生成
完成所有步骤后,模型类如下所示。
产品.java
package com.javatpoint;
public class Product
{
private int id;
private String pname;
private String batchno;
private double price;
private int noofproduct;
//default constructor
public Product()
{
}
//constructor using fields
public Product(int id, String pname, String batchno, double price, int noofproduct)
{
super();
this.id = id;
this.pname = pname;
this.batchno = batchno;
this.price = price;
this.noofproduct = noofproduct;
}
//getters and setters
public int getId()
{
return id;
}
public void setId(int id)
{
this.id = id;
}
public String getPname()
{
return pname;
}
public void setPname(String pname)
{
this.pname = pname;
}
public String getBatchno()
{
return batchno;
}
public void setBatchno(String batchno)
{
this.batchno = batchno;
}
public double getPrice()
{
return price;
}
public void setPrice(double price)
{
this.price = price;
}
public int getNoofproduct()
{
return noofproduct;
}
public void setNoofproduct(int noofproduct)
{
this.noofproduct = noofproduct;
}
}
现在,我们需要创建一个控制器。
步骤11:在com.javatpoint包中,创建一个Controller。我们创建了一个名为ProductController的控制器。
ProductController.java
package com.javatpoint;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class ProductController
{
@Autowired
private IProductService productService;
//mapping the getProduct() method to /product
@GetMapping(value = "/product")
public List getProduct()
{
//finds all the products
List products = productService.findAll();
//returns the product list
return products;
}
}
步骤12:在包com.javatpoint中创建一个名称为IProductService的接口,并定义返回产品列表的findAll()方法。
IProductService.java
package com.javatpoint;
import java.util.List;
public interface IProductService
{
List findAll();
}
步骤13:创建一个Service类。我们在com.javatpoint包中创建了一个名为ProductService的服务类。
ProductService.java
package com.javatpoint;
import java.util.ArrayList;
import java.util.List;
import org.springframework.stereotype.Service;
@Service
public class ProductService implements IProductService
{
@Override
public List findAll()
{
//creating an object of ArrayList
ArrayList products = new ArrayList();
//adding products to the List
products.add(new Product(100, "Mobile", "CLK98123", 9000.00, 6));
products.add(new Product(101, "Smart TV", "LGST09167", 60000.00, 3));
products.add(new Product(102, "Washing Machine", "38753BK9", 9000.00, 7));
products.add(new Product(103, "Laptop", "LHP29OCP", 24000.00, 1));
products.add(new Product(104, "Air Conditioner", "ACLG66721", 30000.00, 5));
products.add(new Product(105, "Refrigerator ", "12WP9087", 10000.00, 4));
//returns a list of product
return products;
}
}
步骤14:在静态文件夹(src / main / resources / static)中,创建一个HTML文件。我们创建了一个名称为index的HTML文件。在此文件中,我们创建了“获取所有产品”的链接。
index.html
Home page
现在,我们已经创建了所有文件和文件夹。创建所有文件后,项目目录看起来像是在愚弄:
让我们运行该应用程序。
步骤15:打开SpringBootRestExampleApplication.java文件,并将其作为Java应用程序运行。默认情况下,它在端口8080上运行。
SpringBootRestExampleApplication.java
package com.javatpoint;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringBootRestExampleApplication
{
public static void main(String[] args)
{
SpringApplication.run(SpringBootRestExampleApplication.class, args);
}
}
当应用程序成功运行时,它显示消息,如下所示
步骤16:打开浏览器并调用URL http:// localhost:8080 / index.html。它显示了“获取所有产品”的链接,如下图所示。
单击获取所有产品链接。它以JSON格式返回产品列表,并且URL更改为http:// localhost:8080 / product。