首先,我们先创建一个简单的用例,在这个用例中,将在屏幕上显示一个用户列表,点击列表中的userid时,列表的下方将显示用户的详细信息,显示用户详细信息的这个步骤我们将使用Ajax。
本次实例使用myeclipse8.5,并加载struts2和dojo(struts2-dojo-plugin-2.1.8.1.jar)支持。
一、修改web.xml
增加过滤器:
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
二、修改struts.xml
增加如下包
<package name="ajaxdemo" extends="struts-default">
<action name="UserListingAction" class="ajaxdemo.action.UserListingAction">
<result>/userlisting.jsp</result>
</action>
<action name="UserDetailAction" class="ajaxdemo.action.UserDetailAction">
<result>/userdetail.jsp</result>
</action>
</package>
三、JSP页面:显示用户列表 userlisting.jsp
四、页面:userdetail.jsp,用于显示用户详细信息,由userlisting.jsp加载
五、ajaxdemo.action.UserListingAction.java,生成用户列表数据,交由userlisting.jsp显示,在实际的应用中,这部分的数据一般是从数据库中取得的。
六、ajaxdemo.action.UserDetailAction.java,当userid被选中时,取得用户详细数据,通过dojo来调用。
七、ajaxdemo.dto.UserListDTO.java、POJO,用于封装用户信息
八、ajaxdemo.dto.UserDetailDTO.java、POJO,用于封装用户信息
OK,部署完毕后,输入http://localhost:8080/MyTest/UserListingAction.action来测试一下。
当列表中的userid被点中后,javaScript通知Div标签从URL中动态加载返回内容。这个例子中,UserDetailAction取得用户信息并传递给userdetail.jsp。userdetail.jsp生成最终的展示结果,显示在Div中。