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>
<typeAliases>
<typeAlias type="com.ibatis.bean.User" alias="User"/>
</typeAliases>
<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/testdb"/>
<property name="username" value="csz"/>
<property name="password" value="csz"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/ibatis/bean/SqlMapper.xml"/>
</mappers>
</configuration>
2. User.java类
package com.ibatis.bean;
import java.io.Serializable;
public class User implements Serializable {
private static final long serialVersionUID = 4054639727225043549L;
int id;
String username;
String password;
public User() {
super();
}
public User(int id, String username, String password) {
super();
this.id = id;
this.username = username;
this.password = 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;
}
}
3. SqlMapper.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.ibatis.mapper.ObjectMapper">
<insert id="insertUser" parameterType="User">
insert into user(username, password) values(#{username}, #{password})
</insert>
<delete id="deleteUser" parameterType="int" >
delete from user where id = #{id}
</delete>
<update id="updateUser" parameterType="User" >
update user set password = #{password} where id = #{id}
</update>
<select id="selectUser" parameterType="int" resultType="User">
select * from user where id = #{id}
</select>
</mapper>
4. ObjectMapper.java类
package com.ibatis.mapper;
import com.ibatis.bean.User;
public interface ObjectMapper {
public int insertUser(User user);
public int deleteUser(int id);
public void updateUser(User user);
public User selectUser(int id);
}
5. FirstIbatisClass.java类
package com.ibatis.test;
import java.io.InputStream;
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 com.ibatis.bean.User;
import com.ibatis.mapper.ObjectMapper;
public class FirstIbatisClass {
public static void main(String[] args) {
InputStream inputStream = null;
SqlSession session = null;
try {
inputStream = Resources.getResourceAsStream("mybatis.xml");
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
session = sqlSessionFactory.openSession();
ObjectMapper mapper = session.getMapper(ObjectMapper.class);
User user = new User();
//insert
user.setId(2);
// user.setUsername("bbb");
// user.setPassword("bbb");
// int n = mapper.insertUser(user);
// if(n == 1) {
// System.out.println("insert success");
// } else {
// System.out.println("insert fail");
// }
//delete
// mapper.deleteUser(7);
//update
// user.setId(1);
// user.setPassword("ddd");
// mapper.updateUser(user);
//select
user = mapper.selectUser(1);
System.out.println("password: " + user.getPassword());
session.commit(); //如果是增删改操作,commit之后操作才能生效
} catch (Exception e) {
e.printStackTrace();
} finally {
if(session != null) {
session.close();
}
}
}
}
项目的目录结构如下:
所需jar包:
mybatis-3.1.1.jar
mysql-connector-java-5.1.6-bin.jar
完整实例下载: