Hurtig guide til RSS med Rom

1. Oversigt

RSS (Rich Site Summary eller Really Simple Syndication) er en web-feed-standard, der giver læsere et samlet indhold fra forskellige placeringer. Brugeren kan se, hvad der for nylig er blevet offentliggjort på sine yndlingsblogs, nyhedswebsteder osv. - alt sammen på et enkelt sted.

Applikationer kan også bruge RSS til at læse, manipulere eller offentliggøre oplysninger via RSS-feeds.

Denne artikel giver et overblik over, hvordan du behandler RSS-feeds i Java med Rom API.

2. Maven-afhængigheder

Vi skal tilføje afhængigheden af ​​Rom API til vores projekt:

 rom rom 1.0 

Vi kan finde den nyeste version på Maven Central.

3. Oprettelse af et nyt RSS-feed

Lad os først oprette et nyt RSS-feed med Rom API ved hjælp af standardimplementeringen SyndFeedImpl af SyndFeed interface. Denne grænseflade er i stand til at håndtere alle RSS-smag, så vi kan altid føle os sikre på at bruge den:

SyndFeed feed = new SyndFeedImpl (); feed.setFeedType ("rss_1.0"); feed.setTitle ("Testtitel"); feed.setLink ("// www.somelink.com"); feed.setDescription ("Grundlæggende beskrivelse");

I dette uddrag har vi oprettet et RSS-feed med standard RSS-felter såsom en titel, et link og en beskrivelse. SyndFeed giver mulighed for at tilføje mange flere felter, herunder forfattere, bidragydere, ophavsret, moduler, offentliggjorte datoer, billeder, udenlandske markeringer og sprog.

4. Tilføjelse af en post

Da vi har oprettet RSS-feedet, kan vi nu tilføje en post til det. I eksemplet nedenfor, vi Brug standardimplementeringen SyndEntryImpl af SyndEntry interface for at oprette en ny post:

SyndEntry-indgang = ny SyndEntryImpl (); entry.setTitle ("Entry title"); entry.setLink ("// www.somelink.com/entry1"); feed.setEntries (Arrays.asList (post));

5. Tilføjelse af en beskrivelse

Da vores post indtil videre er temmelig tom, lad os tilføje en beskrivelse af det. Vi kan gøre dette ved ved hjælp af standardimplementeringen SyndContentImpl af SyndContent interface:

SyndContent beskrivelse = ny SyndContentImpl (); description.setType ("text / html"); description.setValue ("Første post"); entry.setDescription (beskrivelse);

Med setType metode, har vi specificeret, at indholdet af vores beskrivelse vil være en tekst eller HTML.

6. Tilføjelse af en kategori

RSS-poster klassificeres ofte i kategorier for at forenkle opgaven med at finde poster, som vi er interesseret i. Lad os se, hvordan vi kan tilføje en kategori til posten ved hjælp af standardimplementeringen SyndCategoryImpl af SyndCategory grænseflade:

Listekategorier = ny ArrayList (); SyndCategory-kategori = ny SyndCategoryImpl (); category.setName ("Sofistikeret kategori"); categories.add (kategori); entry.setCategories (kategorier);

7. Udgivelse af feedet

Vi har allerede et RSS-feed med en post. Nu vil vi offentliggøre det. Med henblik på denne artikel, ved at offentliggøre, mener vi at skrive feedet til en stream:

Forfatterforfatter = ny FileWriter ("xyz.txt"); SyndFeedOutput syndFeedOutput = ny SyndFeedOutput (); syndFeedOutput.output (feed, forfatter); writer.close ();

8. Læsning af en ekstern feed

Vi ved allerede, hvordan vi opretter et nyt feed, men nogle gange er vi bare nødt til at oprette forbindelse til en eksisterende.

Lad os se, hvordan man læser / indlæser et feed, givet dets URL:

URL feedSource = ny URL ("// rssblog.whatisrss.com/feed/"); SyndFeedInput input = ny SyndFeedInput (); SyndFeed feed = input.build (ny XmlReader (feedSource));

9. Konklusion

I denne artikel har vi vist, hvordan man opretter et RSS-feed med nogle poster, hvordan man offentliggør feedet, og hvordan man læser eksterne feeds.

Som altid kan du tjekke eksemplerne i denne artikel på GitHub.