您的位置:首页 > 编程语言 > Java开发

用JAVA+jdbc+Mysql简单实现登陆注册页面相互跳转

2020-06-30 11:27 106 查看

前言

这是一份作业

准备材料

IDEA
Mysql 5.1
jstl-1.2.jar
mysql-connector-java-5.1.47-bin.jar
注:敲代码过程中出现的几乎所有红线均可用alt+回车,选择第一项解决

导入Jar包

新建Directory文件,命名为lib,在lib下拖入两个Jar包
右键点击jstl-1.2.jar,选择 add as library,同理mysql-connector-java-5.1.47-bin.jar

File→Project Structure→Artifacts
选择Fix修复添加相关jar包

Mysql

用JAVA+jdbc+Mysql简单实现登陆注册中建立的user数据库中添加age字段(右键,设计表)

JAVA

在JAVA0629下新建dao、modle、service、util文件
再分别New UserDao、User、UserService、DBUtil class

User实体类

定义字段

private int id;
private String name;
private String password;
private String age;

快捷键Alt+Insert 或 在当前页面右键选择Generat


效果

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}

public String getAge() {
return age;
}

public void setAge(String age) {
this.age = age;
}

@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
", password='" + password + '\'' +
", age='" + age + '\'' +
'}';
}

DBUtil实体类

package com.JAVA0629.util;

import java.sql.*;

public class DBUtil {
public static Connection getConnection() throws ClassNotFoundException, SQLException {
Class.forName("com.mysql.jdbc.Driver");
System.out.println("连接数据库");
//创建连接
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/testtt?useSSL=false","root","123456");
return connection;
}

public static void closeAll(ResultSet rs,Statement stmt,Connection conn) throws SQLException {
if(rs != null){
rs.close();
}
if(stmt != null){
stmt.close();
}
if(conn != null){
conn.close();
}
}
}

UserDao实体类

package com.JAVA0629.dao;

import com.JAVA0629.modle.User;
import com.JAVA0629.util.DBUtil;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class UserDao {
public int add(User user){
Connection connection = null;
PreparedStatement pstmt = null;
int count = 0;
try{
connection = DBUtil.getConnection();
//获得执行sql的Statement对象
pstmt = (PreparedStatement) connection.prepareStatement("insert into user (name,password,age) values (?,?,?)");
pstmt.setString(1,user.getName());
pstmt.setString(2,user.getPassword());
pstmt.setString(3,user.getAge());
//执行sql,获得结果
count = pstmt.executeUpdate();
System.out.println("insert操作:" + count);
return count;
}catch (Exception e){
e.printStackTrace();
}finally {
try {
DBUtil.closeAll(null,pstmt,connection);
} catch (SQLException e) {
e.printStackTrace();
}
}
return count;
}

public int del(User user) {
Connection connection = null;
PreparedStatement pstmt = null;
int count = 0;
try{
connection = DBUtil.getConnection();
System.out.println("连接成功!");
pstmt = (PreparedStatement) connection.prepareStatement("delete into user (name,password,age) values (?,?,?)");
pstmt.setString(1,user.getName());
pstmt.setString(2,user.getPassword());
pstmt.setString(3,user.getAge());
count = pstmt.executeUpdate();
System.out.println("delete操作:" + count);
return count;
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
DBUtil.closeAll(null,pstmt,connection);
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
return count;
}

UserService实体类

package com.JAVA0629.service;

import com.JAVA0629.dao.UserDao;
import com.JAVA0629.modle.User;

import java.sql.SQLException;

public class UserService {
UserDao userDao = new UserDao();

public int add(User user) {
System.out.println("service中add方法被调用");
return userDao.add(user);
}

public int del(User user) {
System.out.println("service中del方法被调用");
return userDao.del(user);
}
}

add.jsp
右键web新建JSP/JSPX

<%--
Created by IntelliJ IDEA.
User: Administrator
Date: 2020/6/30
Time: 10:21
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>注册</title>
</head>
<body>
<form action="/add?method=save" method="post">
name:<input name="name" type="text">
password:<input name="password" type="password">
age:<input name="age" type="text">
<input type="submit" value="注册">
</form>
</body>
</html>

AddServlet实体类

在servlet下新建AddServlet实体类

package com.JAVA0629.servlet;

import com.JAVA0629.modle.User;
import com.JAVA0629.service.UserService;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.sql.SQLException;

public class AddServlet extends HttpServlet {
UserService userService = new UserService();

protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{
System.out.println("执行了doPost");
String method = req.getParameter("method");
if(method.equals("save")){
insert(req,resp);
}
}

public void insert(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{
User user = new User();
String name = req.getParameter("name");
String password = req.getParameter("password");
String age = req.getParameter("age");

user.setName(name);
user.setPassword(password);
user.setAge(age);
System.out.println(user);

int count = userService.add(user);
if(count>0){
resp.sendRedirect("/index.jsp");
}else {
resp.getWriter().write("<h2>failed</h2>");
}
}

public void delete(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{
User user = new User();
String name = req.getParameter("name");
String password = req.getParameter("password");
String age = req.getParameter("age");

user.setName(name);
user.setPassword(password);
user.setAge(age);
System.out.println(user);

int count = userService.del(user);
if(count>0){
resp.sendRedirect("/index.jsp");
}else {
resp.getWriter().write("<h2>failed<h2>");
}
}
}

修改index.jsp

<%--
Created by IntelliJ IDEA.
User: Administrator
Date: 2020/6/29
Time: 10:19
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>登陆</title>
</head>
<body>
<h1>登陆页面</h1>
<form action="/login" method="post">
name:<input name="name" type="text">
password:<input name="password" type="password">
<input type="submit" value="login">
</form>
<a href="add.jsp">跳转到注册页面</a>
</body>
</html>

delete.jsp

右键web新建JSP/JSPX

<%--
Created by IntelliJ IDEA.
User: Administrator
Date: 2020/6/30
Time: 14:29
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>注销</title>
</head>
<body>
<form action="/del?method=delete" method="post">
name:<input name="name" type="text">
password:<input name="password" type="password">
age:<input name="name" type="text">
<input type="submit" value="注销">
</form>
</body>
</html>

运行结果



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: