[1].[代码] [Java]代码 跳至 [1] [2]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
public
<T> List<T> queryBySql(String sql, Class<T> clzz) {
SQLQuery sqlQuery = getSession().createSQLQuery(sql.toString());
sqlQuery.setResultTransformer(CriteriaSpecification.ALIAS_TO_ENTITY_MAP);
@SuppressWarnings
(
"unchecked"
)
List<Map<String, Object>> list = (List<Map<String, Object>>) sqlQuery
.list();
List<T> result =
new
ArrayList<T>();
try
{
PropertyDescriptor[] props = Introspector.getBeanInfo(clzz)
.getPropertyDescriptors();
for
(Map<String, Object> map : list) {
T t = clzz.newInstance();
for
(Entry<String, Object> entry : map.entrySet()) {
String attrName = entry.getKey().toLowerCase();
for
(PropertyDescriptor prop : props) {
if
(!attrName.equals(prop.getName())) {
continue
;
}
Method method = prop.getWriteMethod();
method.invoke(t, entry.getValue());
}
}
result.add(t);
}
}
catch
(Exception e) {
e.printStackTrace();
}
return
result;
}
|
[2].[代码] [Java]代码 跳至 [1] [2]
1
2
3
4
5
6
7
8
9
10
11
12
|
@Override
public
List<PsndocInfo> getAllPsndocList() {
StringBuilder sql =
new
StringBuilder();
sql.append(
"\n"
);
sql.append(
"SELECT doc.pk_org, org.name orgname, org.code orgcode, doc.name psnname, doc.code psncode,doc.enablestate\n"
);
sql.append(
" FROM bd_psndoc doc\n"
);
sql.append(
" inner join org_orgs org\n"
);
sql.append(
" on doc.pk_org = org.pk_org"
);
return
super
.queryBySql(sql.toString(), PsndocInfo.
class
);
}
|