关于分级自测题,我们知道该系统一共分为两个角色,一个是读者,一个是管理员,我们需要根据不同用户去到不同的页面,所以我们需要写一个登陆界面。


本文先写这个功能的实现,该功能主要在servlet里面实现。

一.先写jsp页面

<%@ page language="java" contentType="text/html; charset=UTF-8"//denglu.jsp
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>图书管理系统:登陆界面</title>
</head>
<body>
<%
Object message = request.getAttribute("message");
if(message!=null && !"".equals(message)){ %>
<script type="text/javascript">
alert("<%=request.getAttribute("message")%>");
</script>
<%} %> <%
Object message1 = request.getAttribute("message1");//显示注册成功(下一篇博客)
if(message1!=null && !"".equals(message1)){ %>
<script type="text/javascript">
alert("<%=request.getAttribute("message1")%>");
</script>
<%} %>
<form action="login_servlet?method=login" method="post">
<table align="center" border="1" width="500">
<tr>
<td>账号: </td>
<td>
<input type="text" name="studentid" id="studentid" />
</td>
</tr>
<tr>
<td>密码: </td>
<td>
<input type="password" name="password"/> </td>
</tr>
<tr>
<td>身份: </td>
<td>
<select name="form">//这里传值给servlet
<option value="读者"selected>读者</option>
<option value="管理员"selected>管理员</option>
</select>
</td>
</tr>
<tr align="center">
<td colspan="2">
<input type="submit" value="登录" onclick="return judge()" />
<a href="zhuce.jsp" >点击注册</a> </td>
</tr>
</table>
</body>
</html>

reader.jsp//读者功能

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="Bean.*,java.util.ArrayList,util.*,dao.*,servlet.*"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<a href="book_servlet?method=looklist" ><h3>浏览图书信息</h3></a>
<a href="goodbook1.jsp" ><h3>查询图书信息</h3></a>
<a href="book_servlet?method=delist" ><h3>借阅图书</h3></a>
<a href="book_servlet?method=borrowlist&borrower=<%=good.getStudentid()%>"><h3>浏览催还书目</h3></a>
<a href="book_servlet?method=cuihuan" ><h3>归还图书</h3></a>
</body>
</html>

genlist.jsp//管理员功能

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="Bean.*,java.util.ArrayList,util.*,dao.*,servlet.*"%>
<html>
<head>
<meta charset="UTF-8">
<title>管理员界面</title>
</head>
<body>
<a href="addstudent.jsp" ><h3>添加读者信息</h3></a>
<a href="addbook.jsp" ><h3>添加新书信息</h3></a>
<a href="update.jsp" ><h3>打印催还书信息</h3></a>
</body>
</html>

二.servlet层

package servlet;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession; import Bean.xinxi;
import dao.dao;
import daoimpl.daoimpl; /**
* Servlet implementation class login_servlet
*/
@WebServlet("/login_servlet")
public class login_servlet extends HttpServlet {
private static final long serialVersionUID = 1L;
dao gooddao=new daoimpl();
/**
* @see HttpServlet#HttpServlet()
*/
public login_servlet() {
super();
// TODO Auto-generated constructor stub
} /**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doPost(request, response);
} /**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8"); String method=request.getParameter("method");
String form=request.getParameter("form");//获取来自denglu.jsp里面的数据if("login".equals(method)) { //通过判断语句进入不同页面if(form.equals("读者"))request.getRequestDispatcher("reader.jsp").forward(request, response);
else if(form.equals("管理员"))request.getRequestDispatcher("genlist.jsp").forward(request, response);
}
}

三.运行结果


这里只是一个前端页面,没有与数据库打交道,下一篇写验证账号密码是否正确,需要实现注册功能,连接数据库。


喜欢就点点关注吧!!!

javaweb图书管理系统之不同用户跳转不同页面的更多相关文章

  1. JavaWeb 图书管理系统

    查看更多系统:系统大全,课程设计.毕业设计,请点击这里查看 01 系统简述 图书管理系统就是利用计算机,结合互联网对图书进行结构化.自动化管理的一种软件,来提高对图书的管理效率. 02 系统特点 集成 ...

  2. 基于jsp+servlet图书管理系统之后台用户信息查询操作

    上一篇的博客写的是插入操作,且附有源码和数据库,这篇博客写的是查询操作,附有从头至尾写的代码(详细的注释)和数据库! 此次查询操作的源码和数据库:http://download.csdn.net/de ...

  3. 基于jsp+servlet图书管理系统之后台用户信息修改操作

    上一篇的博客写的是查询操作,且附有源码和数据库,这篇博客写的是修改操作,附有从头至尾写的代码(详细的注释)和数据库! 此次修改操作的源码和数据库:http://download.csdn.net/de ...

  4. 基于jsp+servlet图书管理系统之后台用户信息插入操作

    前奏: 刚开始接触博客园写博客,就是写写平时学的基础知识,慢慢发现大神写的博客思路很清晰,知识很丰富,非常又价值,反思自己写的,顿时感觉非常low,有相当长一段时间没有分享自己的知识.于是静下心来钻研 ...

  5. 基于jsp+servlet图书管理系统之后台用户信息删除操作

    上一篇的博客写的是修改操作,且附有源码和数据库,这篇博客写的是删除操作,附有从头至尾写的代码(详细的注释)和数据库! 此次删除操作的源码和数据库:http://download.csdn.net/de ...

  6. 项目:《JavaWeb图书管理系统视频》--代码修复还可以运行起来

    1. 系统设计--项目效果图请看最后面 1技术选型 (系统架构) JSTL + JSP + Servlet + JavaBean + BeanUtils + FileUpload + JavaMail ...

  7. javaweb图书管理系统之账号密码验证登录

    验证账号与密码是否正确功能 一.注册功能 首先,在验证账号与密码是否正确的前提下的,需要先注册一个账号,如果没有账号,就会进不去,也无法验证. 其实,注册功能就是一个添加的功能,仿照我的第一篇文章,往 ...

  8. 作业六—图书管理系统(SPEC)系统性能评估测试

    一.图书管理系统的典型用户和场景: 该系统是为各类学校图书馆和社会各大图书馆和书店管理者使用的图书管理系统.但是我们还是已北京工业大学耿丹学院图书馆为典型用户进行主要设计的! 二.SPEC测试的目标: ...

  9. 【WPF on .NET Core 3.0】 Stylet演示项目 - 简易图书管理系统(3) - 使用Conductor切换页面

    前两章中, 我们已经实现了这个图书管理系统的登录窗口, 并实施了完善的单元测试. 该是时候回过头来关注我们的主窗口了. 一个功能丰富的系统一般会有多个页面, 我们图书管理系统虽然是"简易&q ...

随机推荐

  1. Objective-C 基础教程第六章,源文件组织

    目录 Object-C 基础教程第六章,源文件组织 0x00:前言 0x01:Xcode创建OC类 0x02:Xcode群组 0x03 Xcode跨文件依赖关系 @class关键字 导入和继承 小结 ...

  2. [2022-2-18] OICLASS提高组模拟赛2 A·整数分解为2的幂

    题目链接 问题 A: 整数分解为 2 的幂 题目描述 任何正整数都能分解成 2 的幂,给定整数 N,求 N 的此类划分方法的数量!由于方案数量较大,输出 Mod 1000000007 的结果. 比如 ...

  3. 关于 vue2.x 的 $attrs 和 $listeners

    $attrs $attrs 用于多层次组件传递参数(组件标签的attribute,class和style除外),爷爷辈组件向孙子辈组件传递参数(注:参数不能被父辈prop识别,一旦被父辈prop识别且 ...

  4. 二级py--day2

    二级py day2-3 1.进程至少活动情况分为:运行状态.就绪状态.等待状态(阻塞状态).创建状态.终止状态 2.进程的特性包括: 并发性和动态性 3.计算机地址位数决定了内存的最大容量,决定了虚拟 ...

  5. MariaDB 与Mysql版本对应关系

    特定MariaDB版本的完全兼容性 就InnoDB而言,MariaDB 10.2.MariaDB 10.3和MariaDB 10.4是MySQL 5.7的有限替代.然而,在每一个新的MariaDB版本 ...

  6. 怎么做 HDFS 的原地平滑缩容?

    背景 当数据规模越来越大,存储成本也水涨船高.随着时间推移,数据热度分布往往呈 2⁄8 原则,即 80% 的访问集中在 20% 的数据上.对于那不经常访问的 80% 数据来说,使用多个 SSD 来存储 ...

  7. 『现学现忘』Docker常用命令 — 21、容器常用命令(三)

    目录 13.进入正在运行的容器并以命令行交互 (1)方式一 (2)方式二 (3)attach和exec的区别 14.从容器内拷贝文件到主机上 15.Docker常用命令小结 (1)容器生命周期管理 ( ...

  8. LGP3311题解

    为什么我和同学对比了一下,发现我和他的做法差别很大啊 对于这种问题,我们把整个字符串分为两个部分:前缀顶着最高位和后缀没有顶着最高位. 我们枚举这个前缀,然后后缀通过 DP 来搞定. 不包含任何一个子 ...

  9. knative入门指南

    尽管Knative自2018年以来一直由社区维护,但最近一直有关于该项目的传言,因为谷歌最近将Knative提交给了云原生计算基金会(CNCF),作为一个孵化项目考虑. 太酷了!但Knative到底是 ...

  10. Ansible的原理与配置

    镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 Ansible原理 Ansible 是一款开源自动化平台.它是一种简单的自动化语言,能够在Ansible Playbook 中完美地描述 IT 应 ...