package emp;

 import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import util.DBUtil; public class EmpServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private Connection conn;
private PrintWriter pw;
private String username1;
private String password1; protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { } protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//设置解码所使用的字符集,注意要与客户端保持一致
request.setCharacterEncoding("utf-8");
//告诉浏览器,服务器返回的数据类型和编码格式(通过设置content-type消息头的值)
response.setContentType("text/html;charset=utf-8");
//调用request对象提供的方法来读取请求参数值
String name = request.getParameter("username");
String passw = request.getParameter("password");
try {
//使用JDBC工具类来获取Connection对象
conn = DBUtil.getConnection();
//通过response(响应对象)获得一个输出流
pw = response.getWriter();
String sql = "select username,password from user_zyd where username=?";
PreparedStatement ps = conn.prepareStatement(sql);
//给sql赋值
ps.setString(1, name);
//查询返回的结果集(是一个集合)
ResultSet rs = ps.executeQuery();
while (rs.next()) {
//获取用户查询数据库的内容
username1 = rs.getString("username");
password1 = rs.getString("password");
System.out.println(username1);
System.out.println(password1);
//判断用户查询的内容是否正确
}
if (username1==null) {
pw.println("用户名或密码错误");
} else if(username1.equals(name) & password1.equals(passw)){
pw.println("用户名或密码错误");
} else {
pw.println("登陆成功");
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
DBUtil.close(conn);
pw.close();
}
}
}
//db.properties
# connection parameters
driver=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@localhost:1521:xe
user=system
password=123456
# datasouce parameters
initSize=1
maxSize=2 //DBUtil
package util; import java.io.IOException;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties; import org.apache.commons.dbcp.BasicDataSource; public class DBUtil {
private static BasicDataSource ds;
static {
Properties p = new Properties();
try {
p.load(DBUtil.class.getClassLoader().getResourceAsStream("db.properties"));
String driver = p.getProperty("driver");
String url = p.getProperty("url");
String user = p.getProperty("user");
String password = p.getProperty("password");
String initSize = p.getProperty("initSize");
String maxSize = p.getProperty("maxSize");
ds = new BasicDataSource();
ds.setDriverClassName(driver);
ds.setUrl(url);
ds.setUsername(user);
ds.setPassword(password);
ds.setInitialSize(Integer.parseInt(initSize));
ds.setMaxActive(Integer.parseInt(maxSize));
} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException(e);
}
} public static Connection getConnection() throws SQLException {
return ds.getConnection();
} public static void close(Connection conn) {
if (conn != null)
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
throw new RuntimeException(e);
}
}
}

Servlet实现简单的登录页面的更多相关文章

  1. Web核心之最简单最简单最简单的登录页面

    需求分析: 在登录页面提交用户名和密码 在Servlet中接收提交的参数,封装为User对象,然后调用DAO中的方法进行登录验证 在DAO中进行数据库查询操作,根据参数判断是否有对象的用户存在 在Se ...

  2. servlet实现简单的登录功能

    1.登录页面 Login.html <%@page contentType="text/html" pageEncoding="UTF-8"%> & ...

  3. 一个最简单的登录页面测试case

    具体需求: 有一个登陆页面, (假如上面有2个textbox, 一个提交按钮. 请针对这个页面设计30个以上的testcase.) 此题的考察目的:面试者是否熟悉各种测试方法,是否有丰富的Web测试经 ...

  4. IDEA+JSP+Servlet+Tomcat简单的登录示例

    1.用IDEA新建Java WEB项目并配置Tomcat 这一部分可以参考之前的一篇随笔 https://www.cnblogs.com/lbhym/p/11496610.html 2.导入Servl ...

  5. Servlet课程0425(四) Servlet实现简单用户登录验证

    Login.java //登录界面 package com.tsinghua; import javax.servlet.http.*; import java.io.*; public class ...

  6. js实现一个简单的登录页面

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  7. Axure 第一个原型 简单的登录页面

    设置所有元件的尺寸和位置的时候都是借助截图软件来调整位置的

  8. java web: eclipse & maven & jetty & struts2 & mysql = 简单登录页面

    第一次接触java web开发,花费了一天半的时间,写了个简单的登录页面,以此文为记. 开发工具 Eclipse Luna Release (4.4.0) 已集成maven,maven目前的体会就是管 ...

  9. HTML5实战教程———开发一个简单漂亮的登录页面

    最近看过几个基于HTML5开发的移动应用,比如臭名昭著的12036移动客户端就是主要使用HTML5来实现的,虽然还是有点反应迟钝,但已经比较流畅了,相信随着智能手机的配置越来越高性能越来越好,会越来越 ...

随机推荐

  1. JAVA连接数据库后,对数据库进行增删改查

    1.Statement 增删改: 方法:execute(String SQL) String url="jdbc:Access:///E://A//shop.mdb"; Conne ...

  2. spdlog源码阅读 (1): sinks

    0. spdlog简单介绍 spdlog 是一个快速的 C++ 日志库,只包含头文件,兼容 C++11.项目地址 特性: 非常快 只包含头文件 无需依赖第三方库 支持跨平台 - Linux / Win ...

  3. 把GIF背景变透明

    准备软件: 1.Ps cs4 2.QuickTime Player 7.74 开始: 1. 2.弹出文件选择框,但是发现不能选择GIF格式. 3.没关系,在文件名框输入*.*回车,就发现可以选择GIF ...

  4. ZJOI2017 Day2

    私のZJOI Day2 2017-3-22 08:00:07 AtCoder试题选讲 SYC(Sun Yican) from Shaoxing No.1 High School 2017-3-22 0 ...

  5. Alamofire源码解读系列(八)之安全策略(ServerTrustPolicy)

    本篇主要讲解Alamofire中安全验证代码 前言 作为开发人员,理解HTTPS的原理和应用算是一项基本技能.HTTPS目前来说是非常安全的,但仍然有大量的公司还在使用HTTP.其实HTTPS也并不是 ...

  6. 基于HBase的手机数据备份系统 .

    基于HBase实现的手机数据备份系统,实现了手机关键信息的备份,如短信.联系人等. 包括服务器端(Server)和客户端(Client) Server运行环境:Hadoop+HBase+Tomcat ...

  7. 深入React组件生命周期

    上篇博文使用React开发的一些注意要点对React开发的一些重点进行了简单的罗列总结,虽然也提到了React生命周期,但只略微小结,在此单独写篇React生命周期的总结. 在组件的整个生命周期中,随 ...

  8. Unity3D动态读取外部MP3文件给AudioSource

    在PC端VR游戏开发中,需要动态加载本地的MP3文件,但是Unity3D不知道出于什么原因,到5.4.0也不支持MP3文件的外部加载(目前只支持wav和ogg). 因此要想通过www来加载mp3文件就 ...

  9. Vue.use自定义自己的全局组件

    通常我们在vue里面使用别人开发的组件,第一步就是install,第二步在main.js里面引入,第三步Vue.use这个组件.今天我简单的也来use一个自己的组件. 这里我用的webpack-sim ...

  10. Java中类的继承,属性和方法的四种修饰符的作用范围,final关键字,java的三大特点中的2个:封装和多态,以及多态的一个设计模式,模板方法模式(template method)

    (一)Java中的继承: 关于继承,在Java中类的继承只能是单继承,不像C+++那样灵活,可以多继承,多继承的后果就是各种关系乱套,就相当于一个孩子有2个母亲一样,社会关系的复杂,不利于程序后期的开 ...