Struts2的JSON插件

扎心了,老铁~这依然是一个注册。

1、reg.jsp

<%@page contentType="text/html; charset=utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>新用户注册</title>

<script src="js/jquery-1.8.1.js"></script>
<script>
    $(function(){
      $("#account").blur(function(){
       $.ajax({
        url:"userManager_checkUserIsRegist", //请求的URL路径
        type: "post",  //请求方法
        data:"account="+$("#account").val(),//获取文本框输入的文本值
        dataType:"json",//返回json的数据格式
        success:function(data){//操作成功后执行的回调函数
            //alert(data);
            //循环遍历data集合
            //{"errorMsg":"对不起该账号已经被注册"}
            $.each(data, function (key, value) {
                  alert(value);
            });
        }
       });  

      });
    });

</script>
</head>

<body>
  <form  action="userManager_checkUserIsRegist">
        用户帐号:<input name="textfield" type="text" id="account" name="account"/>
             用户密码:<input name="textfield" type="text" />
  </form>
</body>
</html>

2、UserManagerAction.java

package com.cn.action;

public class UserManagerAction {
    private  String  account;
    private  String  errorMsg;

    public  String  checkUserIsRegist(){
        String[] registAccount={"aa","bb","cc","dd"};
        for(String act:registAccount){
            if(act.equals(account)){
                errorMsg="对不起该账号已经被注册";
                break;
            }else{
                errorMsg="恭喜您该账号可以使用";
            }
        }
        return "regist";
    }

    public String  getAccount(){

        return  account;
    }

    public void  setAccount(String account){

        this.account=account;
    }

    public String getErrorMsg() {
        return errorMsg;
    }
}

3、struts.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>
    <constant name="struts.enable.DynamicMethodInvocation" value="true"/>
    <package name="jsonPlugin" namespace="/" extends="json-default">
       <action name="userManager_*" class="com.cn.action.UserManagerAction" method="{1}">
          <!--返回类型必须为json-->
           <result type="json" name="regist">
             <!--Action中哪些属性需要转换成JSON数据格式-->
               <param name="includeProperties">errorMsg</param>
            </result>
       </action>
    </package>

    <package name="jfreechartPlugin" namespace="/" extends="jfreechart-default">
       <action name="jFreeChart_*" class="com.cn.action.JFreeChartAction" method="{1}">
           <result name="success" type="chart">
               <!--定义JFreeChart报表的大小-->
               <param name="width">800</param>
               <param name="height">600</param>
           </result>
       </action>

    </package>

</struts>

4、web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

  <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>
时间: 2024-08-19 00:28:16

Struts2的JSON插件的相关文章

struts2之json插件

1.引入json插件包 <!-- 引入struts2的json插件 -->     <dependency>         <groupId>org.apache.struts</groupId>         <artifactId>struts2-json-plugin</artifactId>         <version>${struts.version}</version>     </

Struts2使用JSON插件实现异步刷新功能

1.说起这个Json插件实现异步刷新的功能折腾了我两天了,本想使用Juery来实现,可是在Jsp页面中始终无法获取json数据,最终无奈之下只能选择了最原始的方式. 2.首先是需要加载struts2-json-plugin-2.3.20.1.jar(因为我用的struts的版本是2.3.20.1)到项目中,接下来就是配置struts.xml配置文件了,而在这个过程中我有遇到一个非常烦恼的事,就是在我配置json的时候,需要继承json-default,始终都报错,这个问题已经在我之前的博客"SS

【Struts2】Json插件使用

一.使用步骤 1.1 引入依赖 1.2 在struts.xml文件中配置 一.使用步骤 1.1 引入依赖 <!-- https://mvnrepository.com/artifact/org.apache.struts/struts2-json-plugin --> <dependency> <groupId>org.apache.struts</groupId> <artifactId>struts2-json-plugin</arti

Struts2:Json插件_Ajax

lib中加入包 struts2-json-plugin-2.3.20.jarcommons-lang3-3.2.jar WebRoot下新建js文件夹 放入json2.js json2.js是一个著名开源js库,提供了json的序列化和反序列化方法 JSON.stringify:L353:把Json对象转换成字符串 JSON.parse: L400:把字符串转成Json对象 http://www.json.org/ 有 JavaScript: JSON. json2.js. clarinet.

【未解决】struts2的json插件返回的json包含特殊字符被转义问题

例: {"pics":"http:\/\/localhost:8080\/data\/photos\/moodsPic\/4.jpg"} 想要"http://localhost:8080/data/photos/moodsPic/4.jpg这效果 换种方式: 转义后再返回http:\\/\\/localhost:8080\\/data\\/photos\\/moodsPic\\/4.jpg 结果变这样:http:\\\/\\\/localhost:8080

Struts2之—集成Json插件实现Ajax

   上篇博客介绍了Struts2中自定义结果集实现Ajax,也分析了它的缺点:这样自定义的结果集,写死了,不能做到客户端需要什么数据就传什么数据:Struts2之-自定义结果集实现ajax 本篇博客提出Struts2的集成Json插件,很好的解决了自定义结果集带来的问题. 一,引题 1,Json数据格式简介 因为JSON是脱离语言的理想的数据交换格式,所以它被频繁的应用在客户端与服务器的通信过程中,这一点是毋庸置疑的.而在客户端与服务器的通信过程中,JSON数据的传递又被分为服务器向客户端传送

关于Strut2内置Json插件的使用

配置注意点: 在原有Struts2框架jar包的引入下,需要额外多加一个Json的插件包(struts2-json-plugin-2.3.7.jar) 在struts.xml配置文件中,包需要继承json-default,然后把result的类型改为json <package name="xxx" extends="json-default"> <result name="success" type="json&quo

Struts2返回Json数据(使用Struts2插件)

这篇我将介绍如何使用Struts2的struts2-json-plugin.jar插件返回JSON数据. 一.其中主要步骤有: 1.将struts2-json-plugin.jar插件拷贝到项目的"/WEB-INF/lib"文件夹下: 2.编写Action类文件: 3.在struts.xml文件中配置这个Action,这个Action所在的"<package.../>"必须继承”json-default“,Action的Result类型为json,即ty

struts2对json的支持

方式一:自行构造json 1)导入jar包: xstream 或者 Jackson,推荐使用Jackson,效率高 2)引入struts2,书写配置文件 3)修改action配置,修改result返回的jsp页面,页面只留下${requestScope.json} 下面是我之前做的安卓服务器例子: action配置 <!-- 设置全局转发地址,专门发送JSON对象 --> 因为我做后台所有信息都是json格式,所以就用了全局设置 <global-results> <resul