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 ...
随机推荐
- jQuery小例子
map遍历数组 //=========for循环遍历========== var arr[1,2,3,4,5]; for(var i=0;i<=arr.length;i++) { arr[i]= ...
- Openerp上传中文名附件,下载时报错的处理方法
文档管理中,如果上传的文件名含有中文字符,下载时会提示出错,如没有权限等.这个问题困惑我比较久的时间,通过跟踪openerp_server.log,可以看到类似提示: 2012-09-28 21:51 ...
- XenServer6.2详细安装步骤
系统要求 系统要求 XenServer 至少需要两台单独的 x86 物理计算机:一台用作 XenServer 主机,另一台用于运行XenCenter 应用程序. XenServer 主计算机完全专用于 ...
- BZOJ 3406 乳草的入侵
BFS. #include<iostream> #include<cstdio> #include<cstring> #include<algorithm&g ...
- Mysql使用大全
#登录数据库 mysql -hlocalhost -uroot -p; #修改密码 mysqladmin -uroot -pold password new; #显示数据库 show database ...
- Spark源码阅读(1): Stage划分
Spark中job由action动作生成,那么stage是如何划分的呢?一般的解答是根据宽窄依赖划分.那么我们深入源码看看吧 一个action 例如count,会在多次runJob中传递,最终会到一个 ...
- ecshop 文章列表页调用描述信息啊
1.打开 includes/lib_article.php文件 将 $sql = 'SELECT article_id, title, author, add_time, file_url, open ...
- 写python时加入缩进设置
发现如果用vim写python的时候,还是设成8好像会报错,在现有的基础上,加入下面设置就好了set shiftwidth=4
- 脚本乐园 Shell中命令行选项和参数的处理
在Linux的Shell中怎样处理tail -n 10 access.log这样的命令行选项呢?这是被别人问起的一个问题,好好学习了一下,进行总结如下:在bash中,可以用以下三种方式来处理命令行参数 ...
- ueditor-百度编辑器插件
1.官网地址:http://ueditor.baidu.com/website/index.html 2.定制化工具栏:(1)修改ueditor.config.js的toolsbar(2)在创建编辑器 ...