一.简单的登陆功能
输入用户名admin 密码admin后,显示弹出窗“登陆成功”,否则显示“登录失败”
1.这里需要一个登陆页面和一个处理页面,主要用到request.getParameter方法,代码(logn.jsp):
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<body>
<form action="chuli.jsp" method="post">
用户名:<input type="text" name="username"><br>
密码:<input type="password" name="password"><br>
<input type="submit" value="提交">
</form>
</body>
</html>
2.这里是处理页面,代码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<body>
<%
String username=request.getParameter("username");
String password=request.getParameter("password");
if("admin".equals(username)&&"admin".equals(password)){
session.setAttribute("username",username);
out.println("<script>alert('登录成功!');</script>");
}
else{
out.println("<script>alert('登录失败!');</script>");
}
%>
</body>
</html>
二.数据库操作
建立insertuser.jsp完成添加功能,将文本框中内容添加进user表(使用mysql)
这里要使用到mysql,首先就是创建对应的表,这里建立数据库Exam,建立表user
代码如下(mysql导出版本):
/*
Navicat Premium Data Transfer
Source Server : 127.0.0.1
Source Server Type : MySQL
Source Server Version : 80033
Source Host : localhost:3306
Source Schema : exam
Target Server Type : MySQL
Target Server Version : 80033
File Encoding : 65001
Date: 03/06/2023 16:15:22
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for user
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`id` int(0) NOT NULL AUTO_INCREMENT,
`username` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`userpwd` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`usertype` int(0) NULL DEFAULT NULL,
`memo` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = MyISAM AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS = 1;
然后是一样的登陆页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="java.sql.*"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>添加用户</title>
</head>
<body>
<form action="add.jsp"method="post" name="re">
用户名<input type="text" name="name" id="name">
<br/>
密码 <input type="password" name="pwd" id="pwd">
<br/>
方式 <input type="text" name="type" id="type">
<br/>
备注 <input type="text" name="memo" id="memo">
<br/>
<input type="submit" name="Submit" value="添加" >
</form>
</body>
</html>
这里是处理页面,需要补充的是,jsp连接数据库需要加载数据库驱动也就是导入你对应数据库版本的Java-mysql的包
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="java.sql.*"%>
<%
request.setCharacterEncoding("utf-8");
String name = request.getParameter("name");
String pwd = request.getParameter("pwd");
String type = request.getParameter("type");
String memo = request.getParameter("memo");
Class.forName("com.mysql.jdbc.Driver");
//桥接
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/exam","admin","123456");
//连接数据库
String sql = "insert into user values(null,?,?,?,?)";
PreparedStatement ps = con.prepareStatement(sql);
ps.setString(1,name);
ps.setString(2,pwd);
ps.setString(3,type);
ps.setString(4,memo);
ps.executeUpdate();
con.close();
%>
<script>alert('成功');</script>
不导入这个jar会报错,导入的包要和mysql版本一致