1.点击左上角File--》Project--》
2.选择Maven打上对√,选择archetype-webapp,--》finish应用

2.找到pox.xml文件 导入以下依赖

<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.7</version>
</dependency>
</dependencies>3. 选择main右键 New---》Directory

选择java和resource

4.选择建的Maven文件再冲里面新建Maven
选择Maven打上对√,选择archetype-webapp,--》finish应用
1~!设置类加载:
package com.util;
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 java.io.IOException;
import java.io.InputStream;
public class BaseDaoUtil {
private static SqlSessionFactory sessionFactory;
//当类记载时
static{
String resource = "mybatis-config.xml";
InputStream inputStream = null;
try {
inputStream = Resources.getResourceAsStream(resource);
sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
//获取SqlSession对象
public static SqlSession getSqlSession(){
return sessionFactory.openSession();
}
}
2.增删改查方法

package com.yhzz.dao;
import com.yhzz.pojo.User;
import org.apache.ibatis.annotations.Param;
import java.util.List;
//就是UserDao,就是换了名字
public interface UserMapper {
//查 查询所有的用户结果集
List<User> queryListUser();
User queryById(int id);
//删 按id删除 @Param("id")多个参数必须加
int deleteByid(@Param("id")int id);
//增 增加一个对象
int addUser(User user);
//改 修改
int updateUser(User user);
}
3. 设置有参函数
package com.yhzz.pojo;
public class User {
private int id;
private String userName;
private String pwd;
//两个参数的有参构造,测试主键自增
public User(int id){
this.id = id;
}
public User(String userName,String pwd){
this.userName = userName;
this.pwd = pwd;
}
//三个数的有参构造
public User(int id, String userName, String pwd) {
this.id = id;
this.userName = userName;
this.pwd = pwd;
}
public User() {
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
}
4. 设置结果集

<?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.yhzz.dao.UserMapper">
<!--查询User结果集 其中id即为接口的方法名,resultType:返回值类型(若返回集合,是泛值类型)-->
<select id="queryListUser" resultType="com.yhzz.pojo.User">
select * from user;
</select>
<select id="queryById" parameterType="int" resultType="com.yhzz.pojo.User">
select * from user where id=#{id};
</select>
<!--删除-->
<delete id="deleteById" parameterType="int">
delete from user where id=#{id};
</delete>
<!--增加-->
<insert id="addUser" parameterType="com.yhzz.pojo.User">
insert into user (id,userName,pwd)
values (#{id},#{userName},#{pwd});
</insert>
<!--修改-->
<insert id="update" parameterType="com.yhzz.pojo.User">
update user set userName=#{userName},pwd=#{pwd} where id=#{id}
</insert>
</mapper>5.连接数据库配置

<?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>
<environments default="development">
<!--连接数据库配置-->
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/yinhe?Unicode=true&characterEncoding=utf-8"/>
<property name="username" value="root"/>
<property name="password" value="123"/>
</dataSource>
</environment>
</environments>
<!--Mapper映射文件-->
<mappers>
<mapper resource="mapper/UserMapper.xml"/>
</mappers>
</configuration> 6.test测试方法
package com.yhzz.dao;
import com.util.BaseDaoUtil;
import com.yhzz.pojo.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.Test;
import javax.sound.midi.Soundbank;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
public class UserMapperTest {
//查
@Test
public void queryListUser(){
//连接数据库
//执行sql
//处理结果集
try {
//mybatis-com.xml配置文件路径
String resource = "mybatis-config.xml";
//将配置文件加载到输入流
InputStream inputStream = Resources.getResourceAsStream(resource);
//获取sqlSessionFactory对象
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//获取申请了Session对象,连接数据库
SqlSession sqlSession = sessionFactory.openSession();
//获取UserMapper对象
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
//调用方法,执行sql
List<User> users = userMapper.queryListUser();
//处理结果集
for(User user:users){
System.out.println(user.getUserName());
}
//关闭sqlSession
sqlSession.close();
} catch (IOException e) {
e.printStackTrace();
}
};
@Test
public void queryById(){
//获取SQLSession
SqlSession sqlSession = BaseDaoUtil.getSqlSession();
//获取UserMapper对象
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
//调用查询方法
User user = userMapper.queryById(1);
System.out.println(user.getUserName());
//关闭资源
sqlSession.close();
};
//删
@Test
public void deleteByid(){
//获取申请了Session
SqlSession sqlSession = BaseDaoUtil.getSqlSession();
//获取UserMapper对象
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
//调用方法执行
int rows = mapper.deleteByid(2);
System.out.println("删除了"+rows+"行");
//增删改必须手动提交事务
sqlSession.commit();
//关闭资源
sqlSession.close();
}
//增
@Test
public void addUser(){
SqlSession sqlSession = BaseDaoUtil.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
int rows = mapper.addUser(new User(6,"张三","132"));
System.out.println("新增数量"+rows);
//事务
sqlSession.commit();
//关闭数据库
sqlSession.close();
}
//改
@Test
public void update(){
SqlSession sqlSession = BaseDaoUtil.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
User us = mapper.queryById(4);
us.setUserName("阮六军");
us.setPwd("ps");
sqlSession.commit();
sqlSession.close();
System.out.println("修改成功:"+us.getUserName()+us.getPwd());
}
}
pox.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>org.example</groupId>
<artifactId>mybatis-study</artifactId>
<version>1.0-SNAPSHOT</version>
<modules>
<module>mybatis01</module>
<module>mybatis02</module>
</modules>
<packaging>pom</packaging>
<name>mybatis-study Maven Webapp</name>
<!-- FIXME change it to the project's website -->
<url>http://www.example.com</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>
</project>
版权声明:本文为weixin_56236018原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。