IDEA完成登录servlet功能(连接云数据库)

目录

 

一、云服务器设置

1.1购买云服务器

1.2安装宝塔面板

1.2.1安装面板

1.2.2放行端口

1.2.3安装软件

1.3数据库设置

二、编程

2.1新建工程

2.2html

2.3servlet

三、运行测试


一、云服务器设置

1.1购买云服务器

    在阿里云官网购买云服务器,新用户可以有96每年的优惠,如果有学生优惠可以购买学生优惠版本的。PS:也可以选择腾讯云、华为云等云服务器。这里用阿里云作为示例进行介绍。

这里系统选择CentOS,版本选择最新的。其他的选项选择默认即可。

购买完成后,进入阿里云管理控制台-云服务器ECS-实例即可看到刚刚购买的云服务器,点击远程连接,可以通过Workbench远程连接服务器。

1.2安装宝塔面板

1.2.1安装面板

需要给服务器装上宝塔面板,方便管理。

进入宝塔官网   宝塔面板  ,选择Linux版-立即安装。

在新界面中复制Centos安装命令,粘贴到刚刚打开的阿里云服务器远程连接界面中,回车确认,然后等待安装成功。

1.2.2放行端口

在等待的过程中,我们需要放行端口,否则部分功能无法实现。在放行端口时进入阿里云管理控制台-云服务器ECS-实例-安全组-配置规则-手动添加。在这里,需要放行8888,3306,888端口,否则一些功能就不能实现,详细的步骤请参阅阿里云放行端口  腾讯云放行端口  华为云放行端口

接下来需要等待宝塔面板安装完成,完成后会提示一些重要的内容包括地址账号和密码,最好将这些保存下来

打开浏览器,将外网面板地址粘贴到地址栏,输入账号和密码登录。进入安全,配置防火墙。

由于8888端口系统已默认放行,所以仅需要放行3306和88端口。

 

1.2.3安装软件

接着进入软件商店,需要安装MySQL和phpMyAdmin.

现在建立数据库,点击数据库-添加数据库-填写信息-提交,数据库即添加成功,然后需要修改权限。比较方便的是将访问权限设置为所有人,也可以指定IP,把IP设置为自己电脑的IP地址。自己电脑的IP地址可以通过  IP138  这个网站查询。

1.3数据库设置

完成之后,打开Navicat,连接该数据库。在Navicat中,点击文件-新建连接-MySQL,连接名随便填写即可,主机为服务器的IP地址,端口为3306,用户名和密码为刚刚创建的数据库的用户名和密码。点击测试连接,如果提示连接成功即成功。点击确定即可。

双击刚刚保存的连接即可连接数据库,右键新建数据库,填写数据库名,字符集为UTF-8,然后确认,排序规则会自动选择。新建完成后双击刚刚新建的数据库,右键表,选择新建表,成功后,即可向其中插入数据。

数据库的设置到这里就结束了

二、编程

2.1新建工程

接下来需要打开IDEA,新建工程,选择Java Enterprise,设置工程名,位置。选择Web application,Application server选择一个Tomcat服务器。完成后,单击next,勾选上sevlet,完成。

在webapp下新建lib文件夹,然后在File-Project Structure-Denpendecies中点击加号,选择JARs or Directories,将刚刚添加的lib文件夹添加进来。然后应用即可。

然后,将mysql-connector-java的jar包复制进来。

2.2html

在WEB-INF中新建html file,这里写了一个简单的登录界面。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Login</title>
</head>
<body>
    <h1 align="center">Login</h1>
    <hr/>
    <br/>
    <center>
        <form method="get" action="login">
            <table border="1">
                <tr>
                    <th>User Name</th>
                    <td><input type="text" name="username"/></td>
                </tr>
                <tr>
                    <th>Password</th>
                    <td><input type="password" name="passwd"/> </td>
                </tr>
                <tr>
                    <td colspan="2" align="right"><input type="submit"/> </td>
                </tr>
            </table>
        </form>
    </center>
</body>
</html>

2.3servlet

在java文件中新建一个servlet,这里命名为LoginServlet。

package com.example.test;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
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.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

@WebServlet(name = "LoginServlet", urlPatterns = {"/login"})
public class LoginServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        System.out.println("your submit method is " + request.getMethod());
        String username = request.getParameter("username");
        String passwd = request.getParameter("passwd");

        try {
            // JDBC访问数据库取得用户名及密码
            // 1. 添加驱动到工程
            // 2. 加载驱动
            Class.forName("com.mysql.cj.jdbc.Driver");
            // 3. 创建连接 mysql后为服务器地址/数据库名 等等 最后两位分别是用户名和密码
            Connection connection = DriverManager.getConnection("jdbc:mysql://120.27.2.53:3306/user?characterEncoding=utf-8&serverTimezone=GMT%2B8", "user", "123456");
            // 4. 创建Statement
            Statement statement = connection.createStatement();
            // 5. 执行查询 这里需要注意表中列名
            ResultSet resultSet = statement.executeQuery("select * from user_account where name = '" + username + "' and password = '" + passwd + "'");
            // 6. 遍历结果集判断查询结果
            if(resultSet.next()){
                response.getWriter().print("<html><body><h3><font color = 'blue'>Login Success! Welcome!</font></h3></body></html>");
            }else{
                response.getWriter().print("<html><body><h3><font color = 'red'>Login fail! Login Again!</font></h3></body></html>");
            }
            // 7. 关闭资源
            resultSet.close();
            statement.close();
            connection.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request, response);
    }
}

点击运行,等待Tomcat启动,注意访问地址为http://localhost:8080/test_war_exploded/login.html

三、运行测试

这里可以进行测试,输入数据库中的用户名和密码,可见登录成功否则登录失败。

至此,一个简单的连接云数据库的servlet登录程序已经实现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值