【JAVA EE#4】【传智书城·源码阅读】首页逻辑:页面头部登陆前后不同状态+分类显示图书+搜索查询图书+轮播图+本周热卖推荐+公告展示

本文详细介绍了Java EE应用中首页的逻辑实现,包括登录状态对头部信息的影响,如登录前后显示的区别;图书分类的展示逻辑,依赖于特定的查询参数;搜索图书功能,处理搜索框的输入,通过后台服务进行查询;轮播图的实现,涉及CSS和JS;公告的展示,从数据库获取最新公告内容;以及本周热卖推荐的逻辑,可能存在的问题及数据库查询方法。
摘要由CSDN通过智能技术生成

主要逻辑:
在这里插入图片描述

页面头部登陆前后不同状态
登陆前后主要区别体现在首页的头部:
登录前,右上角最后一个为新用户注册,下面并无登陆者信息:
在这里插入图片描述
登陆后,右上角最后一个为退出登录,下面同时显示登陆者信息:
在这里插入图片描述
jsp中实现原理:

<% 
User user = (User) request.getSession().getAttribute("user");
if(null == user){
   
%>
| <a href="${pageContext.request.contextPath}/client/register.jsp">新用户注册</a>							
<% 	
}else{
   
%>
| <a href="${pageContext.request.contextPath}/logout" onclick="javascript:return confirm_logout()">用户退出</a>
<br><br><br>欢迎您: ${
   user.username}
<% 	
}
%>		

可见骚气的if语句分开显示不同情况下的页面内容,登陆前显示新用户注册登陆后变为退出登录,onclick属性指向一个自定义函数,弹出一个确认退出的提示,在接受到确定之后才调用LogoutServlet后直接销毁Session。值得注意在Session获取User之前,要导包,不然js中不能识别该类。

<%@ page import="cn.itcast.itcaststore.entity.User"%>

除此之外,视有无登录情况,头部我的账户会有变化,没有登录就会跳转登录界面,已经登陆就会重定向到账户信息页面,除此之外,根据角色的不同,登陆后我的账户也会有不同的目标页面,普通用户跳转至home.jsp,超级用户跳转至myAccount.jsp后台管理页面,这一套逻辑由web.xml映射的MyAccountServlet完成。

<a href="${pageContext.request.contextPath}/myAccount">我的帐户</a>

MyAccountServlet:

//在session中查找名为“user”的会话
		User user = (User) request.getSession().getAttribute("user");
		//如果找到没有名为“user”的会话,说明用户没有登录,此时跳转到登录页面
		if (user == null) {
   
			response.sendRedirect(request.getContextPath() + "/client/login.jsp");
			return;
		}
		//如果是超级用户,进入到网上书城后台管理系统;否则进入到普通用户的账户信息页面
		if ("超级用户".equals(user.getRole())) {
   
			response.sendRedirect(request.getContextPath() + "/admin/login/home.jsp");
//			return;
		}else{
   
			response.sendRedirect(request.getContextPath() + "/client/myAccount.jsp");
//			return;
		}

分类显示图书
menu

传智书城源码是一个基于JavaWeb技术开发的在线图书销售系统。它是传智播客开发的一个实例项目,旨在演示并实践JavaWeb的相关知识。该源码包含了前后端的代码和数据库设计,并提供了完整的功能。 首先,传智书城源码搭建了一个用户友好的网站界面,用户可以浏览和搜索图书,查看图书的详细信息,包括作者、出版日期、价格等。同时,用户可以将心仪的图书加入购物车,方便后续购买。此外,源码还实现了用户注册和登录功能,用户可以创建自己的账号,随时登录以便管理个人信息和订单。 其次,传智书城源码实现了网上购物的核心功能,包括购物车管理和订单管理。用户可以查看和修改购物车的内容,包括增加和删除图书,同时还可以修改购买数量。用户下单后,源码会生成订单,并提供订单管理功能,例如查看订单详情、取消订单等。传智书城源码还提供了支付功能,用户可以通过网上支付方式完成订单支付。 除了用户功能之外,传智书城源码还包含了管理后台的功能。管理员可以登录管理后台,对图书信息和订单进行管理和操作。管理员可以添加、删除和修改图书信息,包括图书分类、库存、价格等。同时,管理员还可以查看和处理用户的订单,例如发货和退款等操作。 总的来说,传智书城源码是一个完整的、具有一定规模的JavaWeb项目,涵盖了用户前台和管理员后台的功能需求,实现了图书销售的各种操作,为学习和实践JavaWeb开发提供了良好的参考和示例。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值