1.如果创建war工程的话,需要添加web.xml文件
右键单击工程名,如下图依次选择Java EE Tools->Generate Deployment Descriptor Stub
2.添加pom.xml文件中的依赖
<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>com.tjetc</groupId>
<artifactId>20190402-SCTest</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.3</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.46</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.0.0</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<!--fastjson数据配置start -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.29</version>
</dependency>
<!--fastjson数据配置 end -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.taglibs</groupId>
<artifactId>taglibs-standard-spec</artifactId>
<version>1.2.1</version>
</dependency>
<dependency>
<groupId>org.apache.taglibs</groupId>
<artifactId>taglibs-standard-impl</artifactId>
<version>1.2.1</version>
</dependency>
</dependencies>
</project>
在src/main/resources资源类路径下创建三个文件
1.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="db.properties"></properties>
<typeAliases>
<package name="com.tjetc.pojo" /><!-- 设置pojo包下的Java类的别名,使用的时候不区分大小写 -->
</typeAliases>
<plugins>
<plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin>
</plugins>
<environments default="dev">
<environment id="dev">
<transactionManager type="jdbc"></transactionManager>
<dataSource type="POOLED">
<property name="driver" value="${driver}" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
</dataSource>
</environment>
</environments>
<mappers>
<package name="com.tjetc.mapper" /><!-- 配置mapper包下的内容 -->
</mappers>
</configuration>
2.db.properties
driver=com.mysql.jdbc.Driver
url=jdbc:mysql:///数据库名称
username=数据库连接名
password=数据库连接密码
3.log4j.properties
log4j.rootLogger=DEBUG, Console
#Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
log4j.logger.java.sql.ResultSet=INFO
log4j.logger.org.apache=INFO
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
3.创建实体类(我的是Student)
package com.tjetc.pojo;
public class Student{
private int id;
private String name;
private int age;
public Student() {
super();
}
public Student(String name, int age) {
super();
this.name = name;
this.age = age;
}
public Student(int id, String name, int age) {
super();
this.id = id;
this.name = name;
this.age = 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;
}
@Override
public String toString() {
return "Student [id=" + id + ", name=" + name + ", age=" + age + "]";
}
}
4.在mapper包下创建一个接口和映射文件
StudentMapper.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.tjetc.mapper.StudentMapper"><!-- com.tjetc.mapper.StudentMapper -->
<cache/>
<select id="selAll" resultType="student">
select * from student
</select>
<select id="getById" parameterType="_int" resultType="Student" >
select * from student where id=#{id}
</select>
<select id="pageByName" parameterType="string" resultType="student" ><!-- 键值 -->
select * from student where name like '%${NAME}%' limit #{currentPage},#{pageSize}
</select>
<select id="count" parameterType="string" resultType="int" >
select count(*) from student where name like '%${value}%'
</select>
<!-- <insert id="add" parameterType="Student">
insert into student(name,age) values(#{name},#{age})
</insert> -->
<update id="mul" parameterType="student">
update student set name=#{name},age=#{age} where id=#{id}
</update>
<delete id="del" parameterType="int">
delete from student where id=#{id}
</delete>
</mapper>
StudentMapper.java
package com.tjetc.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import com.tjetc.pojo.Student;
public interface StudentMapper {
// @Select("select * from student")
List<Student> selAll();
// @Select("select * from student where id=#{id}")
Student selById(int id);
// @Select("Select * from student where name like '%${value}%'")
List<Student> selPageByName(String name);
// @Select("select count(*) from student where name like '%${value}%'")
int count(String nameStr);
// @Insert("insert into student(name,age) values(#{name},#{age})")
void add(Student student);
// @Update("update student set name=#{name},age=#{age} where id=#{id}")
void mul(Student student);
// @Delete("delete from student where id=#{id}")
void del(int id);
// @Select("select * from student where id=#{id}")
Student getById(int id);
}
5.创建MapperTest (Junit Test Case => New Junit 4 test)
ing...