第一步,新建项目project——勾选javaEE——Web application——Next——name:mybatis_20210924——Finish
第二步,在工程根目录下新建一个文件夹Directory:resources——右击Mark Directory as——Resources Root
第三步,引入database,方便查看。右击右侧的database——点击+——Data sources——MySQL——Host:192.168.172.130——database(数据库):kb15——User:root——Password:ok——Test Connection(出现Successful)——ok
第四步,引入tomao包。上方Run——Edit Configurations——点击+——Tomcat Server——Local——Name:mysql_20210924——点击右下方的fix——查看右侧context是不是一个”/”——ok
第五步,安装jar包。File——Project streucter——Moduies——右侧+号——2library 先加tomcat8.5.45包——Add
下面引入mysql以及mybatis包,两种方法
方法一:右侧+号——1JARs——一是添加mysql的jar文件——mysql-connector-java-5.1.38jar——继续添加三个mybatis包,hamcrest.core.-1.3jar、junit.4.12jar、mybatis.3.2.2jar——ok
注意,这些jar包以文件的形式储存,而不是文件夹
方法二,以文件夹的形式添加jar。点击左侧Libraries——Java——添加hamcrest.core.-1.3jar、junit.4.12jar、mysql-connector-java-5.1.38jar、mybatis.3.2.2jar,加入同一个工程中——Name:java-web——添加好后,在左侧Problems——FIX——第一个,选择Add~——完成后点击下方apply——ok
建议用方法二,两种方法不要一起用
第六步,建各种文件
在工程根目录下建立文件夹test——右击test——Mark Directory as——Test resources root
其余文件正常
1.在resources中创建mybatis-cfg.xml(new——file——文件名:mybatis-cfg.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>-->
<!--<property name="driver" value="com.mysql.jdbc.Driver"/>-->
<!--<property name="url" value="jdbc:mysql://192.168.172.130:3306/kb15"/>-->
<!--<property name="user" value="root"/>-->
<!--<property name="pwd" value="ok"/>-->
<!--</properties>-->
<properties resource="db.properties"/>
<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="${user}"/>
<property name="password" value="${pwd}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="cn/kgc/dao/UserDao.xml"></mapper>
</mappers>
</configuration>
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://192.168.172.130:3306/kb15
user =root
pwd =ok
(1)在dao中创建UserDao.java
package cn.kgc.dao;
import cn.kgc.entity.User;
import org.apache.ibatis.annotations.Param;
public interface UserDao {
User getUserByName(String name);
void addUser(@Param("name") String name,
@Param("pwd") String pwd);
void update(@Param("name") String name,
@Param("pwd") String pwd);
}
(2)在dao中创建UserDao.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="cn.kgc.dao.UserDao">
<select id="getUserByName" parameterType="string"
resultType="cn.kgc.entity.User">
select * from tb_user_info where username=#{name}
</select>
<select id="addUser" parameterType="string">
insert into tb_user_info(username, password)
values(#{name},#{pwd})
</select>
<select id="update" parameterType="string">
update tb_user_info set password=#{pwd} where username=#{name}
</select>
</mapper>
package cn.kgc.entity;
public class User {
private int id;
private String username;
private String password;
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 getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
'}';
}
}
注意:这个有快捷方式
在文件UserDao.java中点击方法处代码,使用Ctrl+Shift+T——选择二 Ctreate new test——勾选要实现的方法——ok——自动生成
package cn.kgc.dao;
import cn.kgc.entity.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 java.io.*;
import static org.junit.Assert.*;
public class UserDaoTest {
SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();
Reader reader=Resources.getResourceAsReader("mybatis-cfg.xml");
SqlSessionFactory factory= builder.build(reader);
SqlSession session=factory.openSession(true);
public UserDaoTest() throws IOException {
}
@Test
public void getUserByName() throws IOException {
User user=session.getMapper(UserDao.class).getUserByName("zhangsan");
System.out.println(user);
}
@Test
public void addUser() {
session.getMapper(UserDao.class).addUser("李平","123");
//session.commit();
}
@Test
public void update() {
session.getMapper(UserDao.class).update("zhaoqi","12");
// session.commit();
}
}