1、接口
@Select("select * from user")
List<User> getUserAll();
2、配置
<mappers>
<!-- <mapper resource="mapper/UserMapper.xml"/>-->
<mapper class="com.jia.mapper.UserMapper"/>
</mappers>
3、测试
@Test
public void test(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
System.out.println(mapper.getUserAll());
sqlSession.close();
}
@Param注解用于给方法参数起一个名字。以下是总结的使用原则:
- 在方法只接受一个参数的情况下,可以不使用@Param。
- 基本类型和String需要,引用类型不需要
- 在方法接受多个参数的情况下,建议一定要使用@Param注解给参数命名。
- 如果参数是 JavaBean , 则不能使用@Param。
- 不使用@Param注解时,参数只能有一个,并且是Javabean。
#{}与${}的区别
#{}
的作用主要是替换预编译语句
(PrepareStatement)中的占位符----
?
【推荐使用】
可以防止sql注入
INSERT INTO user (name) VALUES (#{name});
INSERT INTO user (name) VALUES (?);
${}
的作用是直接进行字符串替换
INSERT INTO user (name) VALUES ('${name}');
INSERT INTO user (name) VALUES ('str');