Skip to main content

Mapper File

Hint

This article is generated by AI translation.

Configure commands via tags in mapper XML so methods act as data accessors without extra code.

1. Define entity
@Table("user_info")
public class UserInfo {
@Column(value = "uid", primary = true)
private String uid;
@Column("name")
private String name;
... // getters/setters omitted
}
2. Define mapper XML
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//dbvisitor.net//DTD Mapper 1.0//EN"
"https://www.dbvisitor.net/schema/dbvisitor-mapper.dtd">
<mapper namespace="net.test.dto.UserInfoMapper">
<insert id="saveUser">
test.user_info.insert(#{info,
typeHandler=net.hasor.dbvisitor.types.handler.json.JsonTypeHandler})
</insert>

<select id="loadUser" resultType="net.test.dto.UserInfo">
test.user_info.find({uid: #{uid}})
</select>

<delete id="deleteUser">
test.user_info.remove({uid: #{uid}})
</delete>
</mapper>
3. Define mapper interface
@RefMapper("/path/to/mapper.xml")
public interface UserInfoMapper {
int saveUser(@Param("info") UserInfo info);

UserInfo loadUser(@Param("uid") String uid);

int deleteUser(@Param("uid") String uid);
}