Mybatis,模糊查询语句,以及传参数的正确写法
不多说直接上代码!
接口:
public interface CommodityMapper {
int deleteByPrimaryKey(Integer productId);
int insert(Commodity record);
Commodity selectByPrimaryKey(Integer productId);
List<Commodity> selectAll();
List<Commodity> getType(int id);
int updateByPrimaryKey(Commodity record);
int getCount();
List<Commodity> SearchCommodity(@Param("productName") String productName);//注意传参的名字必须要和Mapper文件一致
}
Constroller层:
//搜索 @RequestMapping(path = "/search", method = RequestMethod.GET) public ResponseEntity Search(String productName) { if (commodityService.SearchCommodity(productName).size() != 0) { return ResponseEntity.ok(commodityService.SearchCommodity(productName)); } else { return ResponseEntity.ok("error"); } }
Mapper文件
<select id="SearchCommodity" resultType="string" resultMap="BaseResultMap"> select c.product_id, c.product_name, c.product_content, s.product_specs, s.product_price, d.product_simg from commodity c cross join Standard s on c.product_id=s.product_id cross join dommodityAttribute d on c.product_id=d.product_id where c.product_name like concat('%',#{productName},'%') group by c.product_id </select>