1.配置mybatis-config.xml
增加配置项
<configuration>
<!-- 使用映射器时会用到,普通方式无需配置 -->
<settings>
<!-- changes from the defaults for testing -->
<setting name="cacheEnabled" value="false" />
<setting name="useGeneratedKeys" value="true" />
<setting name="defaultExecutorType" value="REUSE" />
</settings>
<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/test" />
<property name="username" value="root" />
<property name="password" value="ok" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/cc/TestMyBaties/mapping/Student.xml"/>
</mappers>
</configuration>
2.添加映射器
public interface StudentMapper {
void addStudent(Student student); // 方法名要与相应的xml中一样
Student selectStudentById(int id);
}
只需要写接口,不需要具体实现类,他会直接映射到相应的xml中
3.修改XML
namespace 需要指定映射器
<mapper namespace="com.cc.TestMyBaties.dao.StudentMapper">
<!-- 所返回的例表 -->
<resultMap type="com.cc.TestMyBaties.entity.Student" id="resultListStus">
<id column="sid" property="sid" />
<id column="sname" property="sname" />
<id column="sex" property="sex" />
</resultMap>
<select id="selectStudentById" parameterType="int" resultType="com.cc.TestMyBaties.entity.Student">
select * from Student where sid = #{id}
</select>
<select id="selectStudents" parameterType="int" resultMap="resultListStus">
select * from Student
</select>
<insert id="addStudent" parameterType="com.cc.TestMyBaties.entity.Student" useGeneratedKeys="true" keyProperty="sid">
insert into Student(sname,sex) values(#{sname},#{sex})
</insert>
<update id="editStudent" parameterType="com.cc.TestMyBaties.entity.Student">
update Student set sname=#{sname},sex=#{sex} where sid=#{sid}
</update>
<delete id="delStudent" parameterType="int">
delete from Student where sid=#{sid}
</delete>
</mapper>
4.修改掉用方法
public void insertStudent(){
SqlSession session = this.getSessionfactory().openSession();
StudentMapper mapper = session.getMapper(StudentMapper.class); // 直接使用映射器即可
Student stu = new Student();
stu.setSname("xiaoming");
stu.setSex("man");
mapper.addStudent(stu);
session.commit();
}
public static void main(String[] args){
StudentService service = new StudentService();
service.insertStudent();
}
本文介绍了如何配置MyBatis的mybatis-config.xml文件,并详细解释了如何创建映射器接口及其实现,同时展示了如何修改XML映射文件来完成CRUD操作。

被折叠的 条评论
为什么被折叠?



