Javaweb ajax实现分页

这篇博客详细介绍了如何在JavaWeb应用中利用Ajax实现动态分页功能。首先,文章提到了所需的jar包(fastjson-1.2.47.jar)和js库(jquery-3.3.1.js)。接着,作者展示了分页功能的实现,包括数据库查询、分页方法(dao方法)的编写,以及如何根据条件(如商品名称)进行分页查询。最后,文章提到了在Servlet中处理分页请求,并给出了主界面的jQuery代码示例。

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

一、所需jar包   fastjson-1.2.47.jar

二、所需js jquery-3.3.1.js

三、案例讲解

1、准备好数据库、实体类、dao方法等基础包类  注意不要写错  注意数据库连接

 

2、写分页方法(dao方法)

@Override
    public List<Goods> getAllByPage(int pageIndex, int pageSize) {
        List<Goods> ls=new ArrayList<Goods>();
        try {
            con=DBHelper.getCon();
            String sql="select * from(select a.*,rownum as rid from goods a) b where b.rid between ? and ?";
            int a = (pageIndex-1)*pageSize+1;
            int b = pageIndex*pageSize;
            ps=con.prepareStatement(sql);
            //给占位符赋值
            ps.setInt(1, a);
            ps.setInt(2, b);
            rs=ps.executeQuery();
            while(rs.next()) {
                Goods g=new Goods();
                g.setGid(rs.getInt(1));
                g.setGname(rs.getString(2));
                g.setGprice(rs.getInt(3));
                g.setGinfo(rs.getString(4));
                g.setGpath(rs.getString(5));
                ls.add(g);//不要忘记了
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            DBHelper.myClose(con, ps, rs);
        }
        return ls;
    }

    @Override
    public int getRows(String str) {
        int n = 0;
        try {
            con=DBHelper.getCon();
            String sql="select count(*) from "+str;
            ps=con.prepareStatement(sql);
            rs=ps.executeQuery();
            if(rs.next()) {
                n=rs.getInt(1);
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            DBHelper.myClose(con, ps, rs);
        }
        return n;
    }

    @Override
    public List<Goods> getAllByPage(int pageIndex, int pageSize, String gname) {
        List<Goods> ls=new ArrayList<Goods>();
        try {
            con=DBHelper.getCon();
            String sql="select * from(select a.*,rownum as rid from goods a where gname like '%"+gname+"%') b where b.rid between ? and ?";
            int a = (pageIndex-1)*pageSize+1;
            int b = pageIndex*pageSize;
            ps=con.prepareStatement(sql);
            //给占位符赋值
            ps.setInt(1, a);
            ps.setInt(2, b);
            rs=ps.executeQuery();
            while(rs.next()) {
                Goods g=new Goods();
                g.setGid(rs.getInt(1));
                g.setGname(rs.getString(2));
                g.setGprice(rs.getInt(3));
                g.setGinfo(rs.getString(4));
                g.setGpath(rs.getString(5));
                ls.add(g);//不要忘记了
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            DBHelper.myClose(con, ps, rs);
        }
        return ls;
    }

 3、PageServlet  开始写了@WebServlet("/page.do")   相当于web.xml 需要重启服务器

 四、主界面代码

1、(样式及提示)jQuery

 

2、(分页(html))

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值