struts2.18整合json和ExtJs4.0实例
来源:互联网 发布:网上卖东西的软件 编辑:程序博客网 时间:2024/06/06 10:46
struts2.18整合json和ExtJs4.0实例
- 博客分类:
- ext4.0
用到的jar包有:
commons-beanutils-1.7.0.jar、commons-collections-3.2.jar、commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar、commons-lang-2.3.jar、commons-logging-1.0.4.jar、freemarker-2.3.15.jar、json-lib-2.1.jar、ognl-2.7.3.jar、struts2-core-2.1.8.1.jar、struts2-json-plugin-2.1.8.1.jar、xwork-core-2.1.6.jar
这些包在struts2.1.8的lib文件夹中都有,还需要加上一个ezmorph-1.0.4.jar,本实例中没有用到jsonplugin-0.33.jar包。
一、首先写一个javabean:Person.java
- package com.leo.bean;
- public class Person {
- private String name;
- private int age;
- private String sex;
- private String birthday;
- public Person(String name, int age, String sex, String birthday) {
- super();
- this.name = name;
- this.age = age;
- this.sex = sex;
- this.birthday = birthday;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public int getAge() {
- return age;
- }
- public void setAge(int age) {
- this.age = age;
- }
- public String getSex() {
- return sex;
- }
- public void setSex(String sex) {
- this.sex = sex;
- }
- public String getBirthday() {
- return birthday;
- }
- public void setBirthday(String birthday) {
- this.birthday = birthday;
- }
- }
二、写Action:ExtjsAction.java
- package com.leo.action;
- import java.util.ArrayList;
- import java.util.List;
- import com.leo.bean.Person;
- import com.opensymphony.xwork2.ActionSupport;
- public class ExtjsAction extends ActionSupport {
- private long results;
- private List items;
- public long getResults() {
- return results;
- }
- public void setResults(long results) {
- this.results = results;
- }
- public List getItems() {
- return items;
- }
- public void setItems(List items) {
- this.items = items;
- }
- public String execute() throws Exception {
- this.results = 3;
- Person p1 = new Person("张三", 29, "男", "1990-10-22");
- Person p2 = new Person("李四", 28, "男", "1991-03-30");
- Person p3 = new Person("王五", 27, "女", "1993-08-17");
- this.items = new ArrayList<Person>();
- this.items.add(p1);
- this.items.add(p2);
- this.items.add(p3);
- return SUCCESS;
- }
- }
三、写配置文件
1.web.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
- version="2.5">
- <display-name>struts2</display-name>
- <welcome-file-list>
- <welcome-file>index.jsp</welcome-file>
- </welcome-file-list>
- <filter>
- <filter-name>struts2</filter-name>
- <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>struts2</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
- </web-app>
2.struts.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
- "http://struts.apache.org/dtds/struts-2.1.dtd">
- <struts>
- <include file="struts-default.xml" />
- <package name="json" namespace="/" extends="json-default">
- <action name="extjs" class="com.leo.action.ExtjsAction">
- <result type="json"></result>
- </action>
- </package>
- </struts>
四、最后写jsp
index.jsp
- <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <title>ExtJs与Struts2结合</title>
- <meta http-equiv="pragma" content="no-cache">
- <meta http-equiv="cache-control" content="no-cache">
- <meta http-equiv="expires" content="0">
- <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
- <meta http-equiv="description" content="This is my page">
- <link rel="stylesheet" type="text/css"
- href="../../ext-4.0.7/resources/css/ext-all.css" />
- <script type="text/javascript" src="../../ext-4.0.7/bootstrap.js"></script>
- <script type="text/javascript"
- src="../../ext-4.0.7/locale/ext-lang-zh_CN.js"></script>
- <script type="text/javascript">
- Ext.onReady(function() {
- Ext.create('Ext.grid.Panel', {
- title : '人员列表',
- renderTo : Ext.getBody(),
- width : 400,
- height : 170,
- frame : true,
- store : {
- fields : [ 'name', 'age', 'sex', 'birthday' ],
- proxy : {
- type : 'ajax',
- url : '/s2json/extjs.action',
- reader : {
- type : 'json',
- root : 'items'
- }
- },
- autoLoad : true
- },
- columns : [ new Ext.grid.RowNumberer(), {
- header : "姓名",
- width : 80,
- dataIndex : 'name',
- sortable : true
- }, {
- header : "年龄",
- width : 80,
- dataIndex : 'age',
- sortable : true
- }, {
- header : "性别",
- width : 80,
- dataIndex : 'sex',
- sortable : true
- }, {
- header : "生日",
- width : 80,
- dataIndex : 'birthday',
- sortable : true
- } ]
- });
- });
- </script>
- </head>
- <body>
- </body>
- </html>
五、效果图
- struts2.18整合json和ExtJs4.0实例
- struts2.18整合json和ExtJs4.0实例
- struts2和json整合
- extjs4 tree struts2 json
- struts2和json的整合
- struts2和json的整合
- Extjs4.0+struts2简单MVC 实例demo
- Extjs4.0+struts2简单MVC 实例demo
- struts2和jFreeChart整合实例
- Struts2和Spring整合实例【转】
- struts2整合json使用
- Struts2整合JSON
- struts2整合json
- struts2整合json
- struts2 与json 整合
- struts2整合json使用
- struts2整合json
- ExtJS4+JSON+Servlet/Struts2实现登录验证
- 内存管理详解
- struts2通配符的应用以及action、result、package的name和namespace属性同名时的处理方法
- Android学习笔记之NFC近距离无线通讯技术(Dean)
- JS监听关闭浏览器事件
- HADOOP SHELL 官方文档
- struts2.18整合json和ExtJs4.0实例
- Oracle 笔记
- VC中free()函数调试错误原因
- 九度OJ 题目1058:反序输出
- Objective-C的新特性
- 深入研究数据访问:什么是SQL注入
- Ogre内存池的使用和说明
- .SQL 字符串+数字的字段按数字排序
- 在ASP.NET MVC中使用分布式缓存