如何通过使用hibernate获取数据库值以及如何在primefaces dataTable中显示这些值?

时间:2013-04-16 09:07:24

标签: primefaces

我有一些疑问。如果你知道答案,请在这里发帖。

如何使用hibernate将值列表导入数据库表?

如何将这些值显示在primefaces dataTable中?

我在这里发布我正在尝试的内容。见下文

    <p:dataTable id="users" value="#{user.listUsers}" var="user"
        sortBy="user.id" rows="10" style="width: 30%">

        <p:column>

            <f:facet name="header">

                <h:outputText value="ID" />

            </f:facet>

            <h:outputText value="#{user.id}" />

        </p:column>

        <p:column>

            <f:facet name="header">

                <h:outputText value="Name" />

            </f:facet>

            <h:outputText value="#{user.name}" />

        </p:column>

        <p:column>

            <f:facet name="header">

                <h:outputText value="Surname" />

            </f:facet>

            <h:outputText value="#{user.surName}" />

        </p:column>

    </p:dataTable>

3 个答案:

答案 0 :(得分:0)

在这里,我找到了如何将表值显示在primefaces dataTable中的答案。

我在这里放置我正在尝试的代码。

<p:dataTable value="#{actions.messages}" var="act">
                        <p:column style="width:10%;text-align:left" filterBy="#{act.id}" >
                            <f:facet name="header">
                                <h:outputText value="ID" id="id" />
                            </f:facet>
                            <h:outputText value="#{act.id}" />
                        </p:column>

                        <p:column style="width:20%;text-align:left"
                            sortBy="#{act.action}">
                            <f:facet name="header">
                                <h:outputText value="Customer" id="customer" />
                            </f:facet>
                            <h:outputText value="#{act.action}" />
                        </p:column>

                        <p:column style="width:40%;text-align:left"
                            sortBy="#{act.scheduled}">
                            <f:facet name="header">
                                <h:outputText value="Date" />
                            </f:facet>
                            <h:outputText value="#{act.scheduled}" />
                        </p:column>

                        <p:column style="width:30%;text-align:left"
                            sortBy="#{act.status}">
                            <f:facet name="header">
                                <h:outputText value="Action" />
                            </f:facet>
                            <h:outputText value="#{act.status}" />
                        </p:column>
                    </p:dataTable>

答案 1 :(得分:0)

这是我正在开发名为Actions的bean类。

@ManagedBean(name =“actions”,eager = true)

@SessionScoped

public class Actions实现Serializable {

private static final long serialVersionUID = 1L;

private int id;

private String action;

private String assignedTo;

private String assignedBy;

private Date scheduled;

private Date actual;

private String outcome;

private String status;

//写在这里setter&amp;上述属性的getter方法

public ArrayList<Actions> getMessages() {
    ActionsDao dao = new ActionsDao();
    return dao.getActions();

}

}

您可以使用您选择的注释或hbm文件来映射bean类。

这里我只使用映射文件为什么因为,首先我尝试创建注释但它引发了一些问题,jar文件有些问题。你使用正确的jar文件不是问题你可以继续注释否则hbm文件是最好的。

答案 2 :(得分:0)

这是名为ActionsDao的hibernate dao类名称

public class ActionsDao {
public Session session;

public ArrayList<Actions> getActions() {

    session = Util.getSessionFactory().openSession();

    Transaction tx = session.beginTransaction();

    try {
        @SuppressWarnings("unchecked")
        ArrayList<Actions> actionsList = (ArrayList<Actions>) session
                .createQuery("from Actions").list();

        tx.commit();
        boolean found = false;

        for (Actions actions : actionsList) {

            Actions action = new Actions();
            action.setId(actions.getId());
            action.setAction(actions.getAction());
            action.setActual(actions.getActual());
            action.setAssignedBy(actions.getAssignedBy());
            action.setAssignedTo(actions.getAssignedTo());
            action.setScheduled(actions.getScheduled());
            action.setOutcome(actions.getOutcome());
            action.setStatus(actions.getStatus());

            actionsList.contains(action);

            found = true;

        }
        if (found) {
            return actionsList;
        } else {
            return null;
        }
    } catch (Exception e) {
        System.out.println("Error In getActions() -->" + e.getMessage());
        return (null);
    } finally {
        session.close();
    }

}

}