目录结构

  类包:

  • AccountBean.java
  • AccountDao.java
  • JudgeServlet.java

  登陆界面:

  • index.jsp

代码实现

AccountBean.java

package login;

public class AccountBean {
String account;
String password;
String type; public String getAccount() {
return account;
} public void setAccount(String account) {
this.account = account;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
} public String getType() {
return type;
} public void setType(String type) {
this.type = type;
}
}

AccountDao.java

package login;

import dao.Con_CloseSql;
import java.sql.*; public class AccountDao { public AccountBean checkAccount(String user, String password) throws Exception {
Connection connect = new Con_CloseSql().getConnect();
Statement stat = connect.createStatement();
String sql = "select * from account where account = '" + user + "' and password = '" + password + "'";
ResultSet rs = stat.executeQuery(sql);
AccountBean accountBean = new AccountBean();
if (rs.next()){ accountBean.setAccount(rs.getString("account"));
accountBean.setPassword(rs.getString("password"));
accountBean.setType(rs.getString("type"));
}
Con_CloseSql.closeConnection(connect);
return accountBean;
} }

JudgeServlet.java

package login;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException; public class JudgeServlet extends HttpServlet { @Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("utf-8");
resp.setCharacterEncoding("utf-8");
resp.setContentType("text/html;utf-8"); String account = req.getParameter("account");
String password = req.getParameter("password");
String type = req.getParameter("type"); AccountDao dao = new AccountDao();
try {
AccountBean bean = dao.checkAccount(account, password);
String type1 = bean.getType();
if(type1.equals(type))
{
if(type.equals("学生"))
req.getRequestDispatcher("stuhome.jsp").forward(req,resp);
if(type.equals("教师"))
req.getRequestDispatcher("teahome.jsp").forward(req,resp);
if(type.equals("管理员"))
req.getRequestDispatcher("Adminhome.jsp").forward(req,resp);
}
} catch (Exception e) {
resp.getWriter().print("<script>alert(\"账号或用户名出错\"); </script>");
} } @Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}

index.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body> <form method="post" action="judge">
账号:<input type="text" name="account"><br>
密码:<input type="password" name="password"><br>
用户类型:
<select name="type">
<option value="学生" name="xuesheng">学生</option>
<option value="教师" name="jiaoshi">教师</option>
<option value="管理员" name="guanliyuan">管理员</option>
</select><br>
<input type="submit" value="登陆">
</form> </body>
</html>

数据库表结构为

其中account与password是用户密码

type是该用户类型

如果全部匹配就可进入对应界面

javaweb登陆界面实现不同角色进入不同界面的更多相关文章

  1. RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->WinForm版本新增新的角色授权管理界面效率更高、更规范

    角色授权管理模块主要是对角色的相应权限进行集中设置.在角色权限管理模块中,管理员可以添加或移除指定角色所包含的用户.可以分配或授予指定角色的模块(菜单)的访问权限.可以收回或分配指定角色的操作(功能) ...

  2. RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->Web版本新增新的角色授权管理界面效率更高、更规范

    角色授权管理模块主要是对角色的相应权限进行集中设置.在角色权限管理模块中,管理员可以添加或移除指定角色所包含的用户.可以分配或授予指定角色的模块(菜单)的访问权限.可以收回或分配指定角色的操作(功能) ...

  3. JavaWeb连接SQLServer数据库并完成一个登录界面及其功能设计。

    一.JDBC连接SQLserver数据库的步骤: 1.下载SQLserver的JDBC驱动文件——Microsoft JDBC Driver 4.0 for SQL Server 2.例如下载得到的文 ...

  4. 扩展BindingList,防止增加、删除项时自动更新界面而不出现“跨线程操作界面控件 corss thread operation”异常

    在做界面程序时,常常需要一些数据类,界面元素通过绑定等方式显示出数据,然而由于UI线程不是线程安全的,一般都需要通过Invoke等方式来调用界面控件.但对于数据绑定bindingList而言,没法响应 ...

  5. BCG界面库下的Windows8 UI界面样式www.webui8.com

    BCG界面库下的Windows8 UI界面样式(Metro风格)控件主要有以下一些功能: 规则的大块磁贴 支持完整键盘导航 Tile组 标题(Caption) 标题按钮(Caption buttons ...

  6. 告诉你吧,一套皮肤在winform与wpf开发模式下实现的界面效果同样精彩,winform界面和wpf界面。

    一.同一资源: 二.先上软件界面: (1)wpf界面: 在wpf中实现这样类似web风格的软件界面就不用我多说了,在wpf实现这样的风格是很简单的,完全像网页设计一样的. (2)winform界面 在 ...

  7. 参考_Android中,如何新建一个界面,并且实现从当前界面切换到到刚才新建的(另外一个)界面

    参考地址: http://www.crifan.com/android_how_to_create_new_ui_and_switch_to_another_new_ui/ 想要实现,在Android ...

  8. 界面编程模仿篇(QQ登录界面逼真篇)

    写了好多天的爬虫,偷空前前后后用了两天的时间(排除吃饭睡觉)写完了这个QQ登录界面,看起来还凑和着吧,如果是的大神的,莫见笑,纯属业余作品,废话先不多说,截图如下,其中第二幅图片中的红色方框部份有待完 ...

  9. Android原生和H5交互;Android和H5混合开发;WebView点击H5界面跳转到Android原生界面。

    当时业务的需求是这样的,H5有一个活动商品列表的界面,IOS和Android共用这一个界面,点击商品可以跳转到Android原生的商品详情界面并传递商品ID:  大概就是点击H5界面跳转到Androi ...

随机推荐

  1. c++设计模式概述之适配器

    类写的不规范(应该屏蔽类的拷贝构造函数和运算符=).少写点代码,缩短篇幅,重在理解. 实际中可不要这样做. 类比生活中的手机,pad等电源适配器. 简单来讲: 将原本  不匹配  的两者  变的匹配  ...

  2. 【LeetCode】1408. 数组中的字符串匹配 String Matching in an Array

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 暴力遍历 日期 题目地址:https://leetco ...

  3. 【LeetCode】281. Zigzag Iterator 解题报告 (C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 deque 日期 题目地址:https://leetc ...

  4. 1281 - New Traffic System

    1281 - New Traffic System   PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 ...

  5. 1382 - The Queue

    1382 - The Queue   PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 MB On som ...

  6. [object_detect]使用MobileNetSSD进行对象检测

    使用MobileNetSSD进行对象检测 1.单帧图片识别 object_detection.py # 导入必要的包 import numpy as np import argparse import ...

  7. dart系列之:dart代码最佳实践

    目录 简介 命名规则 import中的顺序 格式化 总结 简介 每种语言都有自己的代码风格,这种代码风格是跟语言特性息息相关的.如果在编码的过程中遵循这种统一的编码规则,会给我们的业务带来非常多的便利 ...

  8. 【】Hadoop生态圈介绍

    Technorati 标记: hadoop,生态圈,ecosystem,yarn,spark,入门 1. hadoop 生态概况 Hadoop是一个由Apache基金会所开发的分布式系统基础架构. 用 ...

  9. Centos下查看cpu核数

    1.概念物理CPU:实际Server中插槽上的CPU个数.物理cpu数量:可以数不重复的 physical id 有几个. 2.逻辑CPULinux用户对 /proc/cpuinfo 这个文件肯定不陌 ...

  10. Docker_创建自定义镜像(5)

    生成docker镜像有两种方式 使用已有容器生成镜像 使用dockerfile生成镜像 一.使用已有容器生成镜像 1.下载centos镜像,并创建容器 2.进入容器部署python环境 centos镜 ...