/**
* 用户请求动作
* @author RuiLin.Xie - xKF24276
*/
public class BaseAction extends HttpServlet
{
/**
* 序列号
*/
private static final long serialVersionUID = 1L;
/**
* 处理Get
*/
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
{
initCookie(req, resp);
//根据用户请求解析出用户动作及提交参数
RequestPackage rp = ActionBizFactory.getActionBizFactory().reqToRequestPackage(req, resp);
System.out.println(rp.getAction());
if(rp.getAction().startsWith("PoseStaticPage") || rp.getAction().length() == 0 || rp.getAction().equals("index"))
req.getRequestDispatcher("index.jsp").forward(req, resp);
//执行业务并响应用户
ActionBizFactory.getActionBizFactory().exec(rp);
}
/**
* 处理POST
*/
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
{
doGet(req, resp);
}
/**
* 读取配置文件初始化配置
*/
public void init() throws ServletException
{
//得到配置文件路径
String filePath = this.getServletConfig().getServletContext().getRealPath("/");
filePath = filePath + "WEB-INF\\action.conf";
//初始化到ActionBizFactory 的 actionMap
super.init();
}
/**
* 初始化Cookie,防止非法下载
* @param request
* @param response
*/
private void initCookie(HttpServletRequest request, HttpServletResponse response)
{
Object oFurl = request.getSession().getAttribute("FURL");
String ccookie = request.getHeader("Cookie");
if(oFurl == null || ccookie.indexOf("FURL") == -1)
{
//加密URL
String fromUrl = request.getRequestURL().toString();
Cookie cookie = new Cookie("FURL", fromUrl);
response.addCookie(cookie);
request.getSession().setAttribute("FURL", fromUrl);
}
}
}
分享到:
相关推荐
用户可能需要运行这个文件来安装或启动应用,然后根据需要设置定时任务,包括设定请求间隔、目标URL、请求方法(GET或POST)以及可能需要传递的参数。 在实际应用中,"win定时请求网址"可能包含以下功能: 1. **...
此外,请求的每一次更新或动作,软件都提供了邮件通知选项,用户可以选择是否通过电子邮件通知请求人和其他相关人员,保持沟通的透明度。 4. **请求管理与跟进**:转化后的请求会被收录至请求列表,工程师或服务台...
通过配置Struts2拦截器、使用JSON插件以及编写适当的动作类和前端页面,开发者可以轻松实现异步数据请求和更新。这种技术在现代Web应用中广泛使用,特别是在需要动态加载数据的场景下,如分页、搜索结果展示等。
当用户在浏览器地址栏输入URL并按下回车键后,会触发一系列的动作。整个过程大致分为以下几个步骤: 1. **域名解析**:将输入的URL中的域名转换为IP地址。这一步通常通过DNS(Domain Name System)查询完成。 2. **...
请求行包括方法(GET或POST)、URL和HTTP版本,请求头包含各种信息,如用户代理、接受类型等,空行分隔请求头与请求体,请求体则用于POST请求携带数据。 二、GET请求 GET是最常见的HTTP请求方法,主要用于获取资源...
这个开关的启用意味着在1秒钟内,基站可以处理最多10个用户的切出请求,相比于之前的1个用户,大大提升了处理速率。配置命令`MOD CELLALGOSWITCH:LocalCellId=0,HighSpeedSchOptSwitch=LowSpeedBlindRedirect-1;`...
这一过程涉及到玩家与服务器之间的通信,确保游戏状态的实时更新,如角色动作、道具交换、地图变化等。本篇将重点解析"网络游戏-请求网络数据的方法及装置"的核心概念,并提供相关的技术细节。 网络游戏中的网络...
利用JSP动作可以动态地插入文件、重用JavaBean组件、把用户重定向到另外的页面、为Java插件生成HTML代码。 JSP动作包括: jsp:include:在页面被请求的时候引入一个文件。 jsp:useBean:寻找或者实例化一个JavaBean...
请求在进入*** MVC框架的处理流程是,首先由请求进入Web服务器,然后通过路由机制被解析和映射到相应的控制器(Controller)及其动作方法(Action)上。在控制器中处理完毕后,最后将响应返回给用户。 在传统*** ...
这类状态码表示需要客户端采取进一步的动作才能完成请求。 - **300 Multiple Choices**: 针对请求,服务器可操作多个动作,由客户端选择。 - **301 Moved Permanently**: 请求的页面已永久移动到新位置。 - **302 ...
它可以自动管理和触发刷新动作,开发者只需简单地调用相关API即可实现。另一款类似框架是UIRefreshControl,它是苹果官方提供的下拉刷新控件,但功能相对简单。 4. **KVC框架**:Key-Value Coding(KVC)是...
利用JSP动作可以动态地插入文件、重用JavaBean组件、把用户重定向到另外的页面、为Java插件生成HTML代码。 动作元素只有一种语法,它符合XML标准: 动作元素基本上都是预定义的函数,JSP规范定义了一系列的标准...
在 Magento 2.0 中,请求流是应用程序的核心机制,它描述了从用户在浏览器中输入 URL 到页面最终渲染出来的整个过程。本篇文章将详细解读 Magento 2.0 请求流的每一步,帮助你理解这个复杂但至关重要的系统。 首先...
- 用户请求服务器索引指定的部分,但是服务器无法返回用户所需的内容。 - **417 Expectation Failed** - 服务器不能满足期望请求头字段的要求。 5. **5xx - 服务器错误状态码** - 这些状态码表明服务器在尝试...
- **默认请求**: 当没有任何特定路由或参数时,框架会按照预设的默认控制器和动作处理请求,即默认模块(通常是`default`)的`IndexController`的`indexAction`。这就是为什么在没有指定任何路径的情况下,浏览器会...
在用户注册场景中,它定义了用户的操作(如注册、提交等)对应的动作类,这些动作类会处理用户请求并调用业务逻辑。通过Struts2的拦截器机制,我们可以添加验证规则,确保用户输入的数据符合要求。 其次,Spring...
当用户提交请求时,Servlet接收请求,处理后返回数据,JSP再将这些数据显示在页面上。 总结来说,这个"JSP+MySQL用户管理系统"是一个典型的Web应用示例,它结合了前后端技术,实现了用户身份验证、权限控制以及数据...
用户在流媒体点播应用中的行为特征是设计流媒体分发方案的基础,而研究用户行为特征的主要手段是建立用户行为记录的生成模型,模拟用户发起各种动作的机制。 现有的流媒体点播用户行为模型对用户的变互性考虑不足。...
在基站缓存管理中,RL框架可以理解为基站作为一个智能代理,根据用户请求、网络状态等因素,动态调整其缓存策略,以提高数据传输效率和用户满意度。 该方法的实现通常包括以下几个步骤:状态定义、动作选择、奖励...