MyBatis实现用户的动态搜索分页等功能(6)

本文介绍在Servlet层实现批量删除及动态搜索加分页功能的具体实现方式,包括使用Ajax和注解处理批量删除,以及分页显示和动态搜索用户信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Servlet层实现批量删除,动态搜索加分页功能

批量删除使用js比较好处理用Ajax较为麻烦之前试过几次
我们PaginationUser.jsp通过location.href=“BatchDeletionbecheckbox=”+becheckbox;
方法问号传参进入到Servlet
在servlet层创建BatchDeletion.java,在这里我们不需要往web.xml添加任何东西,servlet层的方法调用都采用注解的方式
实现BatchDeletion.java

package servlet;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import service.IAddressService;
import service.impl.AddressServiceImpl;
@SuppressWarnings("serial")
@WebServlet(name="BatchDeletion",urlPatterns="/BatchDeletion")
public class BatchDeletion extends HttpServlet{
/*在这里每次都调用dopost方法*/
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		
		doPost(req, resp);
	}
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		/*都设置编码格式*/
		req.setCharacterEncoding("utf-8");
		resp.setCharacterEncoding("utf-8");
		String ids = req.getParameter("becheckbox"); /*传过来的becheckbox就是字符串*/
		System.out.println(ids);
		String[] idss = ids.split(","); /*使用split对字符串进行切割*/

		IAddressService iaddser = new AddressServiceImpl();
		int flag = iaddser.delUsersByIds(idss);
		if(flag>0) {
			resp.sendRedirect("PaginationUser.jsp");/*重定向跳转页面*/
		}		
}
}

Servlet实现Ajax分页加动态搜索功能

package servlet;

import java.io.IOException;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import entity.User;
import service.IAddressService;
import service.impl.AddressServiceImpl;
@SuppressWarnings("serial")
@WebServlet(name="PaginationUser",urlPatterns="/PaginationUser")
public class PaginationUser extends HttpServlet{
	
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doPost(req, resp);
	}
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		req.setCharacterEncoding("utf-8");
		resp.setCharacterEncoding("utf-8");
		resp.setContentType("text/html;charset=utf-8");
		String pagecount = req.getParameter("pcount");
		int pcount = 1,count = 3;  /*给定初始值*/
		if(pagecount != null && pagecount !="") {
			pcount = Integer.parseInt(pagecount);
		}
		
		IAddressService iaddser = new AddressServiceImpl();
		List<User> list = iaddser.paginationUser((pcount-1)*count, count);
		req.setAttribute("ulist", list);
	       String str="";
	       for (User user : list) {
			 str+="<tr><td align='center'><input type='checkbox' value='"+user.getId()+"'"
					+ " name='ids' id = 'uid'/>"+user.getId()+"</td>"+
			    "<td align='center'>"+user.getUname()+"</td>"+
			    "<td align='center'>"+user.getUsex()+"</td>"+
			    "<td align='center'>"+user.getRole().getRname()+"</td>"+
			    "<td align='center'><a href='UpdateUserShow?uid="+user.getId()+"'>修改</a>"+
			    "<a href='DeleteUser?id="+user.getId()+"' onclick='return del()' >删除</a></td></tr>";
		  }
	       resp.getWriter().print(str);
	}
}

使用str字符串传递到前台更方便,不过有个缺点双引号太多不好处理,特别是那种带有css样式更不好处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值