且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

struts2学习笔记--使用servletAPI实现ajax的一个小Demo

更新时间:2022-06-24 02:05:44

  这个例子是点击网页上的一个button,然后调用action,使用response项前台打印"哎呦 不错哦",当然是以异步形式实现.

  • jsp页面:

 <head>
    <script type="text/javascript" src="jquery/jquery.min.js"></script>
    <script type="text/javascript">
        $(function(){
            $('#btn1').click(function(){
                $.post("ajax.action",function(dat){
                    $('#content').css("display","block").html(dat);
                });
            });
            $('#btn2').click(function(){
            //    alert("a");
                $('#content').css("display","none");
            });
            
        });
    </script>
  </head>
  
  <body>
    <input type="button" name="btn" id="btn1" value="获取ajax信息"/><br>
    <h1 id="content"></h1>
     <input type="button" name="btn" id="btn2" value="隐藏ajax信息"/><br>
  </body>
</html>
  • Action页面:

package com.wang.action;

import java.io.IOException;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.ServletActionContext;
public class AjaxAction {

    public String execute() throws IOException{
        HttpServletResponse response=ServletActionContext.getResponse();
        response.setCharacterEncoding("utf-8");
        response.getWriter().print("哎呦  不错哦");
        return null;
    }
}
  • struts.xml页面:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1
//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"
> <struts> <package name="default" extends="struts-default" namespace="/"> <action name="ajax" class="com.wang.action.AjaxAction"> </action> </package> </struts>

需要注意的一点就是:action中execute()方法返回值为null即可,因为我们不需要跳转到其他页面,而strust.xml中也无需添加result标签.