4.Maven写JavaWeb项目

1.项目目录结构

2.POM配置

<dependencies>
  <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.11</version>
    <scope>test</scope>
  </dependency>

  <!--web相关jar包-->
  <!--Servlet包-->
  <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
  <dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>4.0.1</version>
    <scope>provided</scope>
  </dependency>

  <!--mysql驱动包-->
  <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
  <dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.16</version>
    <scope>runtime</scope>
  </dependency>

  <!--jstl包-->
  <!-- https://mvnrepository.com/artifact/javax.servlet.jsp.jstl/jstl -->
  <dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
    <version>1.2</version>
  </dependency>

  <!--taglib包-->
  <!-- https://mvnrepository.com/artifact/taglibs/standard -->
  <dependency>
    <groupId>taglibs</groupId>
    <artifactId>standard</artifactId>
    <version>1.1.2</version>
  </dependency>
</dependencies>

<build>
    <plugins>
      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.1</version>
        <configuration>
          <port>80</port>
          <path>/</path>
        </configuration>
      </plugin>
    </plugins>
</build>

3.Jsp页面

css配置 加样式

img配置 加图片

index.jsp

<%@ page contentType="text/html;charset=UTF-8" isELIgnored="false" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html lang="zxx">
<head>
    <title>登录页面</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <link rel="stylesheet" href="css/style.css" type="text/css" media="all">
    <link href="https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap" rel="stylesheet">
</head>
<body>
    <section class="main">
        <div class="logo text-center">
            <h1> <a href="index.jsp"> Login</a></h1>
        </div>
        <div class="content-w3ls text-center">
            <img src="images/bj.jpg" alt="" class="img-responsive">
            <form action="login" method="post">
                <div class="copyright"><p style="color:red">${loginErrorInfo }</p></div>
                <div class="wthree-field">
                    <input name="phone" id="text1" type="text" value="" placeholder="Phone" required>
                </div>
                <div class="wthree-field">
                    <input name="pwd" id="myInput" type="Password" placeholder="Password" required>
                </div>
                <div class="wthree-field">
                    <button type="submit" class="btn">Sign In</button>
                </div>
                <div class="login-bottom">
                    <a href="#url" class="">Create An Account</a>
                </div>
            </form>
        </div>
        <div class="copyright">
            <p>© 2020 Universe Signin Form. Made with love | Designed by <a
                href="https://w3layouts.com" target="_blank">W3layouts</a></p>
        </div>
    </section>
</body>
</html>

main.jsp页面

<%@ page contentType="text/html;charset=UTF-8" isELIgnored="false" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>个人中心</title>
</head>
<body>
    <h1>欢迎${user.phone}来到我的世界</h1>
</body>
</html>

4.java代码

UserDao

package com.imnu.dao;
import com.imnu.entity.User;
import com.imnu.utils.MyDBUtils;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class UserDao {
    public User getUser(int phone, String pwd) {
        try {
            //得到连接对象,工具类获取
            Connection conn = MyDBUtils.getConnection();
            //获取预执行对象
            PreparedStatement stmt = conn.prepareStatement("select * from user where phone=? and pwd=?");
            stmt.setInt(1, phone);
            stmt.setString(2, pwd);
            //获取结果集对象
            ResultSet rs = stmt.executeQuery();
            User user = null;
            if (rs.next()) {
                user = new User();
                user.setUid(rs.getInt("uid"));
                user.setPhone(rs.getInt("phone"));
                user.setPwd(rs.getString("pwd"));
            }
            return user;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }
}

User

package com.imnu.entity;

public class User {

    private int uid;
    private int phone;
    private String pwd;

    public int getUid() {
        return uid;
    }

    public void setUid(int uid) {
        this.uid = uid;
    }

    public int getphone() {
        return phone;
    }

    public void setPhone(int phone) {
        this.phone = phone;
    }

    public String getPwd() {
        return pwd;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }

    @Override
    public String toString() {
        return "User{" +
                "uid=" + uid +
                ", phone='" + phone + '\'' +
                ", pwd='" + pwd + '\'' +
                '}';
    }
}

UserService

package com.imnu.service;
import com.imnu.dao.UserDao;
import com.imnu.entity.User;
public class UserService {
    public User checkUser(int phone,String pwd){
        UserDao ud = new UserDao();
        User user = ud.getUser(phone, pwd);
        return user;
    }
}

LoginServlet

package com.imnu.servlet;

import com.imnu.entity.User;
import com.imnu.service.UserService;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;

@WebServlet(name = "LoginServlet", value = "/login")
public class LoginServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //1.获取表单提交的数据
        int  phone =Integer.parseInt(request.getParameter("phone"));
        String pwd = request.getParameter("pwd");
        //2.创建user业务对象
        UserService us = new UserService();
        User user = us.checkUser(phone, pwd);
        //3.根据结果进行跳转
        if(user!=null){
            //跳转到主页
            //当前的登录对象保存session
            request.getSession().setAttribute("user",user);
            request.getRequestDispatcher("main.jsp").forward(request,response);
        }else{
           request.setAttribute("loginErrorInfo","用户名或密码不正确");
           request.getRequestDispatcher("index.jsp").forward(request,response);
        }
    }
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request,response);
    }
}

MyDBUtils

package com.imnu.utils;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

/**
 * 属于操作数据库工具类
 * static :方便使用,类名直接调用方法
 */
public class MyDBUtils {

    //得到一个连接对象
    public static Connection getConnection(){
        try{
            Class.forName("com.mysql.cj.jdbc.Driver");
            Connection conn = DriverManager
                    .getConnection("jdbc:mysql://localhost:3306/web?serverTimezone = GMT", "root", "root");
            return conn;
        }catch (Exception e){e.printStackTrace();return null;}
    }

    //释放资源
    public static void releaseDB(ResultSet rs, Statement stmt,Connection conn){
        try {
            if(rs!=null){ rs.close();}
            stmt.close();
            conn.close();
        }catch (Exception e){
            e.printStackTrace();
        }
    }
}

5.数据库

 

Tomact运行报错可修改

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值