17.12.09,web学习第二十一天,还有一年,努力吧青年商品条件查询和分页查询

来源:互联网 发布:前端页面优化方案 编辑:程序博客网 时间:2024/06/05 13:16

条件查询+分页查询

1. 有一种错误:classNotfoundException可能是项目某文件未发布到tomact中去。软件问题

2. jQattrprop有一点区别在于像selected这个选中为true的必须用prop

<td colspan="2">January</td>  指定表格的跨列属性

3. align 属性规定 div 元素中的内容的水平对齐方式 <div align=”center”> 居中对齐内容</div>

4. 按钮提交用submit 

如何全域查找?Ctrol + h

5. sql模糊查询?SELECT 字段 FROM 表 WHERE 某字段 Like 条件

SQL提供了四种匹配模式% :表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。这是其一。

 

如何将被选中的表单的数据的回显(select  input=text[这个特别 谨记]  )?

Select回显思想:

使用jq将被提交的那个选中的optionvalue去当前的options中找到并使用prop“”,true

window.onload=function(){

$("#jbCategory option[value='${serchPro.cid}']").prop("selected",true);

}

输入框的回显:直接在value默认显示位置使用el表达式去之前提交表单被封装的对象中拿 数据显示。

<td>商品名称:<input type="text" name="proName" value="${sjb.proName }">

6. 分页查询结果操作细节:

后台操作细节:

VopageBean的参数:

Private String Count;      //当前页数

Private String countPage;  //当前页面显示的条数

Private String totalCount;  //总条数

Private String totalPage;   //总页数

Private List<T>  productList = new ArrayList<T>();  //每页显示的数据{给泛型T用作工具类。}

使用scalarHandler查数据返回值类型为Long(注意不是long)再调用initValue()方法即可转为int类型。

Math.ceil(double);  //向上取整 ceil天花板

Eclipse同一个文件切出两个屏:ctrol shift -ctrol shift [

全域搜索:ctrol+h

分页时如何求总页数?Math.ceil(1.0*总条数/每页显示条数)double类型再强转为int即可。

Sql limit查询语句?”select * from product ?,?”

Private List<T>  productList = new ArrayList<T>();  //每页显示的 数据{给泛型T用作工具类意思是不限定这个泛型指定是谁,其他类型数据也可以用这个泛型。如果不指定它泛型split_pageBean但他内部的List<JB>指定了泛型,以后其他不同于JB类型数据操 作就不能使用这个类了,指定泛型<T>好处甚大。}

前台操作细节:

注意客户端请求服务器端时的数据均为字符串。

第一次访问网页时没有初始化第几页,需判断如果没有参数给出 默认访问第一页。

熟记jstl的另一个循环标签:

<c:forEach begin=”1”  end=”x”  var=””>  </c:forEach>

使用jstlif else判断显示当前页面的选中阴影效果。

<c:forEach begin="1" end="${product_list_play.page_number }"  var="pp"> 

<c:if test="${product_list_play.current_page_number==pp }">

<li class="active"><a href="split_pages?current_page_number=${pp }">${pp }</a></li>

</c:if>

<c:if test="${product_list_play.current_page_number!=pp }">

<li><a href="split_pages?current_page_number=${pp }">${pp }</a></li>

</c:if>

</c:forEach>

使用jstlif else判断上一页下一页(无)按钮可用?

<c:if test="${product_list_play.current_page_number==1 }"><li class="disabled"><a href="javascript:void(0)" aria-label="Previous"><spanaria-hidden="true">«</span></a></li></c:if><c:if test="${product_list_play.current_page_number!=1 }"><li "><a href="split_pages?current_page_number=${product_list_play.current_page_number-1 }" aria-label="Previous"><spanaria-hidden="true">«</span></a></li></c:if>

分页操作完整代码:后台处理:Web层:public class split_pages extends HttpServlet {// http://localhost:8080/loginCheck/split_pagesprivate int current_page_number; public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// 模拟当前是第一页String parameter = request.getParameter("current_page_number");if (parameter == null) {current_page_number = 1;} else {int i = Integer.parseInt(parameter);current_page_number = i;}// 认为每页显示12条int current_page_play_number = 12;split_pageBean<JB> getpage = split_pageService.getpage(current_page_number, current_page_play_number);List<JB> list = getpage.getPage_data_list(); request.setAttribute("product_list_play", getpage);request.getRequestDispatcher("product_list.jsp").forward(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doGet(request, response);}}Service层:public class split_pageService { public static split_pageBean<JB> getpage(int current_page_number, int current_page_play_number) {split_pageBean<JB> pageBean = new split_pageBean<JB>();// 查询显示的数据集合int limit = (current_page_number - 1) * current_page_play_number;List<JB> data_list = select_Dao.page_data_list(limit, current_page_play_number);// 查询总条数int totalNumbers = select_Dao.totalNumbers();// 总页数=总条数除每页显示数据向上取整int ceil = (int) Math.ceil((1.0 * totalNumbers) / current_page_play_number);System.out.println(ceil);System.out.println(totalNumbers);System.out.println(current_page_number);// 当前页数 current_page_number// 当前页数显示个数 current_page_play_numberpageBean.setCurrent_page_number(current_page_number);pageBean.setCurrent_page_play_number(current_page_play_number);pageBean.setPage_data_list(data_list);pageBean.setPage_number(ceil);pageBean.setTotal_numbers(totalNumbers);// System.out.println(pageBean.getPage_number());// System.out.println(pageBean.getTotal_numbers());return pageBean;}}Dao层:public class select_Dao {private static int i;private static List<JB> list; // 查询总条数public static int totalNumbers() {ComboPooledDataSource cpds = new ComboPooledDataSource();QueryRunner qr = new QueryRunner(cpds);String sql = "select count(*) from product";try {Long query = (Long) qr.query(sql, new ScalarHandler());i = query.intValue();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}return i;} // 查询分页的商品数据public static List<JB> page_data_list(int limit, int current_page_play_number) {System.out.println("dao层:" + limit + "  " + current_page_play_number);ComboPooledDataSource cpds = new ComboPooledDataSource();QueryRunner qr = new QueryRunner(cpds);String sql = "select * from product limit ?,?";try {list = qr.query(sql, new BeanListHandler<JB>(JB.class), limit, current_page_play_number);} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}return list;}}封装的Bean对象:public class split_pageBean<T> {private int page_number;// 总页数private int current_page_number;// 当前页数1private int current_page_play_number;// 当前页显示条数1private int total_numbers;// 总条数1private List<T> page_data_list;// 每页显示的数据1前台处理:<c:forEach items="${product_list_play.page_data_list }" var="pro"><div class="col-md-2"><a href="product_info.htm"> <img src="${pro.pimage }"width="170" height="170" style="display: inline-block;"></a><p><a href="product_info.html" style='color: green'>${pro.pname }</a></p><p><font color="#FF0000">商城价:¥${pro.shop_price }</font></p></div></c:forEach> </div><div style="width: 380px; margin: 0 auto; margin-top: 50px;"><ul class="pagination" style="text-align: center; margin-top: 10px;"> <c:if test="${product_list_play.current_page_number==1 }"><li class="disabled"><a href="javascript:void(0)"aria-label="Previous"> <span aria-hidden="true">«</span></a></li></c:if><c:if test="${product_list_play.current_page_number!=1 }"><li"><ahref="split_pages?current_page_number=${product_list_play.current_page_number-1 }"aria-label="Previous"> <span aria-hidden="true">«</span></a></li></c:if> <c:forEach begin="1" end="${product_list_play.page_number }" var="pp"><c:if test="${product_list_play.current_page_number==pp }"><li class="active"><ahref="split_pages?current_page_number=${pp }">${pp }</a></li></c:if> <c:if test="${product_list_play.current_page_number!=pp }"><li><a href="split_pages?current_page_number=${pp }">${pp }</a></li></c:if></c:forEach>  <!--  <li><a href="#" aria-label="Next"> <span aria-hidden="true">»</span></a></li>  -->  <c:iftest="${product_list_play.page_number==product_list_play.current_page_number}"><li class="disabled"><a href="javascript:void(0)"aria-label="Next"> <span aria-hidden="true">» </span></a></li></c:if><c:iftest="${product_list_play.page_number!=product_list_play.current_page_number}"><li><ahref="split_pages?current_page_number=${product_list_play.current_page_number+1 }"aria-label="Next"> <span aria-hidden="true">» </span></a></li></c:if></ul></div>

阅读全文
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 b超憋不到尿怎么办 做b超前没有尿意怎么办 肝胆b超前喝水了怎么办 肝胆彩超喝水了怎么办 胆囊b超喝了水怎么办 系统b超照不到怎么办 思维彩超宝宝不动怎么办 怀孕七个月胎儿缺氧怎么办 怀孕29周小孩偏小怎么办 孕29周胎儿臀位怎么办 刚怀孕有囊肿该怎么办 食杏中毒怎么办吃什么 猫吃了扁桃仁怎么办 夏天来了??点狐臭怎么办? 我有一小点狐臭怎么办 淘客网站被微信屏蔽怎么办 微信老是屏蔽网站怎么办 华帝售后没人理怎么办 新开的网店没生意怎么办 淘小二介入买家举证不全怎么办 新股申购中签后钱不够怎么办 买的东西收不到怎么办? 拼多多按错收货怎么办 团购招生做到一半不如意怎么办 网购付款后卖家没有货怎么办 淘宝退货商家不同意退款怎么办 淘宝确认收货后卖家拒绝退款怎么办 淘宝卖家不同意退款怎么办 淘宝仅退款卖家不处理怎么办 淘宝申请退款卖家不处理怎么办 快递没收到货要退款怎么办 发票给了不给钱怎么办 付款后不给发票怎么办 供货商不给发票怎么办 刚生过孩子太胖买衣服怎么办 黑色牛仔裤洗的发白怎么办 蘑菇街手机丢了怎么办 黑衣服上全是白毛毛怎么办 支付宝注销了钱怎么办 网上买东西手机号写错了怎么办 二类工资卡过万怎么办