Rev 3094 | Blame | Compare with Previous | Last modification | View Log | RSS feed
package in.shop2020.web;import in.shop2020.model.Item;import in.shop2020.server.ItemRepository;import java.lang.reflect.Type;import java.util.ArrayList;import java.util.List;import java.util.Map;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import com.google.gson.Gson;import com.google.gson.reflect.TypeToken;public class UploadCatalogItemsServlet extends HttpServlet {private static final long serialVersionUID = -3936645972813167428L;private static final Logger log = LoggerFactory.getLogger(UploadCatalogItemsServlet.class);private ItemRepository itemRepository = new ItemRepository();public void doPost(HttpServletRequest req, HttpServletResponse resp) {String data = req.getParameter("data");Gson gson = new Gson();List<Map<String, String>> jsonItems = new ArrayList<Map<String, String>>();Type listOfMapType = new TypeToken<List<Map<String, String>>>() {}.getType();jsonItems = gson.fromJson(data, listOfMapType);List<Item> items = new ArrayList<Item>();for (Map<String, String> jsonItem : jsonItems) {Item item = new Item();item.setId(Long.parseLong(jsonItem.get(Item.ID_KEY)));item.setBrand(jsonItem.get(Item.BRAND_KEY));item.setCatalogId(Long.parseLong(jsonItem.get(Item.CATALOG_ID_KEY)));item.setColor(jsonItem.get(Item.COLOR_KEY));item.setName(jsonItem.get(Item.NAME_KEY));items.add(item);}itemRepository.createAll(items);}public void doGet(HttpServletRequest req, HttpServletResponse resp) {doPost(req, resp);}}