title: parse JSON string java, best practice
body: <p>I have JSON string/response and I need simple parse it and get objects/arrays, it can be repeated, so I need get list by list, actually I do not know how to do it, because a lot of parsers and all examples with simple JSON-es, but my is bit difficult and I need to navigate in it.
  Here is a example of my JSON</p>
  
  <pre><code>{
      "HotelListResponse": {
          "customerSessionId": "0ABAAA83-04C7-5B91-40A2-754D7299476C",
          "numberOfRoomsRequested": 1,
          "moreResultsAvailable": true,
          "cacheKey": "-4804c75b:140a754d729:4da2",
          "cacheLocation": "10.186.170.131:7300",
          "HotelList": {
              "@activePropertyCount": "1157",
              "@size": "1",
              "HotelSummary": {
                  "@order": "0",
                  "hotelId": 403147,
                  "name": "Justabed - Hostel",
                  "address1": "38 avenue augustin dumont",
                  "city": "Malakoff",
                  "postalCode": 92240,
                  "countryCode": "FR",
                  "airportCode": "   ",
                  "supplierType": "E",
                  "propertyCategory": 5,
                  "hotelRating": 0,
                  "confidenceRating": 52,
                  "amenityMask": 8,
                  "tripAdvisorRating": 1.5,
                  "locationDescription": "Near Paris Expo Porte de Versailles",
                  "shortDescription": "&amp;lt;p&amp;gt;&amp;lt;b&amp;gt;Property Location&amp;lt;/b&amp;gt; &amp;lt;br /&amp;gt;With a stay at Justabed in Vanves, you&amp;apos;ll be close to Stade de la Plaine and Eiffel Tower.&amp;lt;br/&amp;gt; This hostel is within close proximity of Georges Brassens Park and",
                  "highRate": 24.87,
                  "lowRate": 24.87,
                  "rateCurrencyCode": "EUR",
                  "latitude": 48.81804,
                  "longitude": 2.30196,
                  "proximityDistance": 2.5680416,
                  "proximityUnit": "MI",
                  "hotelInDestination": true,
                  "thumbNailUrl": "/hotels/5000000/4850000/4849100/4849100/4849100_7_t.jpg",
                  "deepLink": "http://travel.ian.com/index.jsp?pageName=hotAvail&amp;amp;cid=55505&amp;amp;hotelID=403147&amp;amp;mode=2&amp;amp;numberOfRooms=1&amp;amp;room-0-adult-total=1&amp;amp;room-0-child-total=0&amp;amp;arrivalMonth=8&amp;amp;arrivalDay=18&amp;amp;departureMonth=8&amp;amp;departureDay=21&amp;amp;showInfo=true&amp;amp;locale=en_US&amp;amp;currencyCode=EUR",
                  "RoomRateDetailsList": {
                      "RoomRateDetails": {
                          "roomTypeCode": 200166353,
                          "rateCode": 201887482,
                          "maxRoomOccupancy": 1,
                          "quotedRoomOccupancy": 1,
                          "minGuestAge": 3,
                          "roomDescription": "Single Beds in Mixed Dormitory Room - Non refundable",
                          "currentAllotment": 8,
                          "propertyAvailable": true,
                          "propertyRestricted": false,
                          "expediaPropertyId": 4849100,
                          "rateKey": "0ABAAA83-04C7-5B91-40A2-754D72994DA3",
                          "RateInfo": {
                              "@rateChange": "false",
                              "@promo": "false",
                              "@priceBreakdown": "true",
                              "ChargeableRateInfo": {
                                  "@total": "79.83",
                                  "@surchargeTotal": "5.22",
                                  "@nightlyRateTotal": "74.61",
                                  "@maxNightlyRate": "24.87",
                                  "@currencyCode": "EUR",
                                  "@commissionableUsdTotal": "99.65",
                                  "@averageRate": "24.87",
                                  "@averageBaseRate": "24.87",
                                  "NightlyRatesPerRoom": {
                                      "@size": "3",
                                      "NightlyRate": [
                                          {
                                              "@promo": "false",
                                              "@rate": "24.87",
                                              "@baseRate": "24.87"
                                          },
                                          {
                                              "@promo": "false",
                                              "@rate": "24.87",
                                              "@baseRate": "24.87"
                                          },
                                          {
                                              "@promo": "false",
                                              "@rate": "24.87",
                                              "@baseRate": "24.87"
                                          }
                                      ]
                                  },
                                  "Surcharges": {
                                      "@size": "1",
                                      "Surcharge": {
                                          "@amount": "5.22",
                                          "@type": "TaxAndServiceFee"
                                      }
                                  }
                              }
                          },
                          "ValueAdds": {
                              "@size": "1",
                              "ValueAdd": {
                                  "@id": "2048",
                                  "description": "Free Wireless Internet"
                              }
                          }
                      }
                  }
              }
          }
      }
  }
  </code></pre>