1.先创建项目
选择这5个构建项目
在com.CKW2022.demo4.demos.web下面创建entity包,创建University类
University类
解释
-
package com.CKW2022.demo4.demos.web.entity;
-
import lombok.Data;
-
@Data
-
public class University {
-
private Long universityId;
-
private String universityName;
-
private String city;
-
}
在com.CKW2022.demo4.demos.web下面创建mapper包,创建UniversityMapper接口
UniversityMapper代码
解释
-
package com.CKW2022.demo4.demos.web.mapper;
-
import com.CKW2022.demo4.demos.web.entity.University;
-
import org.apache.ibatis.annotations.Mapper;
-
import org.apache.ibatis.annotations.Select;
-
import java.util.List;
-
@Mapper
-
public interface UniversityMapper {
-
//@Select("SELECT * FROM university")
-
List<University> selectList();
-
}
在resources包下面创建mapper包,在创建universityMapper.xml
universityMapper.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="com.CKW2022.demo4.demos.web.mapper.UniversityMapper">
-
<select id="selectList" resultType="com.CKW2022.demo4.demos.web.entity.University">
-
select * from university
-
</select>
-
</mapper>
application.yml
解释
-
spring:
-
datasource:
-
url: jdbc:mysql://localhost:3306/CKW2022
-
username: root
-
password: 123456
-
mybatis:
-
configuration:
-
map-underscore-to-camel-case: true
-
mapper-locations: classpath:mapper/**/*Mapper.xml
测试类代码以及分页
解释
-
package com.CKW2022.demo4;
-
import com.CKW2022.demo4.demos.web.entity.University;
-
import com.CKW2022.demo4.demos.web.mapper.UniversityMapper;
-
import org.junit.jupiter.api.Test;
-
import org.springframework.beans.factory.annotation.Autowired;
-
import org.springframework.boot.test.context.SpringBootTest;
-
import java.sql.DriverManager;
-
import java.sql.SQLException;
-
import java.util.List;
-
@SpringBootTest
-
class Demo4ApplicationTests {
-
@Autowired
-
UniversityMapper universityMapper;
-
@Test
-
void contextLoads() {
-
String url = "jdbc:mysql://localhost:3306/CKW2022";
-
String username = "root";
-
String password = "123456";
-
try {
-
Class.forName("com.mysql.cj.jdbc.Driver");
-
DriverManager.getConnection(url, username, password);
-
System.out.println("连接远程数据库成功");
-
} catch (ClassNotFoundException | SQLException e) {
-
System.out.println("连接远程数据库失败");
-
e.printStackTrace();
-
}
-
}
-
private List<University> pageByList(int currPage, int pageSize){
-
//查询全部数据
-
List<University> courses = universityMapper.selectList();
-
//从第几条数据开始
-
int firstIndex = (currPage-1)*pageSize;
-
//到第几条结束
-
int lastIndex = currPage*pageSize;
-
//直接在List中截取
-
return courses.subList(firstIndex,lastIndex);
-
}
-
@Test
-
void testSelectList(){
-
List<University> universities = universityMapper.selectList();
-
universities.forEach(System.out::println);
-
}
-
@Test
-
public void TestGetPageCourseByList(){
-
//总记录共10条。假设总共分为4页,每页最多3条记录
-
System.out.println("===========================第1页记录为:=====================");
-
List<University> secondPage = pageByList(1,4);
-
for (University course : secondPage){
-
System.out.println(course);
-
}
-
System.out.println("===========================第2页记录为:=====================");
-
List<University> lastPage = pageByList(2,2);
-
for (University course : lastPage){
-
System.out.println(course);
-
}
-
}
-
}
文章