// 保存用户IP到cookie
public void setUserIp2Cookie(String cookieName) {
HttpServletRequest request = ServletActionContext.getRequest();
String userIp = request.getRemoteAddr();
if (request.getHeader("x-forwarded-for") != null) {// 当有代理的时候 获取用户真实IP
userIp = request.getHeader("x-forwarded-for");
String[] userIps = userIp.split(",");
for (int i = 0; i < userIps.length; i++) {
if (!"unknown".equals(userIps[i])) {
userIp = userIps[i];
break;
}
}
}
Cookie cookie = null;
if (userIp.split(":").length > 1) {
cookie = new Cookie(cookieName, cookieName);
} else {
cookie = new Cookie(cookieName, userIp);
}
cookie.setMaxAge(3600 * 24);
response.addCookie(cookie);
}
分享到:
相关推荐
基于javaWeb MVC模式,借助struts2框架编写,实现用户简单的注册与登录功能。 1.本demo严格按照MVC的分层模式采用myeclipse编写,可直接运行,服务器为tomcat,数据库为mysql。 2.数据库操作使用c3p0连接池和dbtuils...
Struts2是一个强大的MVC(模型-视图-控制器)框架,它在Java Web开发中被广泛应用,尤其在处理复杂的业务逻辑和用户交互时。在这个项目"struts2实现用户登录注册"中,我们将深入探讨如何利用Struts2在Eclipse开发...
本文将深入探讨如何利用Struts2来实现用户登录功能,这对于任何Web应用来说都是基础且至关重要的部分。 首先,要理解Struts2的工作原理。Struts2框架的核心是Action类,它处理来自用户的请求,并通过...
Struts2是一个强大的MVC(Model-View-Controller)框架,它在Java Web开发中被广泛应用,用于构建可维护性和可扩展性高的企业级应用程序。本文将深入探讨如何使用Struts2来实现用户管理功能,包括用户的增删改查、...
在Struts2中实现自动登录功能,通常涉及到利用Cookie来保存用户登录状态,以便在用户再次访问时能够快速恢复其身份。这个过程涉及到几个关键步骤,包括登录处理、Cookie的创建与设置、过滤器的配置以及在请求处理...
- Struts2的拦截器或自定义过滤器会检测到这个Cookie,读取其值并解密。 - 检查解密后的Token是否存在于服务器的Session中。如果存在,说明该用户已经通过了身份验证,可以直接跳转到主页面,实现自动登录效果;...
总的来说,"基于Struts2的用户权限管理"涉及到Web应用开发中的核心安全机制,结合Mysql数据库,为用户提供了一个安全、灵活的访问控制系统。通过理解并实现这些组件,开发者可以构建出能满足企业级需求的复杂权限...
4. **保存到session**:将生成的验证码字符串保存到用户的session中,以便后续验证。 在Struts2框架中,我们可以创建一个Action类,该类负责处理生成验证码的请求,如`GenerateVerificationCodeAction`。这个Action...
通常,会有一个execute方法,该方法接收表单提交的数据,进行数据校验,然后保存到数据库。例如: ```java public class UserRegisterAction { private User user; // User对象用来存储用户信息 // getters and ...
- **适用范围**:Struts2广泛应用于企业级Java Web项目的开发中,特别是那些需要处理大量用户交互和数据展示的应用。 #### 二、Struts2入门案例 - **Hello Struts2**:通过创建一个简单的“Hello World”示例,...
3. 高效性:Struts2 框架提供了一个高效的架构,可以快速地处理用户的请求。 Struts2 框架的应用场景 Struts2 框架的应用场景包括: 1. 企业级应用程序:Struts2 框架适用于开发大型的企业级应用程序。 2. 电子...
1. OGNL(Object-Graph Navigation Language)表达式注入:这是Struts2最著名的漏洞类型,由于框架在处理用户输入时没有进行充分的过滤和验证,攻击者可以通过构造恶意的OGNL表达式来执行任意代码,从而导致远程代码...
8. **表单处理**:Struts2提供了强大的表单处理能力,可以自动绑定请求参数到Action的属性,实现数据验证,并将错误信息回显到页面。 9. **异常处理**:Struts2通过全局异常映射(Global Exception Mapping)来统一...
5. **结果(Result)**:当用户提交表单后,Struts2会根据Action的结果类型(比如success、error)跳转到相应的页面。如果验证失败,可能会重定向到错误页面;成功则可能跳转到登录页面或者显示注册成功的消息。 6....
Action是Struts2中的核心组件,负责处理用户的请求,执行业务逻辑,并返回结果到视图。Action类需要继承自Struts2提供的基类或实现特定接口,如`ActionSupport`。 **六、路径问题的说明** Struts2通过Action和...
Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试...
Struts2+Hibernate用户注册管理系统是一个基于Java技术的Web应用程序,它整合了两个强大的开源框架:Struts2作为MVC(Model-View-Controller)框架,用于处理业务逻辑和控制流程,而Hibernate作为对象关系映射(ORM...
Struts2是一个强大的Java web应用程序开发框架,它基于Model-View-Controller(MVC)设计模式,旨在简化创建用户交互式、数据驱动的web应用的过程。这个“Struts2接口文档”是开发者的重要参考资料,提供了关于...
Struts2是一个强大的MVC(Model-View-Controller)框架,广泛应用于Java Web开发中,为开发者提供了构建可维护、可扩展的Web应用程序的高效工具。在这个“struts2登录注册简单实现”的项目中,我们将深入探讨Struts2...
- **自动填充**:Struts2 自动从 request 中获取数据并填充到 Action 对象中。 - **原理**:通过拦截器实现,拦截器会查找与 Action 类中的 setter 方法相匹配的请求参数,并调用这些方法填充数据。 **3.3 数据传递...