1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.ibatis.submitted.cache;
17
18 import java.util.List;
19
20 import org.apache.ibatis.annotations.CacheNamespace;
21 import org.apache.ibatis.annotations.Delete;
22 import org.apache.ibatis.annotations.Insert;
23 import org.apache.ibatis.annotations.Options;
24 import org.apache.ibatis.annotations.Options.FlushCachePolicy;
25 import org.apache.ibatis.annotations.Select;
26
27 @CacheNamespace
28 public interface PersonMapper {
29
30 @Insert("insert into person (id, firstname, lastname) values (#{id}, #{firstname}, #{lastname})")
31 void create(Person person);
32
33 @Insert("insert into person (id, firstname, lastname) values (#{id}, #{firstname}, #{lastname})")
34 @Options
35 void createWithOptions(Person person);
36
37 @Insert("insert into person (id, firstname, lastname) values (#{id}, #{firstname}, #{lastname})")
38 @Options(flushCache = FlushCachePolicy.FALSE)
39 void createWithoutFlushCache(Person person);
40
41 @Delete("delete from person where id = #{id}")
42 void delete(int id);
43
44 @Select("select id, firstname, lastname from person")
45 List<Person> findAll();
46
47 @Select("select id, firstname, lastname from person")
48 @Options(flushCache = FlushCachePolicy.TRUE)
49 List<Person> findWithFlushCache();
50 }