簡體   English   中英

REST API ArrayList @刪除

[英]REST API ArrayList @DELETE

public class BookList {

    public static List<Book> Listing= new ArrayList<Book>();

    Book book = new Book();

    public List<Book> getBooks(){
        Book book1=new Book("1", "Name 1","Author 1", "Text");
        Book book2=new Book("2", "Name 2","Author 2", "Text");
        Book book3=new Book("3",  "Name 3","Author 3", "Text");
        Book book4=new Book("4", "Name 4","Author 4", "Text");


        Listing.add(book1);
        Listing.add(book2);
        Listing.add(book3);
        Listing.add(book4);

        return Listing;

    }

我有一個@DELETE函數位於的Java主類。

@DELETE
    @Path("/{bookID}")
    @Produces(MediaType.APPLICATION_XML)
    public Response deleteBook(@PathParam("bookiD") int id){
        String output = (bookList.getBook(id));
        return Response.status(200).entity("Hehehe").build(); 
    }

我想要得到的是在郵遞員中運行此@DELETE時要向我提供列表中剩余的書籍列表,並排除我將其鏈接到ID中的那本書:例如localhost:49000 / 1-從列表中刪除ID為1的書,並退回其余書

那是一個簡單的ArrayList刪除問題

getBook方法一樣,添加deleteBook方法,然后實現從列表中刪除書的方法。 `list.remove(getBook(id-1)); //

然后,在您的public Response deleteBookXML(@PathParam("bookID") int id)方法中,首先使用deleteBook ,而不是以笑佛entity("Hehehe") )作為實體返回Response,而應使用bookList作為實體。

BookList.list.removeif(x -> x.id.equals(id + "");
return Response.status(200).entity(BookList.list).build(); 

看來您的Book對象正在使用字符串作為id?

上面的代碼將使用您的靜態書籍列表,並從URL中刪除ID等於ID的book元素。

然后,代碼將返回http狀態200,其中書籍列表為實體。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM