国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看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分頁效果實(shí)現(xiàn)代碼

mybatis分頁效果實(shí)現(xiàn)代碼

2020-09-09 13:40java大渣渣 Java教程

這篇文章主要為大家詳細(xì)介紹了mybatis分頁效果的實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文為大家分享了mybatis分頁效果展示的具體代碼,供大家參考,具體內(nèi)容如下

mybatis版本3.4以下

結(jié)構(gòu):

mybatis分頁效果實(shí)現(xiàn)代碼

spring-mvc.xml

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?xml version="1.0" encoding="utf-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"
 xmlns="http://www.springframework.org/schema/beans"
  xmlns:p="http://www.springframework.org/schema/p"
 xmlns:context="http://www.springframework.org/schema/context"
 xsi:schemalocation="http://www.springframework.org/schema/beans
 http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
 http://www.springframework.org/schema/context
 http://www.springframework.org/schema/context/spring-context-4.3.xsd">
<!-- 自動(dòng)掃描加載注解的包 -->
<context:component-scan base-package="com.ij34.bean"/>
<bean id="viewresolver" class="org.springframework.web.servlet.view.internalresourceviewresolver">
<property name="prefix" value="/web-inf/view/"></property>
<property name="suffix" value=".jsp" ></property>
</bean>
 
</beans>

com.ij34.mybatis

applicationcontext.xml

?
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
<?xml version="1.0" encoding="utf-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
  xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"
  xmlns:context="http://www.springframework.org/schema/context"
  xsi:schemalocation="
   http://www.springframework.org/schema/beans
   http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
   http://www.springframework.org/schema/context
   http://www.springframework.org/schema/context/spring-context-4.3.xsd"
   default-autowire="byname" default-lazy-init="false">
 <!-- showcase's customfreemarkermanager example -->
 <bean id="datasource" class="org.apache.commons.dbcp2.basicdatasource">
  <property name="driverclassname" value="com.mysql.jdbc.driver"></property>
  <property name="url" value="jdbc:mysql://localhost:3306/mybatis"></property>
  <property name="username" value="root"></property>
  <property name="password" value="123456"></property>
 </bean>
 <bean id="transactionmanager" class="org.springframework.jdbc.datasource.datasourcetransactionmanager">
  <property name="datasource" ref="datasource" />
 </bean>
 <bean id="sqlsessionfactory" class="org.mybatis.spring.sqlsessionfactorybean">
  <property name="datasource" ref="datasource"></property>
  <property name="configlocation" value="classpath:com/ij34/mybatis/mybatis-config.xml"></property>
  <property name="mapperlocations" value="classpath:com/ij34/mybatis/usermapper.xml"></property>
 </bean>
<bean class="org.mybatis.spring.mapper.mapperscannerconfigurer">
 <property name="basepackage" value="com.ij34.model"></property>
 <property name="sqlsessionfactory" ref="sqlsessionfactory" />
</bean>
</beans>

mybatis-config.xml

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?xml version="1.0" encoding="utf-8" ?>
<!doctype configuration
 public "-//mybatis.org//dtd config 3.0//en"
 "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<typealiases>
<typealias type="com.ij34.model.article" alias="article"/>
<typealias type="com.ij34.model.user" alias="user"/>
<typealias type="com.ij34.pages.pageinfo" alias="pageinfo"/>
</typealiases>
 <plugins>
  <plugin interceptor="com.ij34.pages.pageplugin">
   <property name="dialect" value="mysql" />
   <property name="pagesqlid" value=".*listpage.*" />
  </plugin>
 </plugins>
</configuration>

usermapper.xml

?
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
<?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.ij34.model.usermapper">
<resultmap type="article" id="resultaticlelist">
 <id property="id" column="aid"/>
 <result property="title" column="title"/>
 <result property="content" column="content"/>
 <association property="user" javatype="user">
 <id property="id" column="id"/>
 <result property="name" column="name"/>
 <result property="age" column="age"/>
 </association>
 </resultmap>
 <select id="selectarticle" parametertype="int" resultmap="resultaticlelist">
 select users.id,users.name,users.age,article.id aid,article.title,article.content from users,article
 where users.id=article.userid and users.id=#{id}
 </select>
 
 <select id="listpage" resultmap="resultaticlelist">
 select users.id,users.name,users.age,article.id aid,article.title,article.content from users,article
 where users.id=article.userid and users.id=#{userid}
 </select>
 
 </mapper>

com.ij34.model

user.java

?
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
package com.ij34.model;
 
public class user {
 private int id;
 private string name;
 private int age;
 
 
 public int getid() {
 return id;
}
 
public void setid(int id) {
 this.id = id;
}
 
public string getname() {
 return name;
}
 
public void setname(string name) {
 this.name = name;
}
 
public int getage() {
 return age;
}
 
public void setage(int age) {
 this.age = age;
}
public string tostring() {
 return "user [id=" + id + ", name=" + name + ", age=" + age + "]";
}
 
 
}

article.java

?
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
package com.ij34.model;
 
public class article {
 private int id;
 private user user;
 private string title;
 private string content;
 
public string getcontent() {
 return content;
}
public void setcontent(string content) {
 this.content = content;
}
public int getid() {
 return id;
}
public void setid(int id) {
 this.id = id;
}
public user getuser() {
 return user;
}
public void setuser(user user) {
 this.user = user;
}
public string gettitle() {
 return title;
}
public void settitle(string title) {
 this.title = title;
}
 
 
}

usermapper.java

?
1
2
3
4
5
6
7
8
9
10
11
12
13
package com.ij34.model;
 
import java.util.list;
 
import org.apache.ibatis.annotations.param;
 
import com.ij34.pages.pageinfo;
 
public interface usermapper {
  
 public list<article> selectarticle(int id);
 public list<article> listpage(@param("page") pageinfo page,@param("userid") int userid);
}

com.ij34.pages

參考網(wǎng)上的分頁插件

pageinfo.java

?
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
package com.ij34.pages;
 
import java.io.serializable;
 
public class pageinfo implements serializable {
 
 private static final long serialversionuid = 587754556498974978l;
 
 //pagesize ,每一頁顯示多少
 private int showcount = 9;
 //總頁數(shù)
 private int totalpage;
 //總記錄數(shù)
 private int totalresult;
 //當(dāng)前頁數(shù)
 private int currentpage;
 //當(dāng)前顯示到的id, 在mysql limit 中就是第一個(gè)參數(shù).
 private int currentresult;
 private string sortfield;
 private string order;
 
 
 public int getshowcount() {
  return showcount;
 }
 public void setshowcount(int showcount) {
  this.showcount = showcount;
 }
 public int gettotalpage() {
  return totalpage;
 }
 public void settotalpage(int totalpage) {
  this.totalpage = totalpage;
 }
 public int gettotalresult() {
  return totalresult;
 }
 public void settotalresult(int totalresult) {
  this.totalresult = totalresult;
 }
 public int getcurrentpage() {
  return currentpage;
 }
 public void setcurrentpage(int currentpage) {
  this.currentpage = currentpage;
 }
 public int getcurrentresult() {
  return currentresult;
 }
 public void setcurrentresult(int currentresult) {
  this.currentresult = currentresult;
 }
 public string getsortfield() {
  return sortfield;
 }
 public void setsortfield(string sortfield) {
  this.sortfield = sortfield;
 }
 public string getorder() {
  return order;
 }
 public void setorder(string order) {
  this.order = order;
 }
 
 
}

pageplugin.java

@intercepts({ @signature(type = statementhandler.class, method = "prepare", args = { connection.class }) })

要用3.4以下版本,可以參考官方

?
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
package com.ij34.pages;
 
import java.lang.reflect.field;
import java.sql.connection;
import java.sql.preparedstatement;
import java.sql.resultset;
import java.sql.sqlexception;
import java.util.list;
import java.util.map;
import java.util.properties;
 
import javax.xml.bind.propertyexception;
 
import org.apache.ibatis.executor.errorcontext;
import org.apache.ibatis.executor.executorexception;
import org.apache.ibatis.executor.statement.basestatementhandler;
import org.apache.ibatis.executor.statement.routingstatementhandler;
import org.apache.ibatis.executor.statement.statementhandler;
import org.apache.ibatis.mapping.boundsql;
import org.apache.ibatis.mapping.mappedstatement;
import org.apache.ibatis.mapping.parametermapping;
import org.apache.ibatis.mapping.parametermode;
import org.apache.ibatis.plugin.interceptor;
import org.apache.ibatis.plugin.intercepts;
import org.apache.ibatis.plugin.invocation;
import org.apache.ibatis.plugin.plugin;
import org.apache.ibatis.plugin.signature;
import org.apache.ibatis.reflection.metaobject;
import org.apache.ibatis.reflection.property.propertytokenizer;
import org.apache.ibatis.scripting.xmltags.foreachsqlnode;
import org.apache.ibatis.session.configuration;
 
import org.apache.ibatis.type.typehandler;
import org.apache.ibatis.type.typehandlerregistry;
 
@intercepts({ @signature(type = statementhandler.class, method = "prepare", args = { connection.class }) })
public class pageplugin implements interceptor {
 
 private static string dialect = "";
 private static string pagesqlid = "";
 
 @suppresswarnings("unchecked")
 public object intercept(invocation ivk) throws throwable {
 
  if (ivk.gettarget() instanceof routingstatementhandler) {
   routingstatementhandler statementhandler = (routingstatementhandler) ivk
     .gettarget();
   basestatementhandler delegate = (basestatementhandler) reflecthelper
     .getvaluebyfieldname(statementhandler, "delegate");
   mappedstatement mappedstatement = (mappedstatement) reflecthelper
     .getvaluebyfieldname(delegate, "mappedstatement");
 
   if (mappedstatement.getid().matches(pagesqlid)) {
    boundsql boundsql = delegate.getboundsql();
    object parameterobject = boundsql.getparameterobject();
    if (parameterobject == null) {
     throw new nullpointerexception("parameterobject error");
    } else {
     connection connection = (connection) ivk.getargs()[0];
     string sql = boundsql.getsql();
     string countsql = "select count(0) from (" + sql + ") mycount";
     system.out.println("總數(shù)sql 語句:"+countsql);
     preparedstatement countstmt = connection
       .preparestatement(countsql);
     boundsql countbs = new boundsql(
       mappedstatement.getconfiguration(), countsql,
       boundsql.getparametermappings(), parameterobject);
     setparameters(countstmt, mappedstatement, countbs,
       parameterobject);
     resultset rs = countstmt.executequery();
     int count = 0;
     if (rs.next()) {
      count = rs.getint(1);
     }
     rs.close();
     countstmt.close();
 
     pageinfo page = null;
     if (parameterobject instanceof pageinfo) {
      page = (pageinfo) parameterobject;
      page.settotalresult(count);
     } else if(parameterobject instanceof map){
      map<string, object> map = (map<string, object>)parameterobject;
      page = (pageinfo)map.get("page");
      if(page == null)
       page = new pageinfo();
      page.settotalresult(count);
     }else {
      field pagefield = reflecthelper.getfieldbyfieldname(
        parameterobject, "page");
      if (pagefield != null) {
       page = (pageinfo) reflecthelper.getvaluebyfieldname(
         parameterobject, "page");
       if (page == null)
        page = new pageinfo();
       page.settotalresult(count);
       reflecthelper.setvaluebyfieldname(parameterobject,
         "page", page);
      } else {
       throw new nosuchfieldexception(parameterobject
         .getclass().getname());
      }
     }
     string pagesql = generatepagesql(sql, page);
     system.out.println("page sql:"+pagesql);
     reflecthelper.setvaluebyfieldname(boundsql, "sql", pagesql);
    }
   }
  }
  return ivk.proceed();
 }
 
 private void setparameters(preparedstatement ps,
   mappedstatement mappedstatement, boundsql boundsql,
   object parameterobject) throws sqlexception {
  errorcontext.instance().activity("setting parameters")
    .object(mappedstatement.getparametermap().getid());
  list<parametermapping> parametermappings = boundsql
    .getparametermappings();
  if (parametermappings != null) {
   configuration configuration = mappedstatement.getconfiguration();
   typehandlerregistry typehandlerregistry = configuration
     .gettypehandlerregistry();
   metaobject metaobject = parameterobject == null ? null
     : configuration.newmetaobject(parameterobject);
   for (int i = 0; i < parametermappings.size(); i++) {
    parametermapping parametermapping = parametermappings.get(i);
    if (parametermapping.getmode() != parametermode.out) {
     object value;
     string propertyname = parametermapping.getproperty();
     propertytokenizer prop = new propertytokenizer(propertyname);
     if (parameterobject == null) {
      value = null;
     } else if (typehandlerregistry
       .hastypehandler(parameterobject.getclass())) {
      value = parameterobject;
     } else if (boundsql.hasadditionalparameter(propertyname)) {
      value = boundsql.getadditionalparameter(propertyname);
     } else if (propertyname
       .startswith(foreachsqlnode.item_prefix)
       && boundsql.hasadditionalparameter(prop.getname())) {
      value = boundsql.getadditionalparameter(prop.getname());
      if (value != null) {
       value = configuration.newmetaobject(value)
         .getvalue(
           propertyname.substring(prop
             .getname().length()));
      }
     } else {
      value = metaobject == null ? null : metaobject
        .getvalue(propertyname);
     }
     typehandler typehandler = parametermapping.gettypehandler();
     if (typehandler == null) {
      throw new executorexception(
        "there was no typehandler found for parameter "
          + propertyname + " of statement "
          + mappedstatement.getid());
     }
     typehandler.setparameter(ps, i + 1, value,
       parametermapping.getjdbctype());
    }
   }
  }
 }
 
 
 private string generatepagesql(string sql, pageinfo page) {
  if (page != null && (dialect !=null || !dialect.equals(""))) {
   stringbuffer pagesql = new stringbuffer();
   if ("mysql".equals(dialect)) {
    pagesql.append(sql);
    pagesql.append(" limit " + page.getcurrentresult() + ","
      + page.getshowcount());
   } else if ("oracle".equals(dialect)) {
    pagesql.append("select * from (select tmp_tb.*,rownum row_id from (");
    pagesql.append(sql);
    pagesql.append(") tmp_tb where rownum<=");
    pagesql.append(page.getcurrentresult() + page.getshowcount());
    pagesql.append(") where row_id>");
    pagesql.append(page.getcurrentresult());
   }
   return pagesql.tostring();
  } else {
   return sql;
  }
 }
 
 public object plugin(object arg0) {
  // todo auto-generated method stub
  return plugin.wrap(arg0, this);
 }
 
 public void setproperties(properties p) {
  dialect = p.getproperty("dialect");
  if (dialect ==null || dialect.equals("")) {
   try {
    throw new propertyexception("dialect property is not found!");
   } catch (propertyexception e) {
    // todo auto-generated catch block
    e.printstacktrace();
   }
  }
  pagesqlid = p.getproperty("pagesqlid");
  if (dialect ==null || dialect.equals("")) {
   try {
    throw new propertyexception("pagesqlid property is not found!");
   } catch (propertyexception e) {
    // todo auto-generated catch block
    e.printstacktrace();
   }
  }
 }
 
 
}

reflecthelper.java

 

?
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.ij34.pages;
 
import java.lang.reflect.field;
 
 
public class reflecthelper {
 public static field getfieldbyfieldname(object obj, string fieldname) {
  for (class<?> superclass = obj.getclass(); superclass != object.class; superclass = superclass
    .getsuperclass()) {
   try {
    return superclass.getdeclaredfield(fieldname);
   } catch (nosuchfieldexception e) {
   }
  }
  return null;
 }
 
 
 public static object getvaluebyfieldname(object obj, string fieldname)
   throws securityexception, nosuchfieldexception,
   illegalargumentexception, illegalaccessexception {
  field field = getfieldbyfieldname(obj, fieldname);
  object value = null;
  if(field!=null){
   if (field.isaccessible()) {
    value = field.get(obj);
   } else {
    field.setaccessible(true);
    value = field.get(obj);
    field.setaccessible(false);
   }
  }
  return value;
 }
 
 
 public static void setvaluebyfieldname(object obj, string fieldname,
   object value) throws securityexception, nosuchfieldexception,
   illegalargumentexception, illegalaccessexception {
  field field = obj.getclass().getdeclaredfield(fieldname);
  if (field.isaccessible()) {
   field.set(obj, value);
  } else {
   field.setaccessible(true);
   field.set(obj, value);
   field.setaccessible(false);
  }
 }
 
}

com.ij34.bean 

 

?
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
package com.ij34.bean;
 
import java.util.list;
 
import javax.servlet.http.httpservletrequest;
import javax.servlet.http.httpservletresponse;
 
import org.springframework.beans.factory.annotation.autowired;
import org.springframework.stereotype.controller;
import org.springframework.web.bind.annotation.requestmapping;
import org.springframework.web.servlet.modelandview;
 
import com.ij34.model.*;
import com.ij34.pages.pageinfo;
 
@controller
@requestmapping("/article")
public class test {
 @autowired
 usermapper mapper;
 
 @requestmapping("/list")
 public modelandview listall(httpservletrequest request,httpservletresponse response){
  list<article> articles=mapper.selectarticle(1);
  //制定視圖,也就是list.jsp
  modelandview mav=new modelandview("list");
  mav.addobject("articles",articles);
  return mav;
 }
 
 
 @requestmapping("/pagelist")
 public modelandview pagelist(httpservletrequest request,httpservletresponse response){
  int currentpage = request.getparameter("page")==null?1:integer.parseint(request.getparameter("page"));
  int pagesize = 9;
  if (currentpage<=1){
   currentpage =1;
  }
  int currentresult = (currentpage-1) * pagesize;
  
  system.out.println(request.getrequesturi());
  system.out.println(request.getquerystring());
  
  pageinfo page = new pageinfo();
  page.setshowcount(pagesize);
  page.setcurrentresult(currentresult);
  list<article> articles=mapper.listpage(page,1);
  
  system.out.println(page);
  
  int totalcount = page.gettotalresult();
  
  int lastpage=0;
  if (totalcount % pagesize==0){
   lastpage = totalcount % pagesize;
  }
  else{
   lastpage =1+ totalcount / pagesize;
  }
  
  if (currentpage>=lastpage){
   currentpage =lastpage;
  }
  
  string pagestr = "";
  pagestr=string.format("<a href=\"%s\">上一頁</a>    <a href=\"%s\">下一頁</a>",
      request.getrequesturi()+"?page="+(currentpage-1),request.getrequesturi()+"?page="+(currentpage+1) );
 
  //制定視圖,也就是list.jsp
  modelandview mav=new modelandview("list");
  mav.addobject("articles",articles);
  mav.addobject("pagestr",pagestr);
  return mav;
 }
/* public modelandview show(){//@requestparam 請(qǐng)求參數(shù)
  list<article> articles=mapper.selectarticle(1);
  modelandview mav=new modelandview("list");
  mav.addobject("articles", articles);
 return mav;
 
 }*/
}

webcontent

web.xml

?
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
<?xml version="1.0" encoding="utf-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemalocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="webapp_id" version="2.5">
 <display-name>mybatis_springmvc</display-name>
 <welcome-file-list>
 <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>
 <context-param>
 <param-name>contextconfiglocation</param-name>
 <param-value>classpath:com/ij34/mybatis/applicationcontext.xml</param-value>
 </context-param>
 <listener>
 <listener-class>org.springframework.web.context.contextloaderlistener</listener-class>
 </listener>
 <listener>
 <listener-class>
   org.springframework.web.context.contextcleanuplistener</listener-class>
 </listener>
 <servlet>
 <servlet-name>springdispatcherservlet</servlet-name>
 <servlet-class>org.springframework.web.servlet.dispatcherservlet</servlet-class>
 <init-param>
  <param-name>contextconfiglocation</param-name>
  <param-value>classpath:spring-mvc.xml</param-value>
 </init-param>
 </servlet>
 <servlet-mapping>
 <servlet-name>springdispatcherservlet</servlet-name>
 <url-pattern>/</url-pattern>
 </servlet-mapping>
 <filter>
 <filter-name>characterencodingfilter</filter-name>
 <filter-class>org.springframework.web.filter.characterencodingfilter</filter-class>
 <init-param>
  <param-name>encoding</param-name>
  <param-value>utf8</param-value>
 </init-param>
 <init-param>
  <param-name>forceencoding</param-name>
  <param-value>true</param-value>
 </init-param>
 </filter>
 <filter-mapping>
 <filter-name>characterencodingfilter</filter-name>
 <url-pattern>*</url-pattern>
 </filter-mapping>
</web-app>

index.jsp

?
1
2
3
4
5
6
7
8
9
10
11
12
<%@ page language="java" contenttype="text/html; charset=utf-8"
 pageencoding="utf-8"%>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>insert title here</title>
</head>
<body>
 <a href="article/list" rel="external nofollow" >不分頁測(cè)試</a><br /><p />
 <a href="article/pagelist" rel="external nofollow" >分頁測(cè)試</a>
</body>
</html>

list.jsp

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<%@ page language="java" contenttype="text/html; charset=utf-8"
 pageencoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!doctype html public "-//w3c//dtd html 4.01 transitional//en" "http://www.w3.org/tr/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>insert title here</title>
</head>
<body>
<table>
<c:foreach var="article" items="${articles}">
<tr><td>${article.id} |</td><td> ${article.title}|</td><td> ${article.content}|</td><td>${article.user}</td> </tr>
</c:foreach>
</table>
<h4>${pagestr}</h4>
</body>
</html>

結(jié)果

mybatis分頁效果實(shí)現(xiàn)代碼

mybatis分頁效果實(shí)現(xiàn)代碼

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

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久草电影网 | 欧美日韩一二三区 | 日韩素人一区二区三区 | 两性视频久久 | 日韩免费在线观看视频 | 国产在线精品一区 | 色婷婷综合久久久中字幕精品久久 | 成人精品三级av在线看 | 1000部精品久久久久久久久 | 四虎影音 | 91精品国产一区二区 | 91精品国产综合久久久久久 | 五月婷婷网站 | 91av电影在线观看 | 国产馆一区二区 | 精品综合| 久久亚洲一区二区 | 国产精品久久 | 成人高清视频在线观看 | 国产男女做爰免费网站 | 亚色图| 91精品国产综合久久香蕉922 | 自拍视频一区 | 天天夜操 | 一区二区三区在线视频播放 | 国产va| 国产精品欧美一区二区三区 | 亚洲午夜精品视频 | 在线视频二区 | 国产成人精品久久二区二区91 | 久久国产精品久久精品国产演员表 | 澳门黄色网 | 美女黄网 | 国产区在线观看 | 亚洲性在线 | 理论电影在线 | 国产精品二区一区二区aⅴ污介绍 | 狠狠干av| 国产黄色一级录像 | 国产精品99久久免费观看 | 精品久久av|