1.配置pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>mybatis</groupId>
<artifactId>mybatis-page</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.6</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.24</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.2</version>
</dependency>
<dependency>
<groupId>com.github.jsqlparser</groupId>
<artifactId>jsqlparser</artifactId>
<version>2.0</version>
</dependency>
</dependencies>
</project>
2.配置jdbc数据库连接
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/class8
jdbc.username=root
jdbc.password=12345678
3.配置mybatis.xml
<?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>
<properties resource="jdbc.properties"/>
<plugins>
<plugin interceptor="com.github.pagehelper.PageInterceptor">
<property name="helperDialect" value="mysql"/>
</plugin>
</plugins>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="user.xml"/>
</mappers>
</configuration>
4.配置user.xml
<?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="tf">
<select id="selectPage" resultType="com.pro.domain.User">
select * from user
</select>
</mapper>
5.添加user实体类
package com.pro.domain;
public class User {
private int user;
private String userName;
private String password;
public User() {
}
public User(int user, String userName, String password) {
this.user = user;
this.userName = userName;
this.password = password;
}
@Override
public String toString() {
return "User{" +
"user=" + user +
", userName='" + userName + '\'' +
", password='" + password + '\'' +
'}';
}
public int getUser() {
return user;
}
public void setUser(int user) {
this.user = user;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
6.测试类test
package com.pro.test;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInterceptor;
import com.pro.domain.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.io.InputStream;
import java.util.List;
public class XxTest {
SqlSessionFactory sqlSessionFactory = null;
SqlSession sqlSession = null;
@Before
public void setUp() throws Exception {
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
sqlSession = sqlSessionFactory.openSession();
}
@After
public void tearDown() throws Exception {
sqlSession.close();
}
@Test
public void testPage() {
//当前页,页显示行数
PageHelper.startPage(1, 3);
Page<User> page = (Page) sqlSession.selectList("tf.selectPage");
List<User> userList = page.getResult();
for(User user:userList){
System.out.println(user);
}
}
}
7.结果显示

8.添加c3p0数据库连接(连接池)
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5.5</version>
</dependency>
9.修改mabatis.xml
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="com.pro.util.C3P0DSFactory">
<property name="driverClass" value="${jdbc.driver}"/>
<property name="jdbcUrl" value="${jdbc.url}"/>
<property name="user" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
<!--链接池的配置-->
<property name="initialPoolSize" value="5"/>
<property name="maxPoolSize" value="30"/>
<property name="minPoolSize" value="5"/>
</dataSource>
</environment>
</environments>
10.添加C3P0DSFactory.java
package com.pro.util;
import com.mchange.v2.c3p0.ComboPooledDataSource;
import org.apache.ibatis.datasource.unpooled.UnpooledDataSourceFactory;
public class C3P0DSFactory extends UnpooledDataSourceFactory {
public C3P0DSFactory(){
//谁知数据源为com
this.dataSource = new ComboPooledDataSource();
}
}

本文介绍了如何配置Mybatis项目使用PageHelper分页插件,并将数据库连接切换为C3P0连接池,包括pom.xml文件的依赖配置、jdbc和mybatis.xml的调整,以及User实体类和测试类的实现。

5319

被折叠的 条评论
为什么被折叠?



