该代码实现了一个商品服务的后台功能,包括以下几个接口:

  1. 查看商品:根据商品ID查看商品的详细信息。
  2. 商品列表:根据商品类型、城市和排序方式获取商品列表。
  3. 搜索商品:根据商品名称和城市搜索商品。

该代码使用了以下函数:

  1. doGet():处理HTTP GET请求,根据请求参数调用不同的接口。
  2. viewGoods():根据商品ID获取商品详细信息。
  3. listGoods():根据商品类型、城市和排序方式获取商品列表。
  4. searchGoods():根据商品名称和城市搜索商品。
  5. doPost():处理HTTP POST请求,调用doGet()函数。

代码示例:

package com.myweb.service;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.myweb.dao.GoodsDao;
import com.myweb.dao.GoodsTypeDao;
import com.myweb.domain.Goods;

public class GoodsService extends HttpServlet {

	private static final long serialVersionUID = 1L;

	HttpSession _session;
	HttpServletRequest _request;
	HttpServletResponse _response;

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		_session = request.getSession();
		_request = request;
		_response = response;
		String action = "";
		try {
			//读取数据
			BufferedReader br = new BufferedReader(new InputStreamReader(
					(ServletInputStream) _request.getInputStream(), "utf-8"));
			StringBuffer sb = new StringBuffer("");
			String temp;
			while ((temp = br.readLine()) != null) {
				sb.append(temp);
			}
			br.close();
			if (!sb.toString().equals("")) {
				JSONObject jsonObj = JSONObject.parseObject(sb.toString());
				action = jsonObj.getString("action");
				if (action.equals("list")) {
					listGoods(jsonObj.getString("goodstype"), jsonObj
								.getString("cityid"), jsonObj.getString("orderby"));
				} else if (action.equals("view")) {
					viewGoods(jsonObj.getString("id"));
				} else if (action.equals("search")) {
					searchGoods(jsonObj.getString("goodsname"), jsonObj
							.getString("cityid"));
				}
			}
		} catch (Exception e) {
			System.out.print(e.getMessage());
		}
	}

	// 查看
	public void viewGoods(String typeId) throws ServletException, IOException {
		String result = "";// 返回结果集
		try {
			GoodsDao goodsDAO = new GoodsDao();
			Goods goods = new Goods();
			goods = goodsDAO.getGoodsById(typeId);
			if (goods != null) {
				result = JSONObject.toJSONString(goods);
			}
		} catch (Exception e) {
			System.out.print(e.getMessage());
		} finally {
			/* 返回数据 */
			_response.setCharacterEncoding("UTF-8");
			_response.setHeader("content-type", "text/html;charset=UTF-8");
			PrintWriter pw = _response.getWriter();
			pw.write(result);
			pw.flush();
			pw.close();
		}
	}

	// 商品列表
	public void listGoods(String goodstype, String cityid, String orderby)
			throws ServletException, IOException {
		String result = "";// 返回结果集
		try {
			GoodsDao goodsDao = new GoodsDao();
			List<Map<String, Object>> goodsList = new ArrayList<Map<String, Object>>();
			goodsList = goodsDao.getGoodsListByType(goodstype, cityid, orderby);
			if (goodsList != null) {
				String json = JSONArray.toJSONString(goodsList);
				result = json.toString();
			}
		} catch (Exception e) {
			System.out.print(e.getMessage());
		} finally {
			/* 返回数据 */
			_response.setCharacterEncoding("UTF-8");
			_response.setHeader("content-type", "text/html;charset=UTF-8");
			PrintWriter pw = _response.getWriter();
			pw.write(result);
			pw.flush();
			pw.close();
		}
	}

	public void searchGoods(String goodsname, String cityid)
			throws ServletException, IOException {
		String result = "";// 返回结果集
		try {
			GoodsDao goodsDao = new GoodsDao();
			List<Map<String, Object>> goodsList = new ArrayList<Map<String, Object>>();
			goodsList = goodsDao.getGoodsListByGoodsname(goodsname, cityid);
			if (goodsList != null) {
				String json = JSONArray.toJSONString(goodsList);
				result = json.toString();
			}
		} catch (Exception e) {
			System.out.print(e.getMessage());
		} finally {
			/* 返回数据 */
			_response.setCharacterEncoding("UTF-8");
			_response.setHeader("content-type", "text/html;charset=UTF-8");
			PrintWriter pw = _response.getWriter();
			pw.write(result);
			pw.flush();
			pw.close();
		}
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}
}
Java 商品服务后台功能代码解析:查看、列表、搜索商品接口实现

原文地址: https://www.cveoy.top/t/topic/mXL3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录