javaweb中进行模糊查询的代码

查询情况1:查询所有的游戏信息(此处省略代码...)

查询情况2:模糊查询(以下代码)

代码说明:以下代码为,实现查询情况2

public List<Game> Query(Game g) {
		List<Game> list = new ArrayList<Game>();
		String sql = " SELECT * FROM game where 1=1  ";
		if(g.getGame_name() != null){//按照游戏名称查询
			sql+="  AND `game_name` LIKE '%"+g.getGame_name()+"%' ";
		}
		if(g.getGame_type()!=null ){//按照游戏类别查询
			sql+=" AND `game_type` LIKE '%"+g.getGame_type()+"%' ";
		}
		if(g.getGame_company() != null){//按照发行公司查询
			sql+=" AND `game_company` LIKE '%"+g.getGame_company()+"%' ";
		}
		if(g.getGame_year()!=0 ){//按照发行年份查询
			sql+=" AND `game_year` LIKE '%"+g.getGame_year()+"%' ";
		}
		ResultSet rs = this.executeQuery(sql);
		try {
			while (rs.next()) {
				Game game = new Game();
				game.setGame_id(rs.getInt("game_id"));
				game.setGame_name(rs.getString("game_name"));
				game.setGame_type(rs.getString("game_type"));
				game.setGame_company(rs.getString("game_company"));
				game.setGame_year(rs.getInt("game_year"));
				list.add(game);
			}
		} catch (SQLException e) {
			return null;
		}
		return list;
	}

 

  • 5
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
实现分页模糊查询需要使用到数据库的查询语句和Java的分页处理函数。下面给出一个简单的示例代码,实现了在Javaweb项目使用MySQL数据库进行分页模糊查询。 首先,我们需要在JSP页面添加一个表单,用于输入查询关键字和选择查询范围。如下所示: ```html <form action="search.jsp" method="get"> <input type="text" name="keyword"> <select name="range"> <option value="title">标题</option> <option value="content">内容</option> </select> <input type="submit" value="查询"> </form> ``` 接下来,在后台的servlet处理查询请求。我们需要使用MySQL的LIKE运算符进行模糊查询,并且使用LIMIT语句进行分页。示例代码如下: ```java String keyword = request.getParameter("keyword"); String range = request.getParameter("range"); // 连接数据库 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb", "root", "password"); // 构造SQL语句 String sql = "SELECT * FROM mytable WHERE " + range + " LIKE ? LIMIT ?, ?"; PreparedStatement stmt = conn.prepareStatement(sql); stmt.setString(1, "%" + keyword + "%"); stmt.setInt(2, (page - 1) * pageSize); stmt.setInt(3, pageSize); // 执行查询 ResultSet rs = stmt.executeQuery(); while (rs.next()) { // 处理查询结果 } ``` 在上面的代码,我们使用了PreparedStatement对象来构造SQL语句,并且通过设置参数的方式来防止SQL注入攻击。同时,我们使用了LIMIT语句来进行分页处理,其page和pageSize分别表示当前页码和每页的记录数。 最后,我们需要在JSP页面显示查询结果,并且添加上一页和下一页的链接。示例代码如下: ```html <% // 获取查询结果 List<Result> results = (List<Result>) request.getAttribute("results"); int page = (int) request.getAttribute("page"); int total = (int) request.getAttribute("total"); // 显示查询结果 for (Result result : results) { // 显示每一条记录 } // 显示分页链接 if (page > 1) { out.println("<a href='search.jsp?page=" + (page - 1) + "&keyword=" + keyword + "&range=" + range + "'>上一页</a>"); } if (page < total) { out.println("<a href='search.jsp?page=" + (page + 1) + "&keyword=" + keyword + "&range=" + range + "'>下一页</a>"); } %> ``` 在上面的代码,我们首先获取查询结果、当前页码和总页数等信息。然后,我们根据页码和查询关键字构造上一页和下一页的链接,并且在页面上显示出来。注意,我们需要根据当前页码来判断上一页和下一页是否可用。同时,我们需要将查询关键字和查询范围传递给下一页,以便查询结果的持续展示。 以上就是一个简单的Javaweb分页模糊查询的实现方法。当然,实际项目还需要考虑到性能、安全性等问题,这里只是给出了一个简单示例。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值