/*练习题:
* 在Mysql数据库中创建一个person数据表,添加三个字段,id,user,password,并录入几条记录
*
*练习题:定义一个login.html,里面定义了两个请求字段:user,password,发送请求到loginServlet。
*再创建一个,LoginServlet(需要继承自HttpServlet,并重写doPost方法)
*在其中获取请求的user,password
*
*利用jdbc从person表中查询有没有和页面输入的user,password对应的记录
*
*若有则相应Hello:XXX,若没有,相应sorry:XXX XXX 为user
* */

------------------------------------------------------------------------------------------------------------------

首先在mysql中建立一个表名我person的表,然后再将连接数据库的开源包导进去

------------------------------------------------------------------------------

在lib下面的web.xml文件配置为:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">

<!-- loginServlet的配置和映射 -->
<servlet>
<servlet-name>loginServlet</servlet-name>
<servlet-class>com.lanqiao.javatest.LoginServlet1</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>loginServlet</servlet-name>
<!-- /loginServlet是login.html中表单的提交方法 -->
<url-pattern>/loginServlet</url-pattern>
</servlet-mapping>

</web-app>

-------------------------------------------------------------------------------------------

在WebContent下面建立的表单login.html,使类,配置文件,表单建立起来了连接

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>表单的提交方法</title>
</head>
<body>
<form action="loginServlet" method="post">
<p>
username:<input type="text" name="username"/>
password:<input type="password" name="password"/>
<br><br>
<input type="submit" value="Submit"/>
</p>
</form>
</body>
</html>

-------------------------------------------------------------------------------------

LoginServlet1类:

public class LoginServlet1 extends HttpServlet{

//HttpServlet: 是一个 Servlet, 继承自 GenericServlet. 针对于 HTTP 协议所定制.

@Override
//重写doPost方法
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
PrintWriter out=resp.getWriter();

String username1=req.getParameter("username");
String password1=req.getParameter("password");

String sql="select count(id) from person where "
+ "username=? and password=?";
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet resultSet=null;
try {
//获取连接数据库的文件
Class.forName("com.mysql.jdbc.Driver");
String url="jdbc:mysql:///test";
String username2="root";
String password2="lxn123";

connection=DriverManager.getConnection(url, username2, password2);
preparedStatement=connection.prepareStatement(sql);
preparedStatement.setString(1, username1);
preparedStatement.setString(2, password1);
resultSet=preparedStatement.executeQuery();

if(resultSet.next()){
int count=resultSet.getInt(1);
if (count>0) {
out.println("Hello:"+username1);
}
else{
out.println("Sorry:"+username1);
}

}
} catch (Exception e) {
e.printStackTrace();
}
finally {
if (resultSet!=null) {
try {
resultSet.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (preparedStatement!=null) {
try {
preparedStatement.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (connection!=null) {
try {
connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}

}

javaWEB小练习:在数据库中查找相同的username和password的更多相关文章

  1. db2数据库中查找数据库表

    模糊查找db2数据库中的数据库表: select tabname,remarks from syscat.tables where TABNAME like  'DM%' select 'DROP T ...

  2. javaweb利用javabean将数据库中内容遍历在页面输出

    效果如下图 它所实现的就是把数据库中一个表中所有的数据一条一条以表格的形式输出在网页上, 实现方法如下 首先我们要从数据库读取数据,这里要借助javabean来方便我们传递数据 以上面的为例,我要输出 ...

  3. apropos - 在 whatis 数据库中查找字符串

    总览 (SYNOPSIS) apropos keyword ... 描述 (DESCRIPTION) apropos 命令在一些特定的包含系统命令的简短描述的数据库文件里查找关键字, 然后把结果送到标 ...

  4. SQL Server 在数据库中查找字符串(不知道表名的情况下 查找字符串)

    declare @key varchar(30)set @key = '广州' --替换为要查找的字符串DECLARE @tabName VARCHAR(40),@colName VARCHAR(40 ...

  5. SQL 在数据库中查找拥有此列名的所有表

    SELECT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME='Column' #"Column"为要查询 ...

  6. 为什么 as sysdba着陆方法oracle数据库,为什么刚刚输入username和password我们都可以登录?

    事实上,这是oracle问题数据库的身份验证方法 该 sqlnet.ora在文件 SQLNET.AUTHENTICATION_SERVICES= (NTS) 变 SQLNET.AUTHENTICATI ...

  7. mybatis查询mysql 数据库中 BLOB字段,结果出现乱码

    起因 mybatis-plus 通过Mapper 查询数据,映射出来的BLOB字段中的yml数据中文是乱码的 --- DefaultValue: '' Formula: '' HintContent: ...

  8. 将 node.js 的数据保存到 mongo 数据库中

    Mongo 数据库 安装 首先到 Mongo 的官方网站下载安装程序:http://www.mongodb.org/,我下载的文件名为:mongodb-win32-x86_64-2008plus-2. ...

  9. iOS数据库之查找功能的实现

    首先引入文件: libsqlite3. FMDB(包含Global.m,Global.h文件) 关闭arc 用mesaSqlite创建一个数据库,引入文件中 其次: 首先,在Global.h文件中找到 ...

随机推荐

  1. JAX-WS(二)之使用wsimport创建WebService客户端

    客户端开发的通常过程是从已有的WSDL处罚,创建辅助类JAXB对象和Service代理类,然后基于这些类开发自己的客户端应用. 开发步骤: 创建eclipse项目: 运行wsimport命令生成客户端 ...

  2. IntelliJ IDEA 缓存和索引介绍和清理方法

    IntelliJ IDEA 首次加载项目的时候,都会创建索引,而创建索引的时间跟项目的文件多少成正比,我也简单强调了 IntelliJ IDEA 索引的重要性.这里我们再对此进行详细说明索引.缓存对 ...

  3. 20145207 《Java程序设计》第5周学习总结

    前言:先聊两句,上午电路实习,刚开始没多久就让电烙铁烫了,倒霉催的~晚上来这里接着弄代码,透心凉心飞扬~ 教材学习内容总结 一.异常处理 1.语法与继承结构 使用try.catch: Java中所有错 ...

  4. YbRapidSolution.MVC项目首页缓存没有起作用

    Response.Cache.SetOmitVaryStar(true); 文件方面的内容,增加了这个语句 没有的话缓存没起作用,增加这个语句可提高系统性能. HomeController: usin ...

  5. html 输入框验证

    JS判断只能是数字和小数点 1.文本框只能输入数字代码(小数点也不能输入)<input onkeyup="this.value=this.value.replace(/\D/g,'') ...

  6. 如何通过类找到对应的jar包

    ctrl+shift+T 然后输入对应类  

  7. 关于陈冰、陈良乔以及《我的第一本C++书》【转】

    出处:如何在淘宝上卖出 600 本自己写的 C++ 入门书? 陈冰:<我的第一本C++书> 策划编辑,现为图灵公司副总编,<C程序设计伴侣>策划编辑 陈良乔:<我的第一本 ...

  8. 在线白板,基于socket.io的多人在线协作工具

    首发:个人博客,更新&纠错&回复 是昨天这篇博文留的尾巴,socket.io库的使用练习,成品地址在这里. 代码已经上传到github,传送门.可以开俩浏览器看效果. 现实意义是俩人在 ...

  9. QTP11.00安装+破解详细教程

    一.      安装过程 首先双击setup.exe文件,选择“QuickTest Professional安装程序” 此时会查看你机子上面是否有QTP需要,但是机子上没有的组件, 跟着先安装这两个组 ...

  10. JVM总结

    1. 内存分布: 1). 程序计数器(Program Counter Register)是一块较小的内存空间,它的作用可以看做是当前线程所执行的字节码的行号指示器.线程私有.如果线程正在执行的是一个J ...