javaEE8(数据库编程课后习题1,2)

一:

二:

数据库内信息:

登录:

注册:

Register.jsp

<%@ page    pageEncoding="UTF-8" import="java.sql.*"%>

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta name="renderer" content="webkit">

    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">

    <title>注册页</title>

    <link rel="stylesheet" href="layui/css/layui.css">

    <link rel="stylesheet" href="css/style.css">

    <link rel="icon" href="image/code.png">

</head>

<body>

<div class="login-main">

    <header class="layui-elip" style="width: 82%;">注册页</header>

    <!-- 表单选项 -->

    <form action="Cregister.jsp" class="layui-form" id="form1" method="post">

        <div class="layui-input-inline">

            <!-- 用户名 -->

            <div class="layui-inline" style="width: 85%">

                <input type="text" id="username" name="username"    placeholder="请输入用户名" autocomplete="off" class="layui-input">

            </div>

            <!-- 对号 -->

            <div class="layui-inline">

                <i class="layui-icon" id="ri" style="color: green;font-weight: bolder;" hidden></i>

            </div>

            <!-- 错号 -->

            <div class="layui-inline">

                <i class="layui-icon" id="wr" style="color: red; font-weight: bolder;" hidden></i>

            </div>

        </div>

            <!-- 密码 -->

        <div class="layui-input-inline">

            <div class="layui-inline" style="width: 85%">

                <input type="password" id="password" name="password"   lay-verify="required" placeholder="请输入密码" autocomplete="off" class="layui-input">

            </div>

            <!-- 对号 -->

            <div class="layui-inline">

                <i class="layui-icon" id="pri" style="color: green;font-weight: bolder;" hidden></i>

            </div>

            <!-- 错号 -->

            <div class="layui-inline">

                <i class="layui-icon" id="pwr" style="color: red; font-weight: bolder;" hidden></i>

            </div>

        </div>

            <!-- 确认密码 -->

        <div class="layui-input-inline">

            <div class="layui-inline" style="width: 85%">

                <input type="password" id="password1" name="password1" required  lay-verify="required" placeholder="请确认密码" autocomplete="off" class="layui-input">

            </div>

            <!-- 对号 -->

            <div class="layui-inline">

                <i class="layui-icon" id="rpri" style="color: green;font-weight: bolder;" hidden></i>

            </div>

            <!-- 错号 -->

            <div class="layui-inline">

                <i class="layui-icon" id="rpwr" style="color: red; font-weight: bolder;" hidden></i>

            </div>

        </div>

        <div class="layui-input-inline login-btn" style="width: 85%">

            <button type="submit" lay-submit lay-filter="sub" class="layui-btn" >注册</button>

        </div>

        <hr style="width: 85%" />

        <p style="width: 85%;text-align:center"><a href="login.jsp">已有账号?立即登录</a></p>

     

</body>

</html>

Login.jsp:

<%@ page    pageEncoding="UTF-8" import="java.sql.*"%>

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>登录页</title>

    <link rel="stylesheet" href="layui/css/layui.css">

    <link rel="stylesheet" href="css/style.css">

 

</head>

<body>

<div class="login-main">

    <header class="layui-elip">登录</header>

    <form action="check.jsp" class="layui-form" method="post" id="form1">

        <div class="layui-input-inline">

            <input type="text" name="username" id="username"  lay-verify="required" placeholder="用户名" autocomplete="off"

                   class="layui-input">

        </div>

        <div class="layui-input-inline">

            <input type="password" name="password" id="password"  lay-verify="required" placeholder="密码" autocomplete="off"

                   class="layui-input">

        </div>

        <div class="layui-input-inline login-btn">

            <button  lay-submit lay-filter="login" class="layui-btn" type="submit">登录</button>

        </div>

        <hr/>

        <p style="text-align:center"><a  href="register.jsp">立即注册</a></p>

    </form>

</div>

</body>

</html>

Check.jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<%@ page import="java.sql.*" %>

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Insert title here</title>

</head>

<body>

<jsp:useBean id="db" class="web1.User" scope="page"/>

<%

  request.setCharacterEncoding("UTF-8");

  String usernamee=(String)request.getParameter("username");//获取login页面输入的用户名和密码

  String passwordd=(String)request.getParameter("password");

  String sql="select * from student where username="+"'"+usernamee+"'";//定义一个查询语句

  ResultSet rs=db.executeQuery(sql);//执行查询语句

 

  try {

    if(rs.next())

    {

    if(passwordd.equals(rs.getString(2))){

      out.print("<script language='javaScript'> alert('登录成功');</script>");

      response.setHeader("refresh", "0;url=index.jsp");

      }else{

        out.print("<script language='javaScript'> alert('密码错误');</script>");

        response.setHeader("refresh", "0;url=login.jsp");

      }

    }else

    {

      out.print("<script language='javaScript'> alert('用户名错误,请重新输入');</script>");

      response.setHeader("refresh", "0;url=login.jsp");

    }

  } catch (SQLException throwables) {

    throwables.printStackTrace();

  }

 

%>

</body>

</html>

User.java:

package web1;

import java.sql.*;

public class User {

    private String url = "jdbc:mysql://192.168.81.128:3306/student";

    private Connection con = null;

    private Statement stmt = null;

    public User()

    {

    try {

        Class.forName("com.mysql.jdbc.Driver");

        con = DriverManager.getConnection(url,"guest", "guest");

        stmt = con.createStatement();

    }catch (Exception ex) {

            System.out.println(ex.getMessage());

        }

    }

    public int executeUpdate(String s) {

        int result = 0;

        try {

            result = stmt.executeUpdate(s);

            stmt.close();

            con.close();

        } catch (Exception ex) {

        System.out.println(ex.getMessage());

        }

        return result;

    }

    public ResultSet executeQuery(String s) {

        ResultSet rs = null;

        try {

            rs = stmt.executeQuery(s);

        } catch (Exception ex) {

        System.out.println(ex.getMessage());

        }

        return rs;

       

    }

   

}

Cregister.jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<%@ page import="java.sql.*" %>

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Insert title here</title>

</head>

<body>

<jsp:useBean id="db" class="web1.User" scope="page"/>

<%

  request.setCharacterEncoding("UTF-8");

  String username=(String)request.getParameter("username");//获取register页面输入的用户名和密码

  String password=(String)request.getParameter("password");

  String password1=(String)request.getParameter("password1");

 

  if(password.equals(password1)){

      String sql="INSERT INTO student(username,password) VALUES"+"('"+username+"',"+"'"+password+"')";//定义一个插入语句

      db.executeUpdate(sql);//执行插入语句

      response.setHeader("refresh", "0;url=login.jsp");

  }else{

      out.print("<script language='javaScript'> alert('密码错误');</script>");

      response.setHeader("refresh", "0;url=register.jsp");

  }

 

%>

 

</body>

</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/739209.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

未知生,焉知死!小动物S了,如何处理?一个人一生该坚持的几件事——早读(逆天打工人爬取热门微信文章解读)

天地不仁&#xff0c;以万物为刍狗 引言Python 代码第一篇 人民日报 【夜读】一个人一生该坚持的几件事第二篇 人民日报 来了&#xff01;新闻早班车要闻社会政策 结尾 “未知生&#xff0c;焉知死” 曾经视为定数的冰冷生命 在热烈的内心烛照下 应当焕发出滚烫的热情 唯有热爱…

注意力、自注意力和多头注意力的区别

本文作者&#xff1a; slience_me 注意力、自注意力和多头注意力的区别 理解注意力&#xff08;Attention&#xff09;、自注意力&#xff08;Self-Attention&#xff09;和多头注意力&#xff08;Multi-Head Attention&#xff09;之间的区别非常重要&#xff0c;因为它们是自…

[HackMyVm] Quick

kali:192.168.56.104 主机发现 arp-scan -l # arp-scan -l Interface: eth0, type: EN10MB, MAC: 00:0c:29:d2:e0:49, IPv4: 192.168.56.104 Starting arp-scan 1.10.0 with 256 hosts (https://github.com/royhills/arp-scan) 192.168.56.1 0a:00:27:00:00:05 (Un…

nginx禁止国外ip访问

1.安装geoip2扩展依赖 yum install libmaxminddb-devel -y 2.下载ngx_http_geoip2_module模块 https://github.com/leev/ngx_http_geoip2_module.git 3.编译安装 ./configure --add-module/datasdb/ngx_http_geoip2_module-3.4 4.下载最新数据库文件 模块安装成功后,还要…

【阿里云系列】-基于云效构建部署NodeJS项目到ACK

准备工作 01、编写Dockerfile文件可以根据不同的环境&#xff0c;新建不同的Dockerfile文件&#xff0c;比如Dockerfile-PROD # Deliver the dist folder with NginxFROM nginx:stable-alpine ENV LANGC.UTF-8 ENV TZAsia/ShanghaiCOPY dist/ /usr/share/nginx/html COPY ngi…

speexsdp消除回声

speexsdp需要几秒的滤波时间。我测试4-7秒。 GitHub - cpuimage/WebRTC_AECM: Acoustic Echo Canceller for Mobile Module Port From WebRTC 更快的消除 webrtc_aecm 效果: 这是testecho.c样例的程序。 初始化函数&#xff1a; SpeexEchoState *speex_echo_state_init(in…

uniapp开发DAPP钱包应用(一) 环境搭建 Vue+ MetaMask + ABI.json

上几节我们讲了如何通过Java后端完成链上交易、信息查询、以及如何使用web3插件实现开发自测。 这一节&#xff0c;我们来说说前端DAPP的开发实现。 1. MeteMask &#x1fa9c;Java对接&#xff08;BSC&#xff09;币安链 | BNB与BEP20的开发实践&#xff08;三&#xff09;水…

Vue3全家桶 - VueRouter - 【6】导航守卫

导航守卫 查看以下情形&#xff1a; 点击主页链接时&#xff0c;默认情况下可直接进入指定页面&#xff0c;如下图&#xff0c;但是问题是该跳转的界面是需要用户登录后方可访问的&#xff1b; 可设置导航守卫来检测用户是否登录&#xff0c;如果已登录&#xff0c;则进入后台…

华为OD机试 - 模拟数据序列化传输(Java JS Python C C++)

题目描述 模拟一套简化的序列化传输方式,请实现下面的数据编码与解码过程 编码前数据格式为 [位置,类型,值],多个数据的时候用逗号分隔,位置仅支持数字,不考虑重复等场景;类型仅支持:Integer / String / Compose(Compose的数据类型表示该存储的数据也需要编码)编码后数…

四元数(Quaternion)的一些性质

四元数(Quaternion)是用于三维旋转和定向的四部分组成的超复数&#xff0c;超复数简单理解就是比abi这样的复数更复杂的复数&#xff0c;其中abi这样的复数我们也可以叫做二元数&#xff0c;表示复平面的一点&#xff0c;对于熟悉欧拉公式的朋友就知道&#xff0c;也可以看成是…

Sui与数据平台ZettaBlock达成合作,为其公测提供数据

Sui一向以闪电般的速度、无限水平扩展著称&#xff0c;现已迅速成为DeFi活动的重要场所。近期&#xff0c;数据平台ZettaBlock宣布在其开创性的Web3数据平台发布中&#xff0c;选择Sui作为基础集成合作伙伴之一。在ZettaBlock的开放测试版发布之际&#xff0c;构建者和开发者将…

双指针算法练习

27. 移除元素 题目 给你一个数组 nums 和一个值 val&#xff0c;你需要 原地 移除所有数值等于 val 的元素&#xff0c;并返回移除后数组的新长度。 不要使用额外的数组空间&#xff0c;你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑…

JS 事件捕获、事件冒泡、事件委托

js事件机制在开发中可以说时刻使用&#xff0c;例如dom绑定事件、监听其自身事件等。js事件机制有事件捕获、事件冒泡俩种机制&#xff0c;我们分别说下这俩种机制的使用场景。 一、概念 事件捕获顺序如下&#xff1a; window > document > body > div 事件冒泡顺序…

Using WebView from more than one process

关于作者&#xff1a;CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、商业变现、人工智能等&#xff0c;希望大家多多支持。 未经允许不得转载 目录 一、导读二、概览三、问题过程源码追踪…

【C++进阶】C++继承概念详解

C继承详解 一&#xff0c;继承的概念和定义1.1 继承的概念1.2 继承的定义1.3 继承关系和访问限定符 二&#xff0c;基类和派生类的对象赋值转移三&#xff0c;继承的作用域四&#xff0c;派生类的默认成员函数五&#xff0c;继承和友元&静态成员和继承六&#xff0c;菱形继…

vue 在线预览word

1 mammoth 先找的是mammoth这个插件yarn add mammoth,版本是1,7.0 参考网上的示例使用如下&#xff1a; import mammoth from "mammoth"; const vHtml ref("") const readExcelFromRemoteFile (url) >{var xhr new XMLHttpRequest();xhr.open("…

柚见第十一期(前端页面开发)

创建队伍 便于控制样式,在外面套一层div 创建假数据模拟后端传来数据 //假数据模拟 const initFormData { "name": "", "description": "", "expireTime": "", "maxNum": 0, "passwor…

未来艺术展览新趋势——3D线上画展如何创新展示?

一、艺术展示的数字化转型 随着科技的不断进步&#xff0c;3D线上画展作为艺术展示的新趋势&#xff0c;正逐渐改变着人们欣赏和购买艺术作品的方式。对于画家而言&#xff0c;3D线上画展不仅提供了一个全新的平台来展示他们的作品&#xff0c;还开辟了销售渠道&#xff0c;扩大…

天梯赛的赛场安排(Python)

作者 陈越 单位 浙江大学 天梯赛使用 OMS 监考系统&#xff0c;需要将参赛队员安排到系统中的虚拟赛场里&#xff0c;并为每个赛场分配一位监考老师。每位监考老师需要联系自己赛场内队员对应的教练们&#xff0c;以便发放比赛账号。为了尽可能减少教练和监考的沟通负担&#…

可视化表单流程编辑器为啥好用?

想要提升办公率、提高数据资源的利用率&#xff0c;可以采用可视化表单流程编辑器的优势特点&#xff0c;实现心中愿望。伴随着社会的进步和发展&#xff0c;提质增效的办公效果一直都是很多职场办公团队的发展需求&#xff0c;作为低代码技术平台服务商&#xff0c;流辰信息团…