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;
	}

 

Java Web和JSP(Java Server Pages)结合使用时,模糊查询通常涉及到前端用户输入数据(如表单搜索框)与后端数据库的交互。模糊查询是指在搜索引擎或用户输入常见的部分匹配搜索,比如用户可能只记得部分关键字,但希望找到相关的结果。 在Java Web,实现模糊查询的一般步骤如下: 1. **前端JSP页面**: - 创建一个HTML表单,包含一个输入框让用户输入查询关键字,以及提交按钮。 - 使用JavaScript(如jQuery或原生JS)处理表单提交,将用户输入的关键字发送到服务器。 ```jsp <form action="search" method="GET"> <input type="text" name="keyword" placeholder="Enter search term..."> <button type="submit">Search</button> </form> ``` 2. **后端Java代码 (Servlet或Controller)**: - 接收来自前端的请求(GET或POST),在`doGet`或`doPost`方法处理。 - 使用`PreparedStatement`或`Querydsl`等库来构建SQL查询,加上通配符(如`LIKE`或`ILIKE`,取决于你的数据库)进行模糊匹配。 ```java String keyword = request.getParameter("keyword"); String query = "SELECT * FROM my_table WHERE column LIKE ? OR another_column LIKE ?"; // ...执行查询并返回结果 ``` 3. **JSP页面接收结果**: - 显示查询结果,可能用表格或其他格式展示。 4. **使用Elasticsearch或Solr进行全文索引**: - 如果需要更强大的搜索功能,可以考虑使用全文搜索引擎,如Elasticsearch,进行全文搜索,它提供了更好的模糊查询性能。 在实现过程,相关问题可能包括:
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值