增長數據檢索功能

1、實現模糊查詢功能html

一、在UserBar.html中添加一個搜索框和搜索按鈕java

<form action="selectGoods" th:object="${goodsForm}" method="post">

 <input type="text" name="commodityName"/>

 <input type="submit" value="搜索"/>

二、在GoodsController中寫入關於搜索功能的後臺代碼
web

@RequestMapping(value = "selectGoods", method = RequestMethod.POST)

    public String  selectGoods(Model model,HttpSession session,GoodsForm goodsForm,Device device){

     log.info("搜索相關商品");

     List<GoodsForm> list=goodsService.searchGoodsListrelative(goodsForm);

     model.addAttribute("list",list);

     UVO uvo = (UVO)session.getAttribute("UVO");

     if (uvo == null) {

     uvo = new UVO();

     session.setAttribute("UVO", uvo);

     }

     CartForm cartForm = new CartForm();

     cartForm.setGuestId(uvo.getGuestId());

     model.addAttribute("cartList", cartService.searchCartList(cartForm));

     if(device.isNormal()) {

     return "shop/index";

     } else {

     return "mobile/index";

     }

    }//加入條件判斷,判斷是手機端訪問仍是PC端訪問

三、在GoodsService中寫入關鍵代碼數據庫

public List<GoodsForm> searchGoodsListrelative(GoodsForm frm) {
 List<GoodsForm> result = queryDao.executeForObjectList("Goods.selectGoodsListrelative", frm);
 return result;
 }

四、在GoodsSqlMap數據庫中session

<select id="selectGoodsListrelative"

 parameterClass="cn.agriculture.web.form.GoodsForm"

 resultClass="cn.agriculture.web.form.GoodsForm">

 SELECT commodity.commodity_id as commodityId,

 commodity.type as type,

 supplier.supplier_name as supplierName,

 brand.brand_name as brandName,

 commodity.commodity_name as commodityName,

 commodity.weight as weight,

 commodity.is_gift as isGift,

 commodity.specifications as specifications,

 commodity.unit as unit,

 commodity.benchmark_price as benchmarkPrice,

 commodity.guide_price as guidePrice,

 commodity.retail_price as retailPrice,

 commodity.competition_level as competitionLevel,

 commodity.note as note,

 commodity.update_time as updateTime,

 commodity.update_user as updateUser,

 commodity.picture_id as pictureId,

 stock.stock as stock

 FROM commodity, supplier, brand, stock

 WHERE commodity.commodity_id = stock.commodity_id

 AND commodity.supplier_id = supplier.supplier_id

 AND commodity.brand_id = brand.brand_id

 AND commodity.commodity_name LIKE '%$commodityName$%'
 //數據庫中還能夠用commodity.commodity_name LIKE concat('%',#commodityName#,'%')
  </select>

兩個表相連的SQL表示:app

select產品.Name,明細.Nameide

from產品,明細post

where產品.ID=明細.IDui

相關文章
相關標籤/搜索