分页语句(特殊字符替换)
发布日期:2021-09-30 18:11:11 浏览次数:26 分类:技术文章

本文共 4125 字,大约阅读时间需要 13 分钟。

/**      * 生成取中间部分数据的sql语句, Oracle专用      * @param sql String 带排序的原始sql语句      * @param lowLimit int 起始行      * @param highLimit int 截止行      * @return String      * @author Zhang zhongguang      */     public static String getOraLimitString(String sql, int lowLimit,                                            int highLimit)     {
StringBuffer pagingSelect = new StringBuffer(sql.length() + 64); pagingSelect.append("select * from ( select row_.*, rownum rownum_ from ( "); pagingSelect.append(sql); pagingSelect.append(" ) row_ where rownum <= "); pagingSelect.append(highLimit); pagingSelect.append(" ) where rownum_ >= "); pagingSelect.append(lowLimit); return pagingSelect.toString(); } //select * from (select row_.*, rownum rownum_ from ( select * from 表名) row_ where rownum<=10) where rownum_>=1 /** * 生成取中间部分数据的sql语句, MySQL专用 * @param sql String 带排序的原始sql语句 * @param lowLimit int 起始行 * @param highLimit int 截止行 * @return String * @author Zhang zhongguang */ public static String getMySQLLimitString(String sql, int lowLimit, int highLimit) {
StringBuffer pagingSelect = new StringBuffer(sql.length() + 16); pagingSelect.append(sql); pagingSelect.append(" limit "); pagingSelect.append(lowLimit); pagingSelect.append(", "); pagingSelect.append(highLimit); return pagingSelect.toString(); } public static void main(String[] args) {
String miscId = "AAAs'%"; miscId=miscId.replaceAll("';", "';';"); miscId=miscId.replaceAll("_","[_]"); miscId=miscId.replaceAll("%","[%]"); miscId=miscId.replaceAll("'","''"); System.out.println("#####"+miscId); } public class Page {
/** * @param args * @throws IOException */ public static void pager(HttpServletRequest request, JspWriter out) {
String reqParam = request.getQueryString() == null ? "" : request.getQueryString(); String url = request.getRequestURL() + "?"; int pagesize = -1; int pageindex = -1; int totalcount = (Integer) request.getAttribute("totalcount"); if (reqParam.indexOf("pagesize") == -1) {
pagesize = 10; } else {
try {
pagesize = Integer.parseInt(request.getParameter("pagesize")); } catch (NumberFormatException e) {
pagesize = 10; } } if (reqParam.indexOf("pageindex") == -1) {
pageindex = 1; } else {
try {
pageindex = Integer.parseInt(request.getParameter("pageindex")); } catch (NumberFormatException e) {
pageindex = 1; } } String result = ""; if (totalcount > pagesize) {
if (pageindex == 1) {
result = "1 "; for (int page = 2; (page <= (totalcount+pagesize-1)/pagesize) && (page <= 10); page++) {
result = result + "[" + page + "] "; } result = result + "下一页 " + "尾页 "; } else if (pageindex == (totalcount+pagesize-1)/pagesize) {
result = result + "首页 " + "上一页 "; for (int page = Math.max((totalcount+pagesize-1)/pagesize - 10, 1); page <= ((totalcount+pagesize-1)/pagesize - 1); page++) {
result = result + "[" + page + "] "; } result = result + (totalcount+pagesize-1)/pagesize; } else {
result = result + "首页 " + "上一页 "; int i = 0; for (int page = (int) Math.max(pageindex - 5, 1); page <= (pageindex - 1); page++) {
result = result + "[" + page + "] "; i = i + 1; } result = result + pageindex + " "; for (int page = pageindex + 1; (page <= (totalcount+pagesize-1)/pagesize) && (page <= (pageindex + 9 - i)); page++) {
result = result + "[" + page + "] "; } result = result + "下一页 " + "尾页 "; } result = result + "    第 " + pageindex + "/ " + (totalcount+pagesize-1)/pagesize + "页 "; } try {
out.print(result + "一共 " + totalcount + " 条数据  "); } catch (IOException e) {
} } public static void main(String[] args) {
System.out.println((14+10-1)/10); } }

转载地址:https://blog.csdn.net/iteye_10361/article/details/81688580 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:String操作
下一篇:JS:取值方式

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年03月16日 10时51分32秒