1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.ibatis.submitted.results_id;
17
18 import org.apache.ibatis.annotations.Arg;
19 import org.apache.ibatis.annotations.ConstructorArgs;
20 import org.apache.ibatis.annotations.Result;
21 import org.apache.ibatis.annotations.ResultMap;
22 import org.apache.ibatis.annotations.Results;
23 import org.apache.ibatis.annotations.Select;
24
25 public interface Mapper {
26
27
28 @Results(id = "userResult", value = {
29 @Result(id = true, column = "uid", property = "id"),
30 @Result(column = "name", property = "name")
31 })
32
33 @Select("select * from users where uid = #{id}")
34 User getUserById(Integer id);
35
36 @ResultMap("userResult")
37 @Select("select * from users where name = #{name}")
38 User getUserByName(String name);
39
40 @Results(id = "userResultConstructor")
41
42 @ConstructorArgs({
43 @Arg(id = true, column = "uid", javaType = Integer.class),
44 @Arg(column = "name", javaType = String.class)
45 })
46
47 @Select("select * from users where uid = #{id}")
48 User getUserByIdConstructor(Integer id);
49
50 @ResultMap("userResultConstructor")
51 @Select("select * from users where name = #{name}")
52 User getUserByNameConstructor(String name);
53 }