2 利用struts2 建立相应的action
package com.feidaochuanqing.actions;
import java.util.ArrayList; import java.util.List;
import net.sf.json.JSONArray; import net.sf.json.JSONObject;
import com.opensymphony.xwork2.ActionSupport;
public class ShowMessageAction extends ActionSupport {
private static final long serialVersionUID = 1L;
//用来标识从客户端的请求是不是成功 private boolean success = false;
//这个数组用来传递数据 JSONArray arrayjson;
/** * 测试时候用的 * @param args */
public static void main(String[] args) { new ShowMessageAction().execute(); }
List<MessageBean> messages = new ArrayList<MessageBean>();
/** * 创建假的数据,因为从数据库得到List类型的数组很容易 */
public void initData() { for(int i=0;i<5;i++) { MessageBean m = new MessageBean(); m.setId(i); m.setTitle("title" + i ); m.setContent("content" + i); messages.add(m); } }
/** * 常见Json对象数组 */
public void createJson() {
arrayjson = new JSONArray();//定义一个JSONArray型的变量
for (int i = 0; i < messages.size(); i++) {//list1是从数据库中获得所有对象(docbase)的集合 JSONObject object = new JSONObject(); MessageBean message = (MessageBean) messages.get(i);//list1中的一个对象
object.put("id", new Integer(message.getId()));//把该对象的属性加到jsonobject的对象(object)中 object.put("title", message.getTitle()); object.put("content", message.getContent());
arrayjson.add(object); } }
/** * 通过action来访问的时候调用的方法 */
public String execute() { initData(); createJson(); success = true; System.out.println(arrayjson.toString());//测试语句 return "success"; }
public JSONArray getArrayjson() { return arrayjson; }
public void setArrayjson(JSONArray arrayjson) { this.arrayjson = arrayjson; }
public boolean isSuccess() { return success; }
public void setSuccess(boolean success) { this.success = success; } }
|