//查询全部用户
List<User> getList();
//根据id查询
User getUser(int id);
//万能语句 查询
User getUser2(Map<String,Object> map);
//插入用户
int addUser(User user);
//万能添加语句
User getUserByi(Map<String,Object> map);
//修改用户
int updateUser(User user);
//删除用户
int deleteUser(int id);
//模糊查询
List<User> getUserList(String value);
?
关于xml中的写法
id?要和接口中写的?方法名一致
resultType?中的文件路径不要设置错
parameterType?数据类型要注意
<!--查询全部数据-->
<select id="getList" resultType="com.controller.pojo.User">
select * from mybatis.user
</select>
<!-- 根据id查询-->
<select id="getUser" parameterType="int" resultType="com.controller.pojo.User">
select * from mybatis.user where id = #{id}
</select>
<!-- 添加数据-->
<insert id="addUser" parameterType="com.controller.pojo.User">
insert into mybatis.user (id,name,pwd) values(#{id},#{name},#{pwd})
</insert>
<!-- 更改数据-->
<update id="updateUser" parameterType="com.controller.pojo.User">
update mybatis.user set name=#{name},pwd=#{pwd} where id=#{id}
</update>
<!-- 删除数据-->
<delete id="deleteUser" parameterType="com.controller.pojo.User">
delete from mybatis.user where id=#{id};
</delete>
<!-- //万能语句-->
<!-- User getUserByi(Map<String,Object> map);-->
<insert id="getUserByi" parameterType="map">
insert into mybatis.user (id,name,pwd) values (#{id},#{name},#{password})
</insert>
<!-- 万能语句 根据id查询-->
<select id="getUser2" parameterType="map" resultType="com.controller.pojo.User">
select * from mybatis.user where id=#{id} and name = #{name}
</select>
<!-- 万能模糊查询-->
<select id="getUserList" resultType="com.controller.pojo.User">
select * from mybatis.user where name like #{value}
</select>
?
关于在测试类中的固定格式
sqlSession.commit();
在进行?增?删?改?操作都需要添加事务操作? 查询不需要加
绿色部分的代码?就是要写的操作
在模糊查询中?不要忘记在要查询的字段前后?加 %号
比如?查询姓李的? 李%??
查询出生年月在 1999年的? %1999%
@Test
public void test(){
SqlSession sqlSession = MybatisUtils.getSession();
????//所要使用的接口
Userd mapper = sqlSession.getMapper(Userd.class);
List<User> userList = mapper.getUserList("%1%");
System.out.println(userList);
????//sqlSession.commit();
sqlSession.close();
}
?
|