1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.ibatis.scripting.xmltags;
17
18 import java.util.HashMap;
19 import java.util.Map;
20
21 import ognl.ClassResolver;
22
23 import org.apache.ibatis.io.Resources;
24
25
26
27
28
29
30
31
32
33
34
35 public class OgnlClassResolver implements ClassResolver {
36
37 private Map<String, Class<?>> classes = new HashMap<String, Class<?>>(101);
38
39 @Override
40 public Class classForName(String className, Map context) throws ClassNotFoundException {
41 Class<?> result = null;
42 if ((result = classes.get(className)) == null) {
43 try {
44 result = Resources.classForName(className);
45 } catch (ClassNotFoundException e1) {
46 if (className.indexOf('.') == -1) {
47 result = Resources.classForName("java.lang." + className);
48 classes.put("java.lang." + className, result);
49 }
50 }
51 classes.put(className, result);
52 }
53 return result;
54 }
55
56 }