JSP、Servlet实战:团队开发新闻系统(五)导航动态变换
2017-01-06 21:24
471 查看
所谓动态变换就是,
效果:
用户没有登录时显示“登录”、“注册”按钮,
登录之后就显示用户中心之类的,不再显示“登录”、“注册”。
整体思路就是根据cookie中存储的用户id查询session中是否有当前用户的信息,如果有,说明用户已经登录,如果没有,说明用户还没有登录,然后根据情况显示不同的html样式。
效果:
用户没有登录时显示“登录”、“注册”按钮,
登录之后就显示用户中心之类的,不再显示“登录”、“注册”。
整体思路就是根据cookie中存储的用户id查询session中是否有当前用户的信息,如果有,说明用户已经登录,如果没有,说明用户还没有登录,然后根据情况显示不同的html样式。
header.jsp
<%@page import="cn.edu.bzu.group12.orangenews.bean.User"%> <%@page import="org.apache.log4j.Logger"%> <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!-- header-section-starts --> <div class="header"> <div class="container"> <div class="logo"> <a href="ShowAllServlet"> <img alt="OrangeNews" src="static/images/logo.gif" height="40px"> </a> </div> <div class="pages"> <ul> <li><a class="active" href="ShowAllServlet">首页</a></li> <li><a>版块</a></li> <li><a href="404.jsp">论坛</a></li> </ul> </div> <div class="navigation"> <ul> <% Cookie user_id = null; try{ Cookie[] cookies = request.getCookies(); System.out.println("获取了Cookies!"); //获取cookie if(cookies!=null){ for(int i =0;i<cookies.length;i++){ if(cookies[i].getName().equals("loginuser")){ user_id = cookies[i]; System.out.println("获取到了用户Cookies!"+user_id.getValue()); } } } }catch(Exception e) { System.out.println("没有获取到cookie"); request.getRequestDispatcher("/").forward(request, response); } try{ System.out.println("正在查看是否有此用户"); //判断服务器端session是否存在当前用户id User current_user = (User)session.getAttribute(user_id.getValue()); if(current_user!=null){ System.out.println("获取到了用户session"); %> <li><a href="usercenter"><%=current_user.getUser_name() %></a></li> <li><a href="mymessage.jsp">我的消息</a></li> <li><a class="active" href="logout">退出</a></li> <% }else{ %> <li><a href="login.jsp">登录</a></li> <li><a href="register.jsp">注册</a></li> <% } }catch(Exception e){ %> <li><a href="login.jsp">登录</a></li> <li><a href="register.jsp">注册</a></li> <% } System.out.println("离开header!"); %> </ul> </div> <div class="clearfix"></div> </div> </div>
相关文章推荐
- JSP、Servlet实战:团队开发新闻系统(二)团队分工
- JSP、Servlet实战:团队开发新闻系统(三)架构简介
- JSP、Servlet实战:团队开发新闻系统(七)腾讯新闻爬虫
- JSP、Servlet实战:团队开发新闻系统(六)类似ThinkPHP的中转页
- JSP、Servlet实战:团队开发新闻系统(四)页面布局
- JSP、Servlet实战:团队开发新闻系统(一)总述
- 使用JSP/Servlet技术开发新闻发布系统
- 【S2第二学期-使用JSP/Servlet技术开发新闻发布系统】全书知识点总结
- 教案:《开发基于JSPServletJavaBean的网上交易系统》第8章 View层开发:EL和JSTL
- 基于JSP+SERVLET的新闻发布系统(一)
- JAVA_WEB项目(结合Servlet+jsp+ckEditor编辑器+jquery easyui技术)实现新闻发布管理系统第一篇:前期环境准备
- JAVA_WEB项目(结合Servlet+jsp+ckEditor编辑器+jquery easyui技术)实现新闻发布管理系统第四篇:前台首页,新闻分类(体育新闻,科技新闻等),新闻列表分页的实现
- 使用JSP/Servlet开发系统-课程复习试卷测试分析1
- JAVA_WEB项目(结合Servlet+jsp+ckEditor编辑器+jquery easyui技术)实现新闻发布管理系统第二篇:登陆和注销功能实现
- 教案:《开发基于JSPServletJavaBean的网上交易系统》第7章 View层开发,JavaBean在JSP中的使用
- JSP新闻系统之八 Servlet
- 国内首部基于JBPM5.4实战流程引擎开发(动态表单、模板引擎、公文管理系统)
- 基于JSP+SERVLET的新闻发布系统(二)
- 使用JSP/Servlet开发系统-课程复习试卷测试分析2
- 基于JSP+SERVLET的新闻发布系统(一)