1.映射器(xml实现)
需要mapper和mapper.xml文件来实现
mapper接口
public interface Userdao {
//查询所有数据
List<User> queryList();
//sql写在配置文件中去
//根据id查询一条数据
User getUserByid(Integer id);
//根据id查询
void getUserByid();
//新增一个用户
void addUser(User user);
//修改一个用户
void updateUser(User user);
//删除一个用户
int deleteUser(int id);
//万能的Map
//当有多个参数的时候,使用map
int addUser2(Map<String,Object> map);
//模糊查询
List<User> getUserList(String value);
}
mapper.xml用于实现接口mapper
其中
namespace用于绑定与mapper之间的关系
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lxyk.dao.Userdao">
<update id="updateUser" parameterType="com.lxyk.pojo.User">
update user set name = #{name},pwd= #{pwd} where id= #{id}
</update>
<!--删除操作-->
<delete id="deleteUser" parameterType="java.lang.Integer">
delete from user where id=#{id}
</delete>
<!--namespace:命名空间-->
<!--以往我们用实现类来实现,现在我们用命名空间来实现-->
<!--绑定userdao这个接口-->
<!--绑定userDao接口的方法 queryList-->
<select id="queryList" resultType="com.lxyk.pojo.User">
/*id即是方法名,resultType是我们的类型 com.lxyk.pojo.User权限类型*/
select * from user
</select>
<select id="getUserByid" resultType="com.lxyk.pojo.User">
select * from user where id=#{id}
</select>
<insert id="addUser" parameterType="com.lxyk.pojo.User" >/*参数类型返回类型*/
insert into user (id,name,pwd) values (#{id},#{name},#{pwd})
</insert>
<!--传递map的key-->
<insert id="addUser2" parameterType="java.util.Map">
/*参数类型是map*/
insert into user (id,name,pwd) values (#{userid},#{username},#{pwd})
</insert>
<!--/*模糊查询*/-->
<select id="getUserList" resultType="com.lxyk.pojo.User">
select * from user where name like "%" #{value} "%"
</select>
</mapper>
此外还需要再mybatis.xml配置文件中配置mapper
<mappers>
<!--每一个核心配置文件都要配置,即mapper.xml都要在核心配置文件中注册-->
<mapper resource="com/lxyk/dao/UserDao.xml"/>
</mappers>
告诉mybatis,我们需要执行的sql语句再这个文件中
2.使用注解
@Select("select * from user")
List<User> getAllList();
使用注解有一定要再核心配置文件中注册,告诉mybatis我们要执行哪个sql语句