Java Web ใช้ฟังก์ชั่นการเพจและแบ่งปันกับทุกคนดังนี้:
ใช้เฟรมเวิร์ก: SSM
ฐานข้อมูล: Oracle
การพูดถึงการสืบค้นการปนเปื้อนของ Oracle นั้นซับซ้อนกว่า MySQL มาก พูดคุยสั้น ๆ เกี่ยวกับที่นี่:
สอบถามข้อมูลสิบข้อมูลแรก:
เลือก * จาก (เลือก rownum wn, rn. * จาก (เลือก id, ชื่อ, create_time เป็น createTime, musictor, musictitle จากคำสั่ง krry_blog โดย create_time desc) rn) wn wn <= 10 และ wn> 0
ไวยากรณ์มีความซับซ้อนมากขึ้น
ด้วยผลลัพธ์เดียวกันไวยากรณ์ของ MySQL คือ: สามารถแก้ไขได้ด้วยขีด จำกัด
เลือก ID, ชื่อเรื่อง, create_time เป็น createTime, musictor, musictitlefrom krry_blog คำสั่งซื้อโดย create_time desclimit 0,5
ฉันจะไม่พูดถึงการก่อสร้างกรอบ SSM ฉันได้แนะนำรายละเอียดในบล็อกก่อนหน้า ที่นี่ฉันจะพูดคุยเกี่ยวกับฟังก์ชั่นของการใช้การแบ่งหน้าเว็บ Java
ใช้ปลั๊กอิน JS: krry_page.js และ jQuery
เลเยอร์การคงอยู่ของผู้ทำแผนที่:
blogmapper.java
แพ็คเกจ com.krry.mapper; นำเข้า java.util.hashmap; นำเข้า java.util.list; นำเข้า com.krry.entity.params;/** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * รายการ <hashmap <string, object >> findblogs (params params); / ** * คำนวณจำนวนบล็อก * com.krry.dao.admin * ชื่อเมธอด: countblogs * @author krry * @param params * @return int * @exception * @since 1.0.0 */ countblogs ยาวสาธารณะ (); -
blogmapper.xml
<? xml เวอร์ชัน = "1.0" การเข้ารหัส = "utf-8"?> <! doctype mapper สาธารณะ "-// mybatis.org//dtd mapper 3.0 // en" "http://mybatis.org/dtd/mybatis-3-mapper.dtddtd > <!-การสืบค้น Pagination ข้อมูลบล็อกทั้งหมด-> <select id = "findBlogs" resultType = "java.util.hashMap" พารามิเตอร์ parameterType = "params"> เลือก * จาก (เลือก rownum wn, rn. * จาก (เลือก id, title, create_time #{pagesize} และ wn> #{pageno} </select> <!-สอบถามจำนวนบล็อก-> <select id = "countBlogs" resultType = "ยาว"> เลือกนับ (*) จาก krry_blog </select> </mapper>ชั้นธุรกิจบริการ:
คลาสอินเตอร์เฟส: iblogservice.java
แพ็คเกจ com.krry.service; นำเข้า java.util.hashmap; นำเข้า java.util.list; นำเข้า javax.servlet.http.httpservletrequest นำเข้า org.apache.ibatis.annotations.param; (นำไปใช้ใน impl) * @author asusaad * */อินเตอร์เฟสสาธารณะ iblogservice {/** * การสืบค้น pagination สำหรับบล็อกทั้งหมด * @param params * @return */รายการสาธารณะ <hashmap <string, object >> findblogs (พารามิเตอร์พารามิเตอร์); / ** * คำนวณจำนวนบล็อก * @param params * @return */ countblogs ยาวสาธารณะ (); - INPLIS
แพ็คเกจ com.krry.service.impl; นำเข้า java.util.hashmap; นำเข้า java.util.list; นำเข้า org.springframework.beans.factory.annotation.autowired; นำเข้า org.springframework.stereotype.service; com.krry.entity.params; นำเข้า com.krry.mapper.blogmapper; นำเข้า com.krry.service.iblogservice;/** * การใช้งานอินเตอร์เฟสชั้นบริการ * @author asusaad * */ @servicepublic blogservice /*** บล็อกการสืบค้น*/รายการสาธารณะ <hashmap <string, object >> findblogs (params params) {// ข้อมูลบล็อกการสืบค้นรายการบล็อก <hashmap <string, object >> blog = blogmapper.findblogs (params); กลับบล็อก; } / ** * คำนวณจำนวนบล็อก * @param params * @return * / countblogs ยาวสาธารณะ () {long coutblogs = blogmapper.countblogs (); ส่งคืน coutblogs; -เลเยอร์ควบคุมคอนโทรลเลอร์:
krrycontroller.java
แพ็คเกจ com.krry.controller; นำเข้า java.util.hashmap; นำเข้า java.util.list; นำเข้า org.springframework.beans.factory.annotation.autoWired; นำเข้า org.springframework.stereotype.controller; org.springframework.web.bind.annotation.responsebody; นำเข้า org.springframework.web.servlet.modelandview; นำเข้า com.krry.entity.params; นำเข้า com.krry.service.iblogservice; // หมายความว่ามันเป็นรูปแบบหลายกรณีและเว็บเลเยอร์ที่ส่งคืนโดยผู้ใช้แต่ละคนคือคลาสสาธารณะที่แตกต่างกัน Krrycontroller {@autowired ส่วนตัว iblogservice blogservice; /*** โฮมเพจและการสืบค้น pagination* @return*/@requestmapping ("/index") ดัชนีโมเดลและวิววิว (params params) {params.setpageno (0); params.setPagesize (10); // ที่จุดเริ่มต้นมีเพียง 10 รายการเท่านั้นที่สอบถาม // การเรียกรายการเลเยอร์ธุรกิจ <hashmap <string, object >> blogs = blogservice.findblogs (params); // สอบถามจำนวนบล็อก long coutblogs = blogservice.countblogs (); ModelAndView ModelAndView = new ModelAndView (); ModelAndView.AdDoBject ("บล็อก", บล็อก); ModelAndView.adDoBject ("Coutblogs", Coutblogs); ModelAndView.SetViewName ("ดัชนี"); Return ModelandView; }/** * การสืบค้น pagination สำหรับคำขอ ajax * @param params * @return */@ResponseBody @RequestMapping ("/loadData") Public HashMap <String, Object> loadData (พารามิเตอร์พารามิเตอร์) รายการ <hashmap <string, object >> blogs = blogservice.findblogs (params); map.put ("บล็อก", บล็อก); แผนที่กลับ; -มีสองคลาสเอนทิตีที่นี่ซึ่งใช้เป็นบล็อกที่ถูกฉีดสำหรับการสืบค้นฐานข้อมูลและพารามิเตอร์สองพารามิเตอร์สำหรับพารามิเตอร์การสืบค้น pagination:
ตั้งค่าพารามิเตอร์ข้อมูล: Pageno (หน้าถัดไป): คือจำนวนหน้าปัจจุบัน* ปริมาณที่จะแสดงในหน้าถัดไป (หน้าถัดไป): ปริมาณที่ได้รับการสืบค้น (pageno) + ปริมาณที่จะแสดงในแต่ละหน้า
ในฐานข้อมูลมันคือ wn <= pagesize และ wn> pageno เพื่อสอบถามข้อมูลหน้าเว็บ
blog.java
แพ็คเกจ com.krry.entity;/** * * ผู้ใช้ * @author krry * @version 1.0.0 * */บล็อกคลาสสาธารณะ {// รหัสสตริงส่วนตัวหลักคีย์; // บล็อกชื่อเรื่องสตริงส่วนตัว; // ผู้เขียนเพลงสตริงส่วนตัวเพลง Musictitle; // ชื่อเพลงสตริงส่วนตัว Musictitle; // เวลาสร้างสตริงส่วนตัว createTime; บล็อกสาธารณะ (รหัสสตริง, ชื่อสตริง, สตริง musictor, สตริง musictitle, สตริง createTime) {this.id = id; this.title = title; this.musictor = musictor; this.musictitle = musictitle; this.createTime = createTime; } สตริงสาธารณะ getId () {return id; } โมฆะสาธารณะ setId (รหัสสตริง) {this.id = id; } สตริงสาธารณะ getTitle () {return title; } โมฆะสาธารณะ settitle (ชื่อสตริง) {this.title = title; } Public String getMusictor () {return music; } โมฆะสาธารณะ setMusictor (เพลงสตริง) {this.musictor = musictor; } สตริงสาธารณะ getMusictitle () {return musictitle; } โมฆะสาธารณะ setMusictitle (String musictitle) {this.musictitle = musictitle; } สตริงสาธารณะ getCreateTime () {return createTime; } โมฆะสาธารณะ setCreateTime (String createTime) {this.createTime = createTime; - params.java
แพ็คเกจ com.krry.entity;/** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * pageno จำนวนเต็มส่วนตัว = 0; จำนวนเต็มสาธารณะ getPageno () {return pageno; } โมฆะสาธารณะ setpageno (จำนวนเต็ม pageno) {this.pageno = pageno; } จำนวนเต็มสาธารณะ getPagesize () {กลับ pageSize; } โมฆะสาธารณะ setPagesize (จำนวนเต็มหน้า) {this.page.ize = pageSize; - เว็บเพจดัชนี. jsp
<%@ page language = "java" import = "java.util.*" pageencoding = "utf-8"%> <%@ taglib uri = "http://java.sun.com/jsp/jstl/core" prefix = "c"%> request.getScheme ()+": //"+request.getServerName ()+":"+request.getServerport ()+path+"/"; pageContext.setAttribute ("basepath", basepath);%> <! ร่างกาย {พื้นหลัง: url ("ทรัพยากร/ภาพ/78788.jpg"); ขนาดพื้นหลัง: ปก;} .titless {ตัวอักษรขนาด: 34px; text-allign: center; สี: สีดำ; 0; Padding: 6px; ตำแหน่ง: ญาติ;} .ke_tabbox .sendmy {text-align: center; Font-Family: "Microsoft Yahei"; ขนาดตัวอักษร: 28px; -webkit-text-fill-color: โปร่งใส; ความเป็นมา: -webkit -gradient (เชิงเส้น, ด้านบนซ้าย, ด้านล่างซ้าย, จาก (#fd8700), ถึง (#ff00b1)); -webkit-background-clip: text; มาร์จิ้น: 8px auto 0; จุดสูง: 35px;} .ke_tabbox .ke_table {ความกว้าง: 100%; ระยะขอบด้านบน: 26px;} .ke_tabbox th {พื้นหลัง: #ccc; font-weight: bold;} .ke_tabbox .ke_table Ellipsis; Border: 1px Solid #FFF; Padding: 4PX 12PX; สี: #666; FONT-SIZE: 12PX;} /*ที่เกี่ยวข้องกับการแบ่งแยก* / .tzPage {FONT-SIZE: 12PX; ตำแหน่ง: ABSELUTE; .t_mode {padding-right: 4px;} #tbody .t_avbiaoq: hover {color: #ff6857; transition: .4s} #tbody .t_dele {padding-left: 4px;} .tzPage. A {text-decoration: none; none: none; color:#7D7D7D; พื้นหลังสี:#f2f2f2; Border-Radius: 3px;} .tzPage A: Hover {พื้นหลัง:#DD5862; สี: #FFF;} .TZPAGE A 0.5EM; มาร์จิ้น-ขวา: 5px; มาร์จิ้น-ก้น: 5px; มิน-ไวด์ธ์: 1em; ข้อความ-เรียงความ: ศูนย์กลาง; ความสูงบรรทัด: 22px; ความสูง: 22px;} .tzPage .current {พื้นหลัง:#DD5862; สี: #FFF; .current.next {color:#999; Border: 1px solid#e5e5e5; พื้นหลัง: #fff;} .tm_psize_go {margin-right: 4px; float: left; ความสูง: 24px; line-height: 33px; #TM_PAGEGO {Border-Radius: 3px; ความสูง: 18px; ความกว้าง: 30px; Float: ซ้าย; Text-Align: Center; Border: 1px Solid #E5E5E5; LINE-HEIGHT: 22PX; สี: #999} .SortDesc ของแข็ง; ความกว้าง: 0px; ความสูง: 0px; จอแสดงผล: Inline-Block; แนวตั้ง-แนวตั้ง: กลาง; ชายแดนขวา: 5px ของแข็งโปร่งใส; ของแข็ง; ความกว้าง: 0px; ความสูง: 0px; แสดง: Inline-block; แนวตั้ง-แนวตั้ง: กลาง; ชายแดนขวา: 5px ทึบโปร่งใส; ชายแดนซ้าย: 5px ทึบโปร่งใส; TEXT-ALIGN: CENTER; ความสูงของสาย: 300px; ขอบด้านบน: 16px; จอแสดงผล: ไม่มี;} .Hideadd A {font-size: 28px; -webkit-text-fill-color: โปร่งใส; พื้นหลัง: -webkit-gradient (เชิงเส้นด้านบนซ้ายล่างซ้ายจาก (#fd0051) ไปที่ (#a22c93)); แสดง </p> <table> <thead> <tr> <th> ชื่อเรื่อง </th> <th> Music Man </th> <th> ชื่อเพลง </th> <th> เวลาที่เผยแพร่ </th> </tr> </thead> <tbody id = "tbody" data-itemcount = "$ {coutblogs}" <td> <a> $ {blog.title} </a> </td> <td> <a> $ {blog.musictor} </a> </td> <td> <a> $ {blog.musictor} </a> </td> <td> <td> $ {blog.createTime} </td> </tr> </c: foreach> </tbody> </table> <div id = "krrypage"> </div> </div> <script type = "text/javascript" src = "$ {basepath} type = "text/javascript" src = "$ {basepath} /resource/js/krry_page.js"> </script> <script type = "text/javascript"> var basepath = "$ {basepath}"; $ ("#krrypage"). tzpage (itemcount, {num_display_entries: 5, // num ของหน้าหลัก num_edge_entries: 4, // num ของหน้าขอบ current_page: 0, // ระบุหน้าเว็บที่เลือก showselect: false, callback: function (pageno, psize) {// พารามิเตอร์สองตัวจะถูกส่งผ่าน }, // ตั้งค่าพารามิเตอร์ข้อมูล: pageno (หน้าถัดไป): จำนวนหน้าที่จะแสดงในหน้าถัดไป* จำนวนหน้าที่จะแสดงในหน้าถัดไป // หน้า (หน้าถัดไป): จำนวนของการสืบค้น (pageno) + จำนวนหน้าที่จะแสดงในแต่ละหน้า // LoadData: ฟังก์ชั่น (pageno, pageSize) {pageno = pageno * pageSize; PAGESIZE = PAGENO + 10; $ .ajax ({type: "post", url: basepath+"/loaddata", ข้อมูล: {pageno: pageno, pagesize: pagesize}, ความสำเร็จ: ฟังก์ชั่น (data) {if (data) {var html = "" var blogarr = data.blogs; blogarr [i]; title = '"+json.name+"'> "+json.musictor+" </a> </td> "+" <td> <a class = 't_avbiaoq' title = '"+json.musictle+"> "+json.musictitle+" "</tr>";} $ ("#tbody"). html (html); - krryadminblog.initpage ($ ("#tbody") ข้อมูล ("itemcount")); </script> </body> </html>การเรนเดอร์การปนเปื้อน:
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการเรียนรู้ของทุกคนและฉันหวังว่าทุกคนจะสนับสนุน wulin.com มากขึ้น