struts2_json

来源:互联网 发布:java两年经验工资多少 编辑:程序博客网 时间:2024/06/01 18:25

struts2_json:快速导引

基本结构:

1.action类2.utils类(存放BaseAction基类)3.domain类(存放实体User类)4.config文件(与src同级,用于存放配置文件)5.在webroot下创建js文件夹,引入jquery-1.8.3.js6.index.jsp(用于json传值的显示)

01:引入Struts2——json开发所需的jar包

jar包如下:(存在部分用于Hibernate开发所使用的jar包)

    antlr-2.7.6.jar    asm-3.3.jar    asm-commons-3.3.jar    asm-tree-3.3.jar    commons-collections-3.1.jar    commons-fileupload-1.3.jar    commons-io-2.0.1.jar    commons-lang3-3.1.jar    commons-logging-1.1.3.jar    dom4j-1.6.1.jar    freemarker-2.3.19.jar    javassist-3.12.0.GA.jar    jta-1.1.jar    log4j-1.2.17.jar    slf4j-api-1.6.1.jar    struts2-core-2.3.15.3.jar    struts2-json-plugin-2.3.4.1.jar    xwork-core-2.3.15.3.jar

02:文件配置

配置web.xml

<filter>    <filter-name>struts2</filter-name>    <filterclass>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></filter><filter-mapping>    <filter-name>struts2</filter-name>    <url-pattern>/*</url-pattern></filter-mapping>

创建并配置struts.xml文件(存放于config目录下)

<?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>    <constant name="struts.ui.theme" value="simple"></constant>    <constant name="struts.devMode" value="true"></constant>    <package name="default" extends="json-default" namespace="/">        <action name="testJson" class="cn.itcast.action.TestJson">            <result type="json">                </result>        </action>    </package></struts>

03:action编写

TestJson:

public class TestJson extends BaseAction{            private List<User> list = null;            @Override            public String execute() throws Exception {                list = new ArrayList<User>();                list.add(new User("赵",12));                list.add(new User("钱",13));                list.add(new User("孙",14));                list.add(new User("李",15));                list.add(new User("周",16));                return SUCCESS;            }            //list的get-set方法            public List<User> getList() {                return list;            }            public void setList(List<User> list) {                this.list = list;            }        }

04:domain类(User)

User:(提供两个属性)

    private String name;    private int age;

05:

测试json传值

http://localhost:8080/项目名/'struts.xml中的对应action名称'

06:

jsp接收后台传值(index.jsp)

<script type="text/javascript">        //js代码        $(function(){            $.ajax({                url:'testJson',        //访问路径                type:'post',           //请求方式                dataType:'json',       //数据类型                success:function(data){//数据接收                    for ( var i = 0; i < data.list.length; i++) {                        $("select:first").append('<option value="'+data.list[i].name+'">'+data.list[i].name+','+data.list[i].age+'</option>');                    }                 }            });        });</script><body>    <select><option value="">--请选择--</option></select></body>

07:测试

http://localhost:8080/hibernate_04/index.jsp
0 0
原创粉丝点击