6、struct2使用servlet的api函数

方法一:

Struts2的Action访问Servlet API

可以通过实现装配接口没,完成对Servlet API的访问
* ServletRequestAware取得HttpServletRequest对象
* ServletResponseAware取得HttpServletResponse对象
* ServletContextAware取得ServletContext对象(工具类)

复制代码
package com.weiyuan.test;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.ServletResponseAware;
import org.apache.struts2.util.ServletContextAware;

/**
 * struct2的action可以不继承任何框架的接口
 * 1、默认调用的是execute()方法
 * */
public class LoginAction implements ServletRequestAware,ServletResponseAware,ServletContextAware {
    private String username;
    private String password;
    private HttpServletRequest request;
    private HttpServletResponse reponse;
    private ServletContext servletContext;
    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String execute() throws Exception{
         
        /**
         * 
         * 这个地方就是可以进行和原来的操作了
         * */
        
        if("admin".equals(username)&&"admin".equals(password)){
            return "success";
        }else{
            return "error";
        }
    }

    @Override
    public void setServletContext(ServletContext servletContext) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setServletResponse(HttpServletResponse reponse) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setServletRequest(HttpServletRequest request) {
        // TODO Auto-generated method stub
        this.request = request;
    }

}
复制代码

方法二:

Struts2的Action访问Servlet API

可以通过ServletActionContext提供的静态方法取得Servlet API

* getPageContext();
* getRequest();
* getResponse();
* getServletContext();

 

posted on   luzhouxiaoshuai  阅读(189)  评论(0编辑  收藏  举报

编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示