`
熊孩子会撒野
  • 浏览: 3757 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

商品条件查询

阅读更多

记录一下,可用于根据不同条件来进行查询,都是或操作,只要有一个条件就可以。

/**
	 * 条件查询商品信息
	 * 
	 * @param proId
	 *            编号
	 * @param proName
	 *            名称
	 * @param proType
	 *            类型
	 * @param proPriceS
	 *            开始价格
	 * @param proPriceE
	 *            结束价格
	 * @return
	 */
	public List<ProductEntity> queryProductByCondition(String proId,
			String proName, String proType, float proPriceS, float proPriceE) {
		List<ProductEntity> list = new ArrayList<ProductEntity>();

		// 获得数据库连接
		Connection conn = DBUtil.getConnection();

		// 数据库操作SQL语句
		String sql = " select * from product where 1=1 ";
		
		// 参数列表
		List<String> params = new ArrayList<String>();
		
		// 判断编号是否有效
		if(null != proId && !"".equals(proId)){
			sql+= " and proId like ? ";
			params.add("%"+proId+"%");
		}
		
		// 判断名称是否有效
		if(null != proName && !"".equals(proName)){
			sql+= " and proName like ? ";
			params.add("%"+proName+"%");
		}
		
		// 判断类型是否有效
		if(null != proType && !"".equals(proType)){
			sql+= " and proType = ? ";
			params.add(proType);
		}
		
		// 判断开始价格是否有效
		if(proPriceS>=0){
			sql+= " and proPrice >= ? ";
			params.add(proPriceS+"");
		}
		
		// 判断结束价格是否有效
		if(proPriceE>0){
			sql+= " and proPrice <= ? ";
			params.add(proPriceE+"");
		}
		System.out.println(sql);
		try {
			// 获得操作对象
			PreparedStatement pstmt = conn.prepareStatement(sql);

			// 设置参数
			for (int i = 1; i <= params.size(); i++) {
				pstmt.setString(i, params.get(i-1));
			}
			
			// 执行查询
			ResultSet rs = pstmt.executeQuery();

			// 遍历结果集,封装数据到集合中
			while (rs.next()) {
				ProductEntity pe = new ProductEntity();
				pe.setProId(rs.getString(1));
				pe.setProName(rs.getString(2));
				pe.setProType(rs.getString(3));
				pe.setProPrice(rs.getFloat(4));
				pe.setProStore(rs.getInt(5));
				pe.setProSale(rs.getInt(6));
				pe.setProPicture(rs.getString(7));
				pe.setProDesc(rs.getString(8));

				// 添加实体到集合中
				list.add(pe);
			}

		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			try {
				conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}

		return list;
	}

 

0
1
分享到:
评论
2 楼 熊孩子会撒野 2014-02-28  
嘻嘻,的确有一些地方要改正,这是用sql sever写的~
liuyuhua0066 写道
1.sql语句除了封装的分页查询外,严禁出现selec * 字样;

2.很明显你这段代码只针对oracle,没有考虑兼容其他数据库;

3.oracle中的模糊查询使用like '%%' 是一个很不明智的做法,很明显你没有考虑通配符的'_'的注入查询。

1 楼 liuyuhua0066 2014-02-28  
1.sql语句除了封装的分页查询外,严禁出现selec * 字样;

2.很明显你这段代码只针对oracle,没有考虑兼容其他数据库;

3.oracle中的模糊查询使用like '%%' 是一个很不明智的做法,很明显你没有考虑通配符的'_'的注入查询。

相关推荐

    jQuery淘宝商品列表多条件查询

    本项目“jQuery淘宝商品列表多条件查询”旨在实现一个与淘宝购物平台类似的商品筛选功能,帮助用户快速定位到他们感兴趣的商品。 在商品列表展示上,通常会涉及到以下几个关键知识点: 1. **数据获取与动态加载**...

    jQuery仿淘宝网商品属性多条件查询

    本项目“jQuery仿淘宝网商品属性多条件查询”旨在实现与淘宝网类似的商品搜索功能,允许用户根据多种属性进行筛选,提高用户体验。通过这个实践,我们可以学习到如何利用jQuery和JavaScript来构建一个动态的、交互性...

    小程序多条件查询

    例如,在一个电商小程序中,用户可能希望按照价格范围、商品类别、销售评价等多个条件来查找商品。多条件查询功能能够帮助用户快速定位到他们想要的信息,提高用户体验。 实现小程序的多条件查询功能通常涉及以下几...

    jQuery仿淘宝商品多条件筛选代码

    **jQuery仿淘宝商品多条件筛选代码详解** 在Web开发中,提供用户友好的商品筛选功能是提高用户体验的关键一环。"jQuery仿淘宝商品多条件筛选代码"是一个实用的解决方案,它模仿了淘宝网上的商品筛选功能,适用于...

    购物的商品列表页面多条件查询筛选商品种类

    在电子商务领域,商品列表页面是用户寻找和购买商品的核心界面,多条件查询筛选功能则极大地提升了用户的购物体验。本文将详细探讨"购物的商品列表页面多条件查询筛选商品种类"这一主题,以及它与"淘宝"平台筛选商品...

    jQuery购物的商品列表页面多条件查询筛选商品种类

    在这个场景下,"jQuery购物的商品列表页面多条件查询筛选商品种类"是一个关键的技术点,它涉及到前端开发中的jQuery库以及数据过滤和排序策略。接下来,我们将深入探讨这一主题。 首先,jQuery是一个轻量级的...

    mapinfo数据库进行多条件查询

    例如,我们可以查找所有位于特定区域且建筑类型为住宅的地块,或者找出所有在过去一年内销售的且价格超过一定阈值的商品。 执行多条件查询的步骤通常如下: 1. **打开MapInfo**:首先启动MapInfo应用程序,加载...

    组合条件查询,仿京东商城,Repeater控件实现

    在这个“组合条件查询,仿京东商城”的示例中,我们将深入探讨如何利用Repeater控件来实现类似京东商城的商品搜索功能,通过多个条件组合筛选商品。 首先,让我们了解**组合条件查询**的概念。在电子商务网站如京东...

    mybatis多条件查询处理方案(查询条件为数据库字段非传递参数).pdf

    在MyBatis中,多条件查询是常见的需求,特别是在数据检索和过滤时。通常,我们会根据传递的参数来决定查询的条件。然而,有时我们可能需要根据数据库字段本身的状态来进行查询,而不是依赖于传递的参数。针对这种...

    多条件无刷新查询示例源码

    在数据检索场景下,用户可能需要根据多个不同的字段(如日期、名称、价格等)进行筛选,这就是多条件查询。例如,在一个电商网站上,用户可能希望按商品类别、价格区间和评价等级同时筛选商品。 其次,“无刷新”或...

    淘金币全额兑换商品查询工具 v1.2.1.zip

    淘金币全额兑换商品查询工具提供了按全部分类、部分商品分类等方式实时查询淘金币全额兑换商品。 淘金币全额兑换商品查询工具特点: 1、即时查询淘金币全额兑换商品。 2、按需要勾选自己喜欢的分类查询。 3、...

    高级查询(多条件查询)的简易Web——商品信息管理系统

    可以参考】 使用封装的思想,极尽...专门的数据库操作工具类(加载注册驱动、获取连接对象、获取语句对象、执行语句、释放资源)、多条件查询公共类(获取条件语句、获取查询请求参数)、web基础servlet+jsp 页面跳转

    (源码)基于SpringBoot框架的快餐店管理系统.zip

    商品条件查询支持根据商品名称、类型名称和发布日期进行条件查询。 ### 订单管理 订单查询支持查询所有订单、按用户ID查询订单、按条件查询订单。 订单操作支持订单的确认收货、删除、支付等操作。 订单详情...

    jquery 仿商城的多条件查询

    在电子商务网站中,多条件查询是一种常见的功能,它允许用户根据不同的筛选条件快速找到符合自己需求的商品。这个项目是基于jQuery实现的一个商城风格的多条件查询功能,旨在提供高效、友好的用户体验。以下是对这个...

    仿京东的多条件筛选的实现(php)

    它是通过用户选择的不同条件,如品牌、价格区间、颜色等,来生成SQL查询语句,从而获取满足所有条件的商品数据。在这个过程中,PHP作为服务器端脚本语言,负责接收前端的筛选参数,处理逻辑,并与数据库进行交互。 ...

    商品管理系统-物品更改-查询

    模糊查询允许用户在不完全记得商品全名的情况下,输入部分关键字就能找到相关商品,极大地提高了查找效率。实现模糊查询通常采用SQL的LIKE语句,例如在SQL中,可以使用`%`通配符来匹配任意数量的字符。在系统设计时...

    数据结构实验--基于二叉排序树的商品查询系统

    1. **查询**:根据商品名称进行查找。在二叉排序树中,可以采用递归或迭代的方式,从根节点开始,根据商品名称与当前节点的比较结果,决定向左子树还是右子树继续查找,直到找到目标商品或遍历完整棵树。 2. **插入...

    js列表商品条件筛选代码.zip

    【标题】"js列表商品条件筛选代码.zip"所包含的知识点主要集中在JavaScript、CSS和jQuery技术上,这些技术是构建动态、交互性网页的核心。在这个压缩包中,开发者提供了一个功能完善的商品列表筛选功能,它可能包括...

    淘宝商品列表多条件查询

    淘宝商品列表多条件查询是电商网站中常见的功能,它允许用户根据不同的属性,如价格、销量、评价等筛选出满足需求的商品。这个功能涉及到前端开发的多个方面,包括HTML、CSS、JavaScript以及数据处理和用户体验设计...

    商品存货查询代码

    它不仅帮助店员快速查找特定商品的库存情况,还支持高级查询,如按分类浏览所有商品,或者通过部分名称查找商品。这对于库存盘点、补货决策、销售分析等业务场景都极其有用。 ### 总结 这段代码展示了如何通过动态...

Global site tag (gtag.js) - Google Analytics