一般我们从表中获得字段,属性或者是实体的查询结果,一般的resultSet,resultSetMetaData,list的使用。
hibernate:List的使用
1.字段与属性
Query q = s.createQuery("select count(p.name), p.id from person p group by p.name");
//q.setResultTransformer((Transformers.ALIAS_TO_ENTITY_MAP));
List<Object[]> list1 = q.list();
for(Object[] p : list1){
System.out.println(p[0]);
System.out.println(p[1]);
//System.out.println(p[2]);
}
s.close();
2.实体
Query q = s.createQuery("select p from person p");
//q.setResultTransformer((Transformers.ALIAS_TO_ENTITY_MAP));
List<person> list1 = q.list();
for(person p : list1){
System.out.println(p.getId);
System.out.println(p.getName);
//System.out.println(p[2]);
}
s.close();
SQL:resultSet,resultSetMetaData
1.resultSet
String sql = "select username , realname from userinfo1;";
try(resultSet = stat.executeQuery(sql)){
ResultSetMetaData metaData = resultSet.getMetaData();
int col_len = metaData.getColumnCount();
for(int i = 0; i < col_len; i ++){
String cols_name = metaData.getColumnName(i+1);
Object cols_value = resultSet.getObject(cols_name);
System.out.println(cols_name);
System.out.println(cols_value);
}}
2.resultSetMetaData
String sql = "select username , realname from userinfo1;";
try(resultSet = stat.executeQuery(sql)){
while(resultSet.next()){
System.out.println(resultSet.getString(1));
System.out.println(resultSet.getString(2));
}}