设置动态数据表明要使用${}的方式来设置SQL语句,不使用' '
获取添加功能自增的主键可以用在一对多,多对多的表中
useGeneratedKeys:设置当前标签中的sql使用了自增的主键 keyProperty:将自增的组件的值赋值给传输到映射文件中参数的某个属性1.Mapper接口
package com.atguigu.mybatis.mapper;
import com.atguigu.mybatis.pojo.User;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface SQLMapper {
List getUserByLike(@Param("username") String username);
int deleteMore(@Param("ids") String ids);
List getUserByTableName(@Param("tableName") String tableName);
void insertUser(User user);
}
2.Mapper.xml映射文件
3.测试
package com.atguigu.mybatis.test;
import com.atguigu.mybatis.mapper.SQLMapper;
import com.atguigu.mybatis.pojo.User;
import org.apache.ibatis.session.SqlSession;
import org.junit.Test;
import utils.SqlSessionUtils;
import java.util.List;
public class SQLMapperTest {
@Test
public void testGetUserBYLike(){
SqlSession sqlSession = SqlSessionUtils.getSqlSession();
SQLMapper mapper = sqlSession.getMapper(SQLMapper.class);
List list = mapper.getUserByLike("a");
System.out.println(list);
}
@Test
public void testDeleteMore(){
SqlSession sqlSession = SqlSessionUtils.getSqlSession();
SQLMapper mapper = sqlSession.getMapper(SQLMapper.class);
int result = mapper.deleteMore("1,2,3");
System.out.println(result);
}
@Test
public void testGetUserByTableName(){
SqlSession sqlSession = SqlSessionUtils.getSqlSession();
SQLMapper mapper = sqlSession.getMapper(SQLMapper.class);
List list = mapper.getUserByTableName("t_user");
System.out.println(list);
}
@Test
public void testInsertUser(){
SqlSession sqlSession = SqlSessionUtils.getSqlSession();
SQLMapper mapper = sqlSession.getMapper(SQLMapper.class);
User user = new User(null,"王五","123",23,"男","123@163.com");
mapper.insertUser(user);
System.out.println(user);
}
}



