获取jsp中存储在session中的对象的属性

时间:2016-03-15 08:19:30

标签: java jsp struts2

我创建了一个UserSession dto对象,并添加了许多字段,例如lastloginTimelastAccessedTimeuserName等。 我想使用Struts2的OGNL概念在jsp中显示这些 我写了

<li class="current_page_item"><b>Last Login Time <s:property value="#session.USROBJECT"/> </b></li>

在行动中,我写了

sessionMap.put("USROBJECT", us);

我在jsp上获取对象,但我想显示其字段。

1 个答案:

答案 0 :(得分:2)

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.v7.widget.CardView xmlns:card_view="http://schemas.android.com/apk/res-auto" android:id="@+id/cards" style="@style/CardView.Dark" android:layout_width="match_parent" android:layout_height="match_parent" card_view:cardCornerRadius="4dp"> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentBottom="true" android:padding="10dp"> <TextView android:id="@+id/usersName" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:paddingTop="10dp" android:text="Username" android:textColor="#FFFFFF" /> <TextView android:id="@+id/others" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/usersName" android:layout_centerVertical="true" android:paddingTop="10dp" android:text="Others" android:textColor="#FFFFFF" /> </RelativeLayout> </android.support.v7.widget.CardView> </LinearLayout> 对象始终可从值堆栈

获得
#session

您应该为字段<s:property value="#session.USROBJECT.lastloginTime"/> <s:property value="#session.USROBJECT.lastAccessedTime"/> <s:property value="#session.USROBJECT.userName "/> lastloginTimelastAccessedTime等创建getter。

您可以找到here的详细信息和参考资料。

但是userName你应该注入动作类实现的sessionMap接口。这是一种更好的方法。

您可以看到here如何实施SessionAware界面。