0

次のようなネイティブ SQL ステートメントがあります。

SQLクエリ:

select Name ,Id,COUNT(ID) from Employee;

従業員 HBM ファイル:

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC 
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
    <class name="edu.model.Master" table="test_prefixmaster">
        <id name="empcode" column="EMPCODE" length="10" ></id>

        <property name="empname">
            <column name="NAME" length="30" />
        </property>
    </class>
    <sql-query name="SQLQuery" callable="true">
    <return alias="emp" class="edu.model.Employee">
        <return-property name="empid" column="EMPID" />
        <return-property name="empname" column="EMPNAME" />
        </return>
        </sql-query>
</hibernate-mapping>

MyTest クラス:

   Query query = session.getNamedQuery("SQLQuery");
    List emp=new ArrayList();
    for (int i = 0; i < emp.size(); i++) {                  
    Employee emp = (Employee) emp.get(i);
    System.out.println("Employee Id:::" + emp.getEmpId());
   System.out.println("Employee Name:::" + emp.getEmpname());
//I want to get here System.out.println("Employee Count");
}

ループ内でも従業員数をマップして印刷するにはどうすればよいですか?

4

2 に答える 2

1
   Query query = session.getNamedQuery("SQLQuery");
    List empList=new ArrayList();
    for (int i = 0; i < empList.size(); i++) {                  
    Employee emp = (Employee) empList.get(i);
    System.out.println("Employee Code:::" + emp.getEmpcode());
   System.out.println("Employee Name:::" + emp.getEmpname());

//I want to get here System.out.println("Employee Count");
   System.out.println("Employee Count:::" + empList.size());
}

明確な従業員のために

クエリを変更する

select Name ,distinct (Id) from Employee ;
于 2013-01-09T12:21:32.443 に答える