前言
暑期项目实习第三课,用web写个简单的登陆页面.
思路
tomcat是一个容器,我们通过设置将其运行在8080节点,而后做一个简单的post方法实现登录功能
配置

创建login jps需要的组件
<%--
Created by IntelliJ IDEA.
User: Aroad
Date: 2020/6/29
Time: 10: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>
<form action="/login" method="post">
username:<input name="username" type="text">
password:<input name="password" type="password">
<input type="submit" value="login">
</form>
</body>
</html>
配置web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>com.aroad.serlet.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>com.aroad.serlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
</web-app>
创建JDBCunt连接数据库工具类
package com.aroad.serlet;
import java.io.FileReader;
import java.net.URL;
import java.sql.*;
import java.util.Properties;
public class JDBCUtils {
private static String url;
private static String user;
private static String password;
private static String driver;
static {
try {
Properties properties = new Properties();
ClassLoader classLoader = com.aroad.serlet.JDBCUtils.class.getClassLoader();
URL res = classLoader.getResource("jdbc.properties");
String path = res.getPath();
System.out.println(path);
properties.load(new FileReader(path));
url = properties.getProperty("url");
user = properties.getProperty("user");
password = properties.getProperty("password");
driver = properties.getProperty("driver");
Class.forName(driver);
}catch (Exception e){
e.printStackTrace();
}
}
public static Connection getCounection() throws SQLException {
return DriverManager.getConnection(url,user,password);
}
public static void close(ResultSet rs, Statement stmt, Connection conn) throws SQLException{ //ResultSet 结果集
if(rs != null){
rs.close();
stmt.close();
}
if (stmt != null){
stmt.close();
}
if(conn != null){
conn.close();
}
}
}
创建loginServlet
package com.aroad.serlet;
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.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class LoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String username = req.getParameter("username");
String password = req.getParameter("password");
if (username == null || password == null)
resp.getWriter().write("failed!");
Connection connection = null;
Statement statement = null;
ResultSet resultSet = null;
try {
connection = JDBCUtils.getCounection();
String sql = "SELECT * FROM user WHERE username = '"+ username+"' AND password = '"+password+"'";
statement = connection.createStatement();
resultSet = statement.executeQuery(sql);
if (resultSet.next()) resp.getWriter().write("success!");
}catch (SQLException e) {
e.printStackTrace();
} finally {
try {
JDBCUtils.close(resultSet,statement,connection);
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
}
导入tomcat的jar包跟jdbc的包

这样理论能完成,没有run(逃
这篇博客介绍了如何在暑期项目实习中利用Tomcat创建一个简单的登录页面。通过配置Tomcat运行在8080端口,设置web.xml,创建loginServlet以及使用JDBC连接数据库工具类,实现了登录功能。

被折叠的 条评论
为什么被折叠?



