激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Java教程 - mybatis中oracle實現(xiàn)分頁效果實例代碼

mybatis中oracle實現(xiàn)分頁效果實例代碼

2020-09-17 14:59濫好人 Java教程

實現(xiàn)分頁的方式有很多,但常用的是通過SQL來顯示分頁。這篇文章主要介紹了mybatis中oracle實現(xiàn)分頁效果實例代碼,有興趣的可以了解一下。

首先當(dāng)我們需要通過xml格式處理sql語句時,經(jīng)常會用到< ,<=,>,>=等符號,但是很容易引起xml格式的錯誤,這樣會導(dǎo)致后臺將xml字符串轉(zhuǎn)換為xml文檔時報錯,從而導(dǎo)致程序錯誤。

這樣的問題在ibatis中或者自定義的xml處理sql的程序中經(jīng)常需要我們來處理。其實很簡單,我們只需作如下替換即可避免上述的錯誤:

 

原符號  <  <=   > >=   &   '   "
替換符號 < <= > >= & ' "

 

數(shù)據(jù)庫的數(shù)據(jù)

mybatis中oracle實現(xiàn)分頁效果實例代碼

一、邏輯分頁

接口

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package com.dao;
 
import java.util.list;
import java.util.map;
 
import org.apache.ibatis.session.rowbounds;
 
import com.model.student;
 
public interface studentmapper {
  /**
   * 分頁查詢
   */
  public list<student> selectall(rowbounds rb);//需要傳rowbounds 類型的參數(shù)
 
}

配置文件

?
1
2
3
4
5
6
7
8
9
10
11
<?xml version="1.0" encoding="utf-8"?>
<!doctype mapper
 public "-//mybatis.org//dtd mapper 3.0//en"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.dao.studentmapper">
 
  <select id="selectall" resulttype="student" >
    select * from student
  </select>
  
 </mapper>

junit測試

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package com.util;
 
import static org.junit.assert.*;
 
import java.util.arraylist;
import java.util.hashmap;
import java.util.list;
import java.util.map;
 
import org.apache.ibatis.session.rowbounds;
import org.apache.ibatis.session.sqlsession;
import org.junit.after;
import org.junit.before;
import org.junit.test;
 
import com.dao.studentmapper;
import com.model.student;
 
public class jtest {
  private sqlsession ss;
  private studentmapper sm;
  @before
  public void setup() throws exception {
    ss=sqlsessionutil.getsqlsession();
    sm=ss.getmapper(studentmapper.class);
    
  }
 
  @after
  public void teardown() throws exception {
    ss.commit();
    ss.close();
  }
 
  @test
  public void selectall() {
    
    //跳過幾行
    int offset = 3;
    //取幾行
    int limit = 3;
    
    rowbounds rb = new rowbounds(offset, limit);   
    list<student> st=sm.selectall(rb);
    for(student tt:st){
      system.out.println(tt);
    }
  }
 
}

數(shù)據(jù)就取出來了

mybatis中oracle實現(xiàn)分頁效果實例代碼

二、物理分頁。

用roacle是數(shù)據(jù)庫自己的分頁語句分頁

mybatis中oracle實現(xiàn)分頁效果實例代碼

接口

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package com.dao;
import java.util.list;
import java.util.map;
 
import org.apache.ibatis.session.rowbounds;
 
import com.model.student;
 
public interface studentmapper {
  
  /**
   * 分頁查詢
   */
  public list<student> selectall(integer offset, integer limit );
  
}

配置文件

?
1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" encoding="utf-8"?>
<!doctype mapper
 public "-//mybatis.org//dtd mapper 3.0//en"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.dao.studentmapper">
  
  <select id="selectall" resulttype="student">
    select * from (select t.*,rownum rownu from student t
    where rownum<=#{param1}*#{param2})tt
    where tt.rownu>(#{param1}-1)*#{param2}
  </select>
 
 </mapper>

junit測試

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package com.util;
 
import static org.junit.assert.*;
 
import java.util.arraylist;
import java.util.hashmap;
import java.util.list;
import java.util.map;
 
import org.apache.ibatis.session.rowbounds;
import org.apache.ibatis.session.sqlsession;
import org.junit.after;
import org.junit.before;
import org.junit.test;
 
import com.dao.studentmapper;
import com.model.student;
 
public class jtest {
  private sqlsession ss;
  private studentmapper sm;
  @before
  public void setup() throws exception {
    ss=sqlsessionutil.getsqlsession();
    sm=ss.getmapper(studentmapper.class);
    
  }
 
  @after
  public void teardown() throws exception {
    ss.commit();
    ss.close();
  }
  
  @test
  public void selectall() {
    //當(dāng)前第幾頁
    integer offset = 2;
    //每頁行數(shù)
    integer limit = 3;   
    list<student> st=sm.selectall(offset, limit);
    for(student tt:st){
      system.out.println(tt);
    }
  }
 
}

查詢結(jié)果

mybatis中oracle實現(xiàn)分頁效果實例代碼

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:http://www.cnblogs.com/hq233/p/6753712.html?utm_source=tuicool&utm_medium=referral

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 激情福利视频 | 国产91精品一区二区麻豆亚洲 | 色中色在线视频 | 91久久久久久久久久 | 欧美18一19sex性护士农村 | 欧美日韩精品一区二区三区在线观看 | 亚洲午夜不卡 | 久色免费 | 毛片成人网 | 88xx成人永久免费观看 | 亚洲影院一区 | 欧洲成人一区 | 99视频网址| 黄色av网| 久久婷婷一区二区三区 | 欧美福利视频一区二区三区 | 成人午夜视频免费看 | 欧美视频一区二区三区在线观看 | 国产精品99久久久久久久女警 | 免费黄色入口 | 性色吧 | 日韩中文字幕三区 | 亚洲精品成人18久久久久 | 亚洲午夜精选 | 久久久久久久久久网 | 亚洲综合色视频在线观看 | 黄色高清免费 | 亚洲四播房 | 成人一区二区在线观看视频 | av在线免费看片 | 久久久久久免费免费 | 日本大片在线播放 | 九九综合九九 | 欧美性生活视频免费 | 亚洲精品在线观看网站 | 毛片免费视频播放 | 国产欧美在线一区二区三区 | 91av在线免费播放 | 国产一级大片在线观看 | 久久免费精品视频 | 欧美大胆xxxx肉体摄影 |