KO
|
EN
gitlite โ search
Search
#javascript
#python
#hacktoberfest
#react
#ai
#typescript
#llm
#go
#golang
#android
#machine-learning
#rust
#deep-learning
#linux
digesteroids
โ 8
Open GitHub โ
๐ Digester on Steroids for Java
Download README (.md)
Explore Similar Repositories
http-concat
:
A express middleware for concatenating files in a given context: CSS and JS files usually
StackExchangeStatisticsExplorer
:
A repository for the Stack Exchange Statistics Explorer projects.
SuperAdapter
:
listviewๅrecycleview็adapter็ๅฐ่ฃ ,่่้็จๆงๅๅฏ่ฏปๆง,ไธ่ฟๅบฆๆฝ่ฑก.ๆไปฌ็ๅๅๆฏ,ไธ่ฆๆด้ฒid
i2lua
:
i2p router with fully programmable lua interface
rnn
:
Source code for a series of blog posts about recurrent neural networks (Elman, Jordan, LSTM)
// repository documentation
Was this content helpful?
โ 0
(0 ratings)
Select Rating:
โ
โ
โ
โ
โ
Submit Feedback
Recent Feedback
×
Download README
Do you want to download the
README.md
file for
digesteroids
?
Download (.md)
digesteroids ======== [](https://github.com/brunocvcunha/digesteroids/blob/master/LICENSE) [](https://travis-ci.org/brunocvcunha/digesteroids) [](https://maven-badges.herokuapp.com/maven-central/digesteroids/digesteroids) [](https://coveralls.io/github/brunocvcunha/digesteroids?branch=master) :pill: Digester on Steroids. Map data to your POJOs in a beautiful way. Supports mapping from multiple sources: 1. HTML (scraping), using XPath, ID or CSS selector. 2. JSON Path 3. Maps 4. Property files Download -------- Download [the latest JAR][1] or grab via Maven: ```xml <dependency> <groupId>org.brunocvcunha.digesteroids</groupId> <artifactId>digesteroids</artifactId> <version>0.3</version> </dependency> ``` or Gradle: ```groovy compile 'org.brunocvcunha.digesteroids:digesteroids:0.3' ``` Snapshots of the development version are available in [Sonatype's `snapshots` repository][snap]. Digesteroids requires at minimum Java 8. Examples -------- ### Convert a HTML into a POJO, based on the IDs, CSS Selector or XPath example.html ```html <html> <head> <title>Digesteroids Test</title> </head> <body> <p id="fname">Bruno Candido Volpato da Cunha</p> <p id="age">24</p> <p class="address1">65535 University Ave</p> <p><span>Palo Alto</span></p> </body> </html> ``` PersonPOJO.java ```java @DigesterEntity public class PersonPOJO { @DigesterMapping(source = "htmlExample", refType = ReferenceTypeEnum.HTML_ID, value = "fname") private String name; @DigesterMapping(source = "htmlExample", refType = ReferenceTypeEnum.HTML_ID, value = "age") private Integer age; @DigesterMapping(source = "htmlExample", refType = ReferenceTypeEnum.PASS_THROUGH, value = "") private AddressPOJO address; } @DigesterEntity public class AddressPOJO { @DigesterMapping(source = "htmlExample", refType = ReferenceTypeEnum.HTML_CSS, value = "p.address1") private String address1; @DigesterMapping(source = "htmlExample", refType = ReferenceTypeEnum.HTML_XPATH, value = "p > span") private String city; } ``` Usage ```java Digesteroids digister = new Digesteroids(); PersonPOJO person = digister.convertHTMLToType("htmlExample", getClass().getResourceAsStream("/example.html"), PersonPOJO.class); assertEquals("Bruno Candido Volpato da Cunha", person.getName()); assertEquals("65535 University Ave", person.getAddress().getAddress1()); assertEquals("Palo Alto", person.getAddress().getCity()); ``` ### Convert a Map or Json into a POJO, converting the names: POJOs: ```java @DigesterEntity public class PersonPOJO { // Field can have multiple @DigesterMapping @DigesterMapping(source = "htmlExample", refType = ReferenceTypeEnum.HTML_ID, value = "fname") @DigesterMapping(value = "fullName") private String name; @DigesterMapping(source = "htmlExample", refType = ReferenceTypeEnum.HTML_ID, value = "age") @DigesterMapping(value = "age") private Integer age; @DigesterMapping(value = "personAddress") private AddressPOJO address; } @DigesterEntity public class AddressPOJO { @DigesterMapping(value = "address") private String address1; @DigesterMapping(value = "addressCity") private String city; } ``` Usage (Map to POJO): ```java Digesteroids digister = new Digesteroids(); Map<String, Object> personMap = new LinkedHashMap<>(); personMap.put("fullName", "Bruno"); personMap.put("age", "24"); Map<String, Object> addressMap = new LinkedHashMap<>(); addressMap.put("address", "65535 University Ave"); addressMap.put("addressCity", "Palo Alto"); personMap.put("personAddress", addressMap); PersonPOJO person = digister.convertObjectToType(personMap, PersonPOJO.class); assertEquals("Bruno", person.getName()); assertEquals("65535 University Ave", person.getAddress().getAddress1()); assertEquals("Palo Alto", person.getAddress().getCity()); ``` [1]: https://search.maven.org/remote_content?g=org.brunocvcunha.digesteroids&a=digesteroids&v=LATEST [snap]: https://oss.sonatype.org/content/repositories/snapshots/