查询和模糊查询

1.查询操作
query.do->doPost->query方法->JSP
query方法的代码:

 

private void query(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException  {
		//1.调用CustomerDAO的getAll()得到Customer的集合
		List<Customer> customers=customerDAO.getAll();
		//2.把 Customer的集合放入request中
		request.setAttribute("customers", customers);
		
		//3.转发页面到index.jsp(不能是重定向)
		request.getRequestDispatcher("/index.jsp").forward(request, response);
}	

JSP:核心
获取request中的customers属性,遍历显示。

 

<%
	List<Customer> customers=(List<Customer>)request.getAttribute("customers");
	for(Customer customer:customers){
%>
	<tr>
		<td><%= customer.getId() %></td>
		<td><%= customer.getName() %></td>
		<td><%= customer.getAddress() %></td>
		<td><%= customer.getPhone() %></td>
		<td>
			<a href="">Update</a>
			<a href="delete.do?id=<%=customer.getId() %>" class="delete">Delete</a>
		</td>
	</tr>
<%		
	}
%>

2.模糊查询:
SQL:

 

public List<Customer> getForListWithCriteriaCustomer(CriterCustomer cc) {
	
		String sql="select id,name,address,phone from customers where "+"name like ? and address like ? and phone like ?";
		return getForList(sql,cc.getName(),cc.getAddress(),cc.getPhone());
	}

为了正确的填充占位符时,重写了CriteriaCustomer的getter:

 

public String getName() {
		if (name==null) 
			name="%%";
		else
			name="%"+name+"%"; 
		return name;
}
public String getAddress() {
		if (address==null) 
			address="%%";
		else
			address="%"+address+"%"; 
		return address;
}

修改Servlet:获取请求参数;把请求参数封装为CriteriaCustomer对象,在调用
public List<Customer> getForListWithCriteriaCustomer(CriterCustomer cc);方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值