抬头仰望星空,是否能发现自己的渺小。

伪斜杠青年

人们总是混淆了欲望和理想

JAVA WEB数据库连接-9.9

过了一个星期了,从开始的Servlet与html数据的交互到现在的连接数据库,很庆幸之前就学习过,所以现在学没那么费力,老规矩,依旧直接上代码

首先是创建一个servlet类,我有直接快捷创建的servlet3.0规范的,但是这次就不这样贴了,来基础的。

package com.lckiss.action;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public class UserLogin implements Servlet {
    @Override
    public void destroy() {
    }

    @Override
    public ServletConfig getServletConfig() {
        return null;
    }

    @Override
    public String getServletInfo() {
        return null;
    }

    @Override
    public void init(ServletConfig config) throws ServletException {
        System.out.println("已初始化");
    }

    @Override
    public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
        String name = req.getParameter("name");
        String pwd = req.getParameter("pwd");
        res.setContentType("text/html;charset=GBK");
        PrintWriter out = res.getWriter();
        System.out.println(pwd);
        System.out.println(name);
        boolean rs = getConnection(name, pwd);
        System.out.println(rs);
        if (rs) {
            out.println("成功");
        } else {
            out.println("失败");
        }
        out.flush();
    }

    public boolean getConnection(String name, String pwd) {
        String url = "jdbc:oracle:thin:@10.1.5.5:1521:orcl";// 10.1.5.5为服务器地址,1521为端口,orcl为数据库名
        String user = "你的帐号";
        String password = "你的密码";
        new oracle.jdbc.driver.OracleDriver();
        try {
            Connection conn = DriverManager.getConnection(url, user, password);
            String sql = "select * from emp where ENAME='" + name + "' and JOB ='" + pwd + "'";
            ResultSet rs = conn.createStatement().executeQuery(sql);
            while (rs.next()) {
                return true;
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return false;
    }
}

接下来是那个页面源代码

<!DOCTYPE html>
<html>

<head>
    <title>T</title>
</head>

<body>
    <form action="http://localhost/day_1/login">
        <div align="center">
            用户昵称:<input type="text" name="name"></input>
            <br>
            用户密码:<input type="password" name="pwd"></input>
            <br>
            <br>
            <input type="submit" value="登录" />
            <input type="reset" value="重置" />
        </div>
    </form>
</body>

</html>

http://localhost/day_1/1.html

本人的访问路径,懂的已经懂了。

登录的帐号密码为数据库emp表中ENAME 和JOB的值,自行查询

源码已出,不提供源码下载。

Anr-C 2016.9.9 个人记录,可以自行学习,转载请注明出处,谢谢。


0条评论

发表评论