From 945a1ab3e4f5b9f808d4df5bc0070f27aff215df Mon Sep 17 00:00:00 2001 From: istars Date: Thu, 10 Jan 2019 01:03:35 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=BA=E7=94=A8json?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F=E4=BC=A0=E9=80=92=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- demo/pom.xml | 6 +++ .../controller/addController.java | 2 +- .../controller/SearchServiceController.java | 19 ++++++-- .../controller/SearchServiceController.java | 38 ---------------- .../service/ProductSearchService.java | 19 -------- .../impl/ProductSearchServiceImpl.java | 45 ------------------- 6 files changed, 23 insertions(+), 106 deletions(-) delete mode 100644 demo/src/test/java/com/example/demo/searchService/controller/SearchServiceController.java delete mode 100644 demo/src/test/java/com/example/demo/searchService/service/ProductSearchService.java delete mode 100644 demo/src/test/java/com/example/demo/searchService/service/impl/ProductSearchServiceImpl.java diff --git a/demo/pom.xml b/demo/pom.xml index 42f6bd0..796a660 100644 --- a/demo/pom.xml +++ b/demo/pom.xml @@ -104,6 +104,12 @@ tomcat-embed-jasper provided + + + com.alibaba + fastjson + 1.2.47 + diff --git a/demo/src/main/java/com/example/demo/productService/controller/addController.java b/demo/src/main/java/com/example/demo/productService/controller/addController.java index 2c83099..e518a49 100644 --- a/demo/src/main/java/com/example/demo/productService/controller/addController.java +++ b/demo/src/main/java/com/example/demo/productService/controller/addController.java @@ -28,7 +28,7 @@ public class addController extends HttpServlet { product.setProductDescription(request.getParameter("description")); product.setPictureAddress(request.getParameter("address")); int result= addPro.add(product); - response.setContentType("text/hmtl;charset=utf-8"); + response.setContentType("text/html;charset=utf-8"); writer=response.getWriter(); if(result==1){ writer.write("增加成功"); diff --git a/demo/src/main/java/com/example/demo/searchService/controller/SearchServiceController.java b/demo/src/main/java/com/example/demo/searchService/controller/SearchServiceController.java index 88b93d1..8670672 100644 --- a/demo/src/main/java/com/example/demo/searchService/controller/SearchServiceController.java +++ b/demo/src/main/java/com/example/demo/searchService/controller/SearchServiceController.java @@ -3,25 +3,33 @@ package com.example.demo.searchService.controller; import com.example.demo.bean.Product; import com.example.demo.searchService.service.ProductSearchService; + +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.util.ArrayList; import java.util.List; @Controller -public class SearchServiceController { +public class SearchServiceController extends HttpServlet { private ProductSearchService productSearchService; @RequestMapping("/search") - public List productSearch(HttpServletRequest request, HttpServletResponse response){ + public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { + response.setContentType("text/html;charset=utf-8"); List list = new ArrayList(); String productName = request.getParameter("productName"); String category = request.getParameter("category"); float intrate = Integer.parseInt(request.getParameter("intrate")); if(productName!=null){ list = productSearchService.findByNameLike(productName); + //按关键字搜索 }else if(category!=null){ list = productSearchService.findByCategory(category); @@ -33,6 +41,11 @@ public class SearchServiceController { list = productSearchService.findByCount(); //默认按产品使用的产品的数量由高到低排序 } - return list; + String json = JSONObject.toJSONString(list); + response.getWriter().print(json); + + } + public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException{ + doPost(request,response); } } diff --git a/demo/src/test/java/com/example/demo/searchService/controller/SearchServiceController.java b/demo/src/test/java/com/example/demo/searchService/controller/SearchServiceController.java deleted file mode 100644 index 88b93d1..0000000 --- a/demo/src/test/java/com/example/demo/searchService/controller/SearchServiceController.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.example.demo.searchService.controller; - - -import com.example.demo.bean.Product; -import com.example.demo.searchService.service.ProductSearchService; -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.RequestMapping; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.List; - -@Controller -public class SearchServiceController { - private ProductSearchService productSearchService; - @RequestMapping("/search") - public List productSearch(HttpServletRequest request, HttpServletResponse response){ - List list = new ArrayList(); - String productName = request.getParameter("productName"); - String category = request.getParameter("category"); - float intrate = Integer.parseInt(request.getParameter("intrate")); - if(productName!=null){ - list = productSearchService.findByNameLike(productName); - //按关键字搜索 - }else if(category!=null){ - list = productSearchService.findByCategory(category); - //按产品类别搜索 - }else if(intrate!=0){ - list = productSearchService.findByIntrate(intrate); - //按利率排序由低到高 - }else{ - list = productSearchService.findByCount(); - //默认按产品使用的产品的数量由高到低排序 - } - return list; - } -} diff --git a/demo/src/test/java/com/example/demo/searchService/service/ProductSearchService.java b/demo/src/test/java/com/example/demo/searchService/service/ProductSearchService.java deleted file mode 100644 index f681cc1..0000000 --- a/demo/src/test/java/com/example/demo/searchService/service/ProductSearchService.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.example.demo.searchService.service; - -import com.example.demo.bean.Product; - -import java.util.List; - -public interface ProductSearchService { - //按关键字查询 - List findByNameLike(String productName); - - //按类别查询 - List findByCategory(String category); - - //按利率从高到低 - List findByIntrate(float intrate); - - ////默认按产品使用的产品的数量由高到低排序 - List findByCount(); -} diff --git a/demo/src/test/java/com/example/demo/searchService/service/impl/ProductSearchServiceImpl.java b/demo/src/test/java/com/example/demo/searchService/service/impl/ProductSearchServiceImpl.java deleted file mode 100644 index 96c33fc..0000000 --- a/demo/src/test/java/com/example/demo/searchService/service/impl/ProductSearchServiceImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.example.demo.searchService.service.impl; - -import com.example.demo.Dao.productMapper; -import com.example.demo.Dao.usageDateMapper; -import com.example.demo.bean.Product; -import com.example.demo.searchService.service.ProductSearchService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.ArrayList; -import java.util.List; - -public class ProductSearchServiceImpl implements ProductSearchService { - @Autowired - productMapper productMapper; - usageDateMapper usageDateMapper; - Product product; - - @Override - public List findByNameLike(String productName){ - return productMapper.findByNameLike(productName); - } - - @Override - public List findByCategory(String category){ - return productMapper.findByCategory(category); - } - - @Override - public List findByIntrate(float intrate){ - return productMapper.findByIntrate(intrate); - } - - @Override - public List findByCount(){ - List productList = new ArrayList(); - List listusage = usageDateMapper.selectByCount(); - int[] arr = listusage.stream().mapToInt(Integer::valueOf).toArray(); - for(int i=0;i