struts2 集成 easyui
关键点:
- json数据格式
- 获取json数据
- 输出json
- 分页
#json数据格式#
datagrid:
{"total":1,"rows":[{"name":"小李"}]}
combobox:
[{"value":"001","text":"小李"},{"value":"002","text":"小红"}]
其他:
#获取json数据#
#输出json#
方式一:PrintWriter
public String getJsonData(){
Map<String,Object> data = new HashMap<String,Object>();
List<Map<String,Object>> personList = new ArrayList<Map<String,Object>>();
Map<String,Object> person = new HashMap<String,Object>();
person.put("name", "小李");
personList.add(person);
data.put("total", personList.size());
data.put("rows", personList);
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
PrintWriter out;
try {
out = response.getWriter();
out.println(JSONObject.fromObject(data));
out.flush();
out.close();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
PrintWriter
方式二:stream
片段一
InputStream inputStream;
public InputStream getInputStream() {
return inputStream;
}
public void setInputStream(InputStream inputStream) {
this.inputStream = inputStream;
}
public String getJsonData(){
Map<String,Object> data = new HashMap<String,Object>();
List<Map<String,Object>> personList = new ArrayList<Map<String,Object>>();
Map<String,Object> person = new HashMap<String,Object>();
person.put("name", "小李");
personList.add(person);
data.put("total", personList.size());
data.put("rows", personList);
inputStream = new ByteArrayInputStream(JSONObject.fromObject(data).toString().getBytes());
return "inputStream";
}
.java 片段
片段二
<result type="stream" name="inputStream">
<param name="bufferSize">1024*1024</param>
<param name="inputName">inputStream</param>
</result>
struts.xml 片段
方式三:json
片段一
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-json-plugin</artifactId>
<version>2.3.15.3</version>
</dependency>
pom.xml 片段
片段二
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="pages" namespace="/pages" extends="struts-default,json-default">
<global-results>
<result name="json" type="json" >
<param name="root">jsonObject</param>
</result>
</global-results>
</package>
</struts>
struts-view.xml
片段三
// 返回 JSON
Object jsonObject; // 页面跳转
static final String JSON = "json"; public Object getJsonObject() {
return jsonObject;
}
public void setJsonObject(Object jsonObject) {
this.jsonObject = jsonObject;
}
.java 片段
本实现方式需要引入struts2-json-plugin
- struts.xml 需继承json-default
#分页#
见smse
struts2 集成 easyui的更多相关文章
- struts2 集成webservice 的方法
由于项目需求的需要,要在原来用Struts2的框架之上集成webservice,因为之前单单做webservice的时候没有多大问题,使用 Spring 和 Xfire就可以轻松地发布服务,但是,当和 ...
- Spring,Struts2,MyBatis,Activiti,Maven,H2,Tomcat集成(二)——Struts2集成
1. pom.xml文件添struts2依赖jar包: <!-- 与Struts2集成必须使用 --> <dependency> <groupId>org.spri ...
- Spring与Struts2集成开发
Struts2和Spring都是不错的开源框架,Spring与Struts2集成开发,把二者结合在一起使用,开发效果更佳,效率杠杠的.下面介绍一下如何将Spring与Struts2集成在一起开发.分七 ...
- Vue 集成easyUI
原 Vue 集成easyUI https://blog.csdn.net/m0_37948170/article/details/84960320 参考vue官网用cli创建了Vue项目之后: n ...
- SSM集成Easyui框架及多模块开发的认识
首先我们需要建立好一个emaven项目,并且在pom.xml中导入响应的jar包, <?xml version="1.0" encoding="UTF-8" ...
- struts2+jquery+easyui+datagrid+j…
一.概述 struts2提供了针对json的插件支持.常规来讲我们将如何将对象数组转成json对象在客户端直接调用呢?尤其和jquery的easyui插件配合使用,这个可能会有很多的问题需要我们解决. ...
- struts2集成javamail发邮件(带附件)实践记录
一.代码预览 这两天在做struts2上的邮件发送.以前的项目有用到spring,用spring提供的邮件支持类很方便可以完成这个功能,但是现在只用struts2的话,就碰到了一系列的问题. 代码是从 ...
- Struts2与easyui分页查询
easyui里面分页查询:在easyui框架里面已经进行一些分装,所以我们只要进行后台分页查询即可 web.xml和struts.xml文件的配置的就不需要我多说了,和分页前代码一样,不需要更改: 需 ...
- vuecli3集成easyui
思路是这样的,首先要将jquery设置成全局,然后就可以正常使用easyUI了. jquery安装命令: npm install --save jquery jquery-easyui安装命令: np ...
随机推荐
- 各个 Maven仓库 镜像(包括国内)
本来之前用的OSC的Maven库,不过最近客户这边换了联通的网络之后,OSC的库就完全连不上了,不知道是不是因为OSC用的是天翼赞助的网络的原因,所以收集了一些其他的镜像库 首推当然还是OSC(不过联 ...
- Android app 别用中文名
/************************************************************************* * Android app 别用中文名 * 说明: ...
- #define | enum(enumerator)
/**************************************************************************** * #define | enum(enume ...
- uva 11752 - The Super Powers
这个题 任意一个数,他的幂只要不是质数则可以分解成两个数的乘 判断有没有溺出 i×i 则用最大的那个数 Max/i < i 吗 #include<iostream> #i ...
- 内存泄露(OOM)现象及举例
一.HeapSize OOM(堆空间内存溢出) A.eg:List.add(" ")在一个死循环中不断的调用add却没有remove. B.并发导致. 解决方法有:1.代码提速.这 ...
- xampp无法打开phpmyadmin解决方案
如果设置了apache的端口号(如8890),那么不可以用自带的admin按钮打开,而是要加上端口(如localhost:8890/phpmyadmin/)
- Eclipse中安装可以新建html文件的插件(Eclipse HTML Editor)
最近在eclipse中开发android项目,用到了jquery mobile框架,则会涉及到新建html文件,发现eclipse不自带新建html文件的插件,必须得新建一个其他形式的文件,譬如xml ...
- windowsphone8.0 iso 下载地址
中文版http://download.microsoft.com/download/F/5/6/F56AD199-EF12-43C7-8551-C095394D3B32/fulltril30/iso/ ...
- Safari on iOS 7 中Element.getClientRects的Bug
在Safari浏览器中,DOMElement和Range对象都提供了getBoundingClientRect方法和getClientRects方法.顾名思义,getBoundingClientRec ...
- boost的link 和 runtime-link,搭配shared 和 static
转自:http://blog.csdn.net/yasi_xi/article/details/8660549 link:生成动态链接库/静态链接库.生成动态链接库需使用shared方式,生成静态链接 ...