为项目添加一个搜索框,并改写JSP页面为HTML

一、搜索框完成站内搜索

实现功能思路:在首页文本框中输入任意字,点击搜索按钮将实现站内查询,将含有输入内容的商品显示在首页下方。

思路:

1.在项目首页中添加一个文本框和按钮

userBar

<form action="serch" th:object="${goodsFrom}" method="post">
         <li>
		<span><input name="commodityName" type="text" /></span>
		<span><button type="submit" name="sousuo">搜索</button></span> 
	</li>		
          </form>

2.在GoodsController中定义一个方法将存放在bean中的值取到result中传给list输出到首页。

在这里进行了购物车的实例化


GoodsController

@RequestMapping(value = "/serch", method = RequestMethod.POST)
	public String delete(GoodsForm goodsForm, Model model) {
		List<GoodsForm> rescult = goodsService.serchGoodsList(goodsForm);
		model.addAttribute("list", rescult);
		CartForm cartForm = new CartForm();
		model.addAttribute("cartList", cartService.searchCartList(cartForm));
		return "shop/index";
	}

3.定义一个list的方法存放搜索出来的结果列表

GoodsService

public  List<GoodsForm> serchGoodsList(GoodsForm frm) {

	List<GoodsForm> result = queryDao.executeForObjectList("Goods.selectList", frm);
			return result;
		}

4.要完成站内的搜索,就必须在数据库中筛选出含有输入内容的数据。则此时就必须注意,一个完整的项目都是各个表之间的相互调用,此时查询关联表的情况下,表名为多个。而模糊查询输入的内容对应的SQL文为:

where name like %XX%

而今天项目中的是    where  表名.name   like   '%$ XXXXXX $%'      而且where中多个条件并存时用AND或者OR连接

GoodsSqlMap

<select id="selectList"
		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$%'
	
	</select>

二、改JSP为HTML页面

思路:将JSP页面改为HTML是方便前台后期的修改,需要将JSP页面中的所有标签换成HTML中的表达方式

form表单中需要添加一项   th:value="${userBean} " 表示引用的是UserBean 中的数据

文本输出要用   th:text="${MESSAGE}"

<a th:href="@{delete(userId=${user.userId})}"   其中@为指令,userId=${user.userId}为取值操作

转载于:https://my.oschina.net/u/2411768/blog/482346

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值