- 在Mybatis核心配置文件中配置mapper
<mappers>
<mapper class="dao.UserMapper" />
</mappers>
- 编写接口,直接在接口上使用注解写Sql
package dao;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import pojo.User;
public interface UserMapper {
@Select("select * from user where id=#{id}")
User getUserById(@Param("id") int id);
@Insert("insert into user values (#{id},#{name},#{password})")
int addUser(User user);
}
这里注意一下:
- 在使用基本数据类型或String类型为参数的时候建议加上@Param注解
- 引用类型不需要加
3.测试类
import org.apache.ibatis.session.SqlSession;
import org.junit.Test;
import pojo.User;
import utils.MybatisUtils;
public class UserMapper {
@Test
public void test(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
dao.UserMapper mapper = sqlSession.getMapper(dao.UserMapper.class);
mapper.addUser(new User(6,"shen","000000"));
sqlSession.commit();
sqlSession.close();
}
}
#{}和${}的区别 这两者的区别就在于一个是预编译的一个是没有预编译的,所以尽量使用#{}来取参数
|