struts2_json

struts2_json:快速导引

基本结构:

1.action类
2.utils类(存放BaseAction基类)
3.domain类(存放实体User类)

4.config文件(与src同级,用于存放配置文件)
5.在webroot下创建js文件夹,引入jquery-1.8.3.js
6.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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值