准备工作:数据访问层--->业务逻辑层
----dao方法---带分页的模糊查询sql语句
String sql="select * from (select a.*,rownum as rid from tb_book a where bname like '%"+str+"%'order by bid desc) b where b.rid between ? and ?";
---dao方法--拿到行数
public int getRows(String str) {
int n=0;//计数
try {
//获得连接
con=DBHelper.getCon();
//定义sql语句
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(ps, con, rs);
}
return n;
}
二、界面布局--- 模糊查询selvlet类
PrintWriter out = response.getWriter();
int pageIndex=1;
int pageSize=10;//接收前台传来的page页码、size、bname
String pid=request.getParameter("page");//第几页
if(pid!=null) {
pageIndex=Integer.parseInt(pid);
}
String size=request.getParameter("rows");//一页总数据
if(size!=null) {
pageSize=Integer.parseInt(size);
}
String bname=request.getParameter("bname");//关键字
if(bname==null) {
bname="";//查询所有
}IbookBiz ibb=new BookBiz();
//获取总行数
int zhs = ibb.getRows("tb_book where bname like '%"+bname+"%'");
Listls = ibb.getAllByPage(pageIndex, pageSize, bname); 前台json数据需要两个参数,total:总行数;rows:书籍集合
//定义map集合
Mapmym=new HashMap ();
//存值
mym.put("total",zhs);
mym.put("rows", ls);
//把map集合转为json格式
String str= JSON.toJSONString(mym);
out.write(str);
out.flush();
out.close();
---主界面jsp tree菜单
$('#myTree').tree({
url:ctx+'/indexServlet', //请求路径})
-----booklist 界面jsp 表格
$(function(){
$('#myTable').datagrid({
url:ctx+'/BookServlet', //请求路径
fitColumns:true,//自适应宽度
pagination:true,//分页工具栏
toolbar:'#myTools',//加载工具栏
singleSelect:true,//单选一行
loadMsg:"正在加载中......",//自定义提示语句
pageList:[5,10,15,20],//设置每分页数据数
pageSize:5,//默认初始值
]]
});



