1 | public void testCachedQuery() throws Exception {
↵ | | 1 | public void testCachedQuery() throws Exception {↵
|
2 | Session s = openSession();
↵ | | 2 | Session s = openSession();↵
|
3 | Transaction t = s.beginTransaction();
↵ | | 3 | Transaction t = s.beginTransaction();↵
|
4 | Simple simple = new Simple();
↵ | | 4 | Simple simple = new Simple();↵
|
5 | simple.setName("Simple 1");
↵ | | 5 | simple.setName("Simple 1");↵
|
6 | s.save( simple, new Long(10) );
↵ | | 6 | s.save( simple, new Long(10) );↵
|
7 | t.commit();
↵ | | 7 | t.commit();↵
|
8 | s.close();↵ | | 8 | s.close();↵
|
9 |
↵ | | |
|
|
10 | s = openSession();
↵ | | 9 | s = openSession();↵
|
11 | t = s.beginTransaction();
↵ | | 10 | t = s.beginTransaction();↵
|
12 | Query q = s.createQuery("from Simple s where s.name=?");
↵ | | 11 | Query q = s.createQuery("from Simple s where s.name=?");↵
|
13 | q.setCacheable(true);
↵ | | 12 | q.setCacheable(true);↵
|
14 | q.setString(0, "Simple 1");
↵ | | 13 | q.setString(0, "Simple 1");↵
|
15 | assertTrue( q.list().size()==1 );
↵ | | 14 | assertTrue( q.list().size()==1 );↵
|
16 | assertTrue( q.list().size()==1 );
↵ | | 15 | assertTrue( q.list().size()==1 );↵
|
17 | assertTrue( q.list().size()==1 );
↵ | | 16 | assertTrue( q.list().size()==1 );↵
|
18 | q = s.createQuery("from Simple s where s.name=:name");
↵ | | 17 | q = s.createQuery("from Simple s where s.name=:name");↵
|
19 | q.setCacheable(true);
↵ | | 18 | q.setCacheable(true);↵
|
20 | q.setString("name", "Simple 1");
↵ | | 19 | q.setString("name", "Simple 1");↵
|
21 | assertTrue( q.list().size()==1 );
↵ | | 20 | assertTrue( q.list().size()==1 );↵
|
22 | simple = (Simple) q.list().get(0);↵ | | 21 | simple = (Simple) q.list().get(0);↵
|
23 |
↵ | | |
|
|
24 | q.setString("name", "Simple 2");
↵ | | 22 | q.setString("name", "Simple 2");↵
|
25 | assertTrue( q.list().size()==0 );
↵ | | 23 | assertTrue( q.list().size()==0 );↵
|
26 | assertTrue( q.list().size()==0 );
↵ | | 24 | assertTrue( q.list().size()==0 );↵
|
27 | simple.setName("Simple 2");
↵ | | 25 | simple.setName("Simple 2");↵
|
28 | assertTrue( q.list().size()==1 );
↵ | | 26 | assertTrue( q.list().size()==1 );↵
|
29 | assertTrue( q.list().size()==1 );
↵ | | 27 | assertTrue( q.list().size()==1 );↵
|
30 | t.commit();
↵ | | 28 | t.commit();↵
|
31 | s.close();↵ | | 29 | s.close();↵
|
32 |
↵ | | |
|
|
33 | s = openSession();
↵ | | 30 | s = openSession();↵
|
34 | t = s.beginTransaction();
↵ | | 31 | t = s.beginTransaction();↵
|
35 | q = s.createQuery("from Simple s where s.name=:name");
↵ | | 32 | q = s.createQuery("from Simple s where s.name=:name");↵
|
36 | q.setString("name", "Simple 2");
↵ | | 33 | q.setString("name", "Simple 2");↵
|
37 | q.setCacheable(true);
↵ | | 34 | q.setCacheable(true);↵
|
38 | assertTrue( q.list().size()==1 );
↵ | | 35 | assertTrue( q.list().size()==1 );↵
|
39 | assertTrue( q.list().size()==1 );
↵ | | 36 | assertTrue( q.list().size()==1 );↵
|
40 | t.commit();
↵ | | 37 | t.commit();↵
|
41 | s.close();↵ | | 38 | s.close();↵
|
42 |
↵ | | |
|
|
43 | s = openSession();
↵ | | 39 | s = openSession();↵
|
44 | t = s.beginTransaction();
↵ | | 40 | t = s.beginTransaction();↵
|
45 | s.update( simple, new Long(10) );
↵ | | 41 | s.update( simple, new Long(10) );↵
|
46 | s.delete(simple);
↵ | | 42 | s.delete(simple);↵
|
47 | t.commit();
↵ | | 43 | t.commit();↵
|
48 | s.close();↵ | | 44 | s.close();↵
|
49 |
↵ | | |
|
|
50 | s = openSession();
↵ | | 45 | s = openSession();↵
|
51 | t = s.beginTransaction();
↵ | | 46 | t = s.beginTransaction();↵
|
52 | q = s.createQuery("from Simple s where s.name=?");
↵ | | 47 | q = s.createQuery("from Simple s where s.name=?");↵
|
53 | q.setCacheable(true);
↵ | | 48 | q.setCacheable(true);↵
|
54 | q.setString(0, "Simple 1");
↵ | | 49 | q.setString(0, "Simple 1");↵
|
55 | assertTrue( q.list().size()==0 );
↵ | | 50 | assertTrue( q.list().size()==0 );↵
|
56 | assertTrue( q.list().size()==0 );
↵ | | 51 | assertTrue( q.list().size()==0 );↵
|
57 | t.commit();
↵ | | 52 | t.commit();↵
|
58 | s.close();
↵ | | 53 | s.close();↵
|
59 | | | 54 |
|