本资源主要围绕Java EE第12章中的"会话对象session"展开讲解。在Java EE开发中,会话对象(session)是一个关键概念,用于处理客户端与服务器之间的状态管理。由于HTTP本身是无状态的(stateless),这意味着每次客户端发起请求时,服务器无法直接记住之前的信息。因此,session机制应运而生。 在JSP开发过程中,session对象的生命周期贯穿整个用户的会话期间,即从用户首次访问并打开浏览器连接到服务器,直到用户关闭浏览器离开为止。每个用户访问服务中的多个页面时,虽然每次请求都会创建新的request和response对象,但session对象始终保持唯一,确保信息在页面间共享。 session的主要作用是存储客户端状态信息,例如在线购物中的用户信息、购物车数据等。它由服务器创建并写入,存储在客户端的cookie中,这样即使用户在不同页面或关闭浏览器后重新访问,服务器仍能通过cookie读取session来获取先前保存的信息。 创建和使用session的过程包括以下步骤: 1. 当用户首次访问时,JSP引擎为用户创建一个新的session对象,并分配一个唯一的String类型id,这个id被保存在客户端的cookie中。 2. 在后续的JSP页面中,通过HttpServletRequest的getSession()方法获取当前请求的session对象。若session尚未存在,可以通过设置为true强制创建一个。 需要注意的是,由于session依赖于cookie,如果用户禁用了cookie或者cookie过期,session可能会失效,这时开发者需要妥善处理这种情况,以避免丢失用户信息。 理解并熟练运用session对象是Java EE开发中至关重要的部分,尤其是在构建需要保持用户状态的Web应用时,它能够提供高效且灵活的数据持久化方式。
d?fileid=aaa9aee4717d33272bd7ea028fa03118b693919f23b18febf9f6cee1158e8f4cf027542c71c8cf98d63770ccdf3bd1750e6b92e28c43dccd4" />
1 | 1 |
2 | 2 |
3 | 3http://localhost:8080/wui/index.html#/main/portal/portal-1-1?menuIds=0,1&menuPathIds=0,1&_key=zq8830 |
测试http://localhost:8080/wui/index.html#/main/portal/portal-1-1?menuIds=0,1&menuPathIds=0,1&_key=zq8830
修改一下吧 qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
标签里的》
<!DOCTYPE html> <html> <head> <title>登录界面</title> <meta charset="utf-8" /> <title></title> </head> <style> input[type="text"], input[type="password"] { display: block; width: 5%; padding: 10px; margin-bottom: 20px; border-radius: 5px; border: 1px solid #ccc; font-size: 1.2em; } body{ background: url(image/java.jpg) top left; width: 10240px; height: 5120px; background-attachment: fixed; background-repeat: no-repeat; background-size: 100%; } 00 input[type="submit"] { background-color: Transparent; color: #abc1ee; padding: 10px 20px; border-radius: 5px; border: none; font-size: 1.2em; cursor: pointer; } a { text-decoration-line: none; color: #abc1ee; } </style> <body> Welcome to Login
Login <input type="text" name="username" placeholder="username" id="username"> <input type="password" name="password" placeholder="password" id="password"> <input type="submit" value="Login" onclick="validate()"> Don't have account? Sign up <script> // 定义全局变量 var usernameInput = document.getElementById("username"); var passwordInput = document.getElementById("password"); var errorCount = 0; function validate() { // 定义局部变量 var username = usernameInput.value; var password = passwordInput.value; // switch...case语句 switch (username) { case "": alert("用户名不能为空"); errorCount++; break; case "admin": if (password === "admin") { alert("登录成功"); } else { alert("密码错误"); errorCount++; } break; default: alert("用户名不存在"); errorCount++; break; } // for...in语句 for (var i in username) { if (username[i] === " ") { alert("用户名不能包含空格"); errorCount++; break; } } // if语句 if (password === "") { alert("密码不能为空"); errorCount++; } // 调用函数 displayError(); if (errorCount >= 3) { alert("错误次数过多,请稍后再试"); window.location.reload(); } } function displayError() { // 获取元素 var container = document.querySelector(".container"); // 创建元素节点 var errorDiv = document.createElement("div"); errorDiv.innerHTML = "输入有误,请重新输入"; errorDiv.style.color = "red"; // 对子节点的操作 container.appendChild(errorDiv); setTimeout(function() { container.removeChild(errorDiv); }, 3000); } </script> </body> </html>对这个界面进行优化,添加标签
Welcome to Login
d?fileid=aaa9aee4717d33272bd7ea028fa03118b693919f23b18febf9f6cee1158e8f4cf027542c71c8cf98d63770ccdf3bd1750e6b92e28c43dccd4" />
1 | 1 |
2 | 2 |
3 | 3http://localhost:8080/wui/index.html#/main/portal/portal-1-1?menuIds=0,1&menuPathIds=0,1&_key=zq8830 |
测试http://localhost:8080/wui/index.html#/main/portal/portal-1-1?menuIds=0,1&menuPathIds=0,1&_key=zq8830
修改一下吧 qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
- 粉丝: 23
- 资源: 2万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 最优条件下三次B样条小波边缘检测算子研究
- 深入解析:wav文件格式结构
- JIRA系统配置指南:代理与SSL设置
- 入门必备:电阻电容识别全解析
- U盘制作启动盘:详细教程解决无光驱装系统难题
- Eclipse快捷键大全:提升开发效率的必备秘籍
- C++ Primer Plus中文版:深入学习C++编程必备
- Eclipse常用快捷键汇总与操作指南
- JavaScript作用域解析与面向对象基础
- 软通动力Java笔试题解析
- 自定义标签配置与使用指南
- Android Intent深度解析:组件通信与广播机制
- 增强MyEclipse代码提示功能设置教程
- x86下VMware环境中Openwrt编译与LuCI集成指南
- S3C2440A嵌入式终端电源管理系统设计探讨
- Intel DTCP-IP技术在数字家庭中的内容保护