第一个IDEA---登录功能(超级详细!)

首先,今天是10.24祝大家代码之路越走越顺越走越远吧,早日年入百万脱离苦海!

言归正传,先放图,建立框架如下图所示:(我会按照从上往下的顺序一一列出)

 话不多说,上代码!!!

1.UserAction:

package Action;

import model.User;

import java.sql.*;

public class UserAction {
    private User u;//这个东西和set,get都必须要有,不然你可以试试

    public UserAction() {
    }

    public User getU() {//直接自动生成就行
        return u;
    }

    public void setU(User u) {
        this.u = u;
    }

    public UserAction(User u) {
        this.u = u;
    }
    public String Login() {
        Connection con = null;
        PreparedStatement ps = null;
        ResultSet rs = null;
        try {
            String driver = "com.mysql.cj.jdbc.Driver";
            Class.forName(driver);
            String url = "jdbc:mysql://localhost:3306/testel?&useSSL=false&serverTimezone=UTC";
            String user = "root";
            String password = "123";//数据库的东西自己看着改,毕竟咱们不是一个数据库
            con = DriverManager.getConnection(url, user, password);
            String sql = "select * from user1 where userid=? and userpwd=?";
            ps = con.prepareStatement(sql);
            ps.setString(1, u.getUserid());
            //ps.setString(2, u.getUsername());
            ps.setString(2, u.getUserpwd());
            rs = ps.executeQuery();
            if (rs.next()) {
                return "1";
            }
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        } finally {
            try {
                if (rs != null) rs.close();
                if (ps != null) ps.close();
                if (con != null) con.close();
            } catch (SQLException throwables) {
                throwables.printStackTrace();
            }
        }

        return "0";

    }

}

 2.User:

package model;

public class User {
    private String userid,username,userpwd;//与数据库保持一致,这样比较简单
    public User(){}//防止以后用到,提前写上
    public User(String userid,String username,String userpwd){
        this.userid=userid;
        this.username=username;
        this.userpwd=userpwd;
    }
    public String getUserid() {//自动生成
        return userid;
    }

    public void setUserid(String userid) {
        this.userid = userid;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getUserpwd() {
        return userpwd;
    }

    public void setUserpwd(String userpwd) {
        this.userpwd = userpwd;
    }
}

3.struts.xml:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
        "http://struts.apache.org/dtds/struts-2.5.dtd">

<struts>
    <package name="default" namespace="/" extends="struts-default">//一般情况下这样写不会错,除非你建立的架构不一样,namespace可以改
        <action name="login" class="Action.UserAction" method="Login">
            <result name="1">/positive.jsp</result>//根据返回值跳转界面
            <result name="0">/negative.jsp</result>
        </action>
    </package>

</struts>

 4.web.xml:

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>Archetype Created Web Application</display-name>
  <filter>//直接复制老师的就行
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

</web-app>

5.login.jsp:

<%--
  Created by IntelliJ IDEA.
  User: hp
  Date: 2021/10/23
  Time: 19:36
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<table>
    <form action="/login">
        ID:<input type="text" name="u.userid"><br>//u是User的对象,看看上面就知道了
        姓名:<input type="text" name="u.username"><br>
        密码:<input type="text" name="u.userpwd"><br>
        <input type="submit" value="登录">
    </form>
</table>
</body>
</html>

6.negative.jsp:

<%--
  Created by IntelliJ IDEA.
  User: hp
  Date: 2021/10/23
  Time: 19:36
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
failure!
</body>
</html>

 

 7.positive.jsp:

<%--
  Created by IntelliJ IDEA.
  User: hp
  Date: 2021/10/23
  Time: 19:35
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
success!//知道成功了就行
</body>
</html>

  • 4
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值