intellij struts2 json返回 [指定类成员json返回] 手动档

来源:互联网 发布:cdn.bootcss.com 知乎 编辑:程序博客网 时间:2024/06/05 17:57

前言:

intellij 开发JavaEE最好手动配置框架,因为intellij提供的Jar包是各种问题

myeclipse系列提供的Jar包,应该是严格进行测试的(个人猜测),没有Intellij出的Jar包问题多

但是呢,myeclipse提示没intellij做的好
myeclipse2017也修复了,高分辨率,图标显示过小的问题
二选一,,,

Jar Lib处理方式
myeclipse本身自带一大部分,支持maven
intellij不自带,新建项目都是在线请求,,


http://www.jianshu.com/p/efcb67494c34
MyEclipse 2017 CI 7安装与激活

https://www.jetbrains.com/idea/download/
下载Intellij IDEA


官方struts2 json 插件文档
https://struts.apache.org/docs/json-plugin.html

Jar包下载

https://pan.baidu.com/s/1slwR5QP#list/path=%2F
struts2.1 core Lib
myeclipse自带文件中,复制来的(很稳定)


github 代码
https://github.com/dzetJavaEE/struts2_json_demo_server

struts2 json

新建web application 项目

添加struts2 jar

OK ==》OK==》OK(界面不见,再次点开)

修复项目问题

OK(界面不见,再次点开)

添加struts2 方面

新建struts.xml 配置文件

Edit Struts 2 facet settings(编辑struts2 方面 )

OK ==》OK


json plugin 使用

struts.xml文件

1 package extends =”json-default”

2 result 指定type =”json”

3 param 指定name =”root”,value指定类成员变量名,即可返回指定类成员json


代码

TestAction
package action;import com.opensymphony.xwork2.ActionSupport;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;public class TestAction extends ActionSupport {    private List<String> list = null;    private Map<Integer, String> map = null;    public TestAction(){        updateData();    }    public void updateData() {        list = new ArrayList<>();        for (int i = 0; i < 20; i++) {            list.add("aa" + i);        }        map = new HashMap<>();        for (int i = 10; i < 30; i++) {            map.put( i, "aa" + i);        }    }    public String testAll() {        return "testAll";    }    public String test1() {        return "test1";    }    public String test2() {        return "test2";    }    public List<String> getList() {        return list;    }    public void setList(List<String> list) {        this.list = list;    }    public Map<Integer, String> getMap() {        return map;    }    public void setMap(Map<Integer, String> map) {        this.map = map;    }}
struts.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC        "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"        "http://struts.apache.org/dtds/struts-2.1.7.dtd"><struts>    <package name="test1" extends="struts-default,json-default" namespace="/">        <action name="testAll" class="action.TestAction" method="testAll">            <result name="testAll" type="json">            </result>        </action>        <action name="test1" class="action.TestAction" method="test1">            <result name="test1" type="json">                <param name="root">list</param>            </result>        </action>        <action name="test2" class="action.TestAction" method="test2">            <result name="test2" type="json">                <param name="root">map</param>            </result>        </action>    </package></struts>
web.xml
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"         version="3.1">    <filter>        <filter-name>struts2</filter-name>        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>    </filter>    <filter-mapping>        <filter-name>struts2</filter-name>        <url-pattern>/*</url-pattern>    </filter-mapping></web-app>
index.jsp
<%@ page contentType="text/html;charset=UTF-8" %><html><head>    <title>index.jsp</title></head><body><a href="/testAll">testAll</a><br><br><a href="/test1">test1</a><br><br><a href="/test2">test2</a><br><br></body></html>

请求结果

http://localhost:8080/testAll

{"list":["aa0","aa1","aa2","aa3","aa4","aa5","aa6","aa7","aa8","aa9","aa10","aa11","aa12","aa13","aa14","aa15","aa16","aa17","aa18","aa19"],"map":{"10":"aa10","11":"aa11","12":"aa12","13":"aa13","14":"aa14","15":"aa15","16":"aa16","17":"aa17","18":"aa18","19":"aa19","20":"aa20","21":"aa21","22":"aa22","23":"aa23","24":"aa24","25":"aa25","26":"aa26","27":"aa27","28":"aa28","29":"aa29"}}

http://localhost:8080/test1

["aa0","aa1","aa2","aa3","aa4","aa5","aa6","aa7","aa8","aa9","aa10","aa11","aa12","aa13","aa14","aa15","aa16","aa17","aa18","aa19"]

http://localhost:8080/test2

{"10":"aa10","11":"aa11","12":"aa12","13":"aa13","14":"aa14","15":"aa15","16":"aa16","17":"aa17","18":"aa18","19":"aa19","20":"aa20","21":"aa21","22":"aa22","23":"aa23","24":"aa24","25":"aa25","26":"aa26","27":"aa27","28":"aa28","29":"aa29"}

推荐文章
http://www.cnblogs.com/linjiqin/archive/2011/03/19/1989169.html
struts2+jquery+json集成


end

原创粉丝点击