1.要从键盘录入用户名与密码我们需要使用Scanner类完成操作

2.接收到用户名与密码后,我们需要调用jdbc程序根据用户名与密码查询数据库

User.java

package com.supergroup.domian;

public class User{
private String id;
private String usernasme;
private String password;
private String email;
public User() {
super();
}
public User(String id, String usernasme, String password, String email) {
super();
this.id = id;
this.usernasme = usernasme;
this.password = password;
this.email = email;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getUsernasme() {
return usernasme;
}
public void setUsernasme(String usernasme) {
this.usernasme = usernasme;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
@Override
public String toString() {
return "User [id=" + id + ", usernasme=" + usernasme + ", password="
+ password + ", email=" + email + "]";
} }

Operation.java

package com.supergroup.operation;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; import com.supergroup.domian.User;
import com.supergroup.utils.JDBCUtils; public class Operation {
public static User select(User user) throws ClassNotFoundException,
SQLException {
User result = null;
Connection con = null;
Statement st = null;
ResultSet rs = null;
// TODO Auto-generated method stub con = JDBCUtils.getConnection();
PreparedStatement ps=con.prepareStatement("select * from user where username=? and password=?");
ps.setString(1, user.getUsernasme());
ps.setString(2, user.getPassword());
rs=ps.executeQuery(); if (rs.next()) {
result = new User(rs.getString(1), rs.getString(2),
rs.getString(3), rs.getString(4)); }
JDBCUtils.closeAll(rs, st, con); return result;
} public static User _select(User user) throws ClassNotFoundException,
SQLException {
User result = null;
Connection con = null;
Statement st = null;
ResultSet rs = null;
// TODO Auto-generated method stub con = JDBCUtils.getConnection();
st = con.createStatement();
rs = st.executeQuery("select * from user where username='"
+ user.getUsernasme() + "'and password ='" + user.getPassword()
+ "'");
if (rs.next()) {
result = new User(rs.getString(1), rs.getString(2),
rs.getString(3), rs.getString(4)); }
JDBCUtils.closeAll(rs, st, con); return result;
} }

JDBCUtils.java

package com.supergroup.utils;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ResourceBundle; public class JDBCUtils {
private static String DRIVER;
private static String URL;
private static String UNAME;
private static String PWD;
static {
ResourceBundle rb = ResourceBundle
.getBundle("com.supergroup.utils.JDBC");
DRIVER = rb.getString("DRIVER");
URL = rb.getString("URL");
UNAME = rb.getString("UNAME");
PWD = rb.getString("PWD"); } static { try {
Class.forName(DRIVER);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} public static Connection getConnection() throws SQLException,
ClassNotFoundException {
// TODO Auto-generated method stub return DriverManager.getConnection(URL, UNAME, PWD); } public static void closeAll(ResultSet rs, Statement st, Connection con)
throws SQLException {
if (rs != null)
rs.close();
if (st != null)
st.close();
if (con != null)
con.close(); } }

JDBC.properties

DRIVER=com.mysql.jdbc.Driver
URL=jdbc:mysql:///day06
UNAME=root
PWD=123456

View.java

package com.supergroup.view;

import java.sql.SQLException;
import java.util.Scanner; import com.supergroup.domian.User;
import com.supergroup.operation.Operation; public class View { public static void main(String[] args) throws ClassNotFoundException,
SQLException {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
System.out.println("请输入用户名");
String uname = sc.nextLine();
System.out.println("请输入密码");
String pwd = sc.nextLine();
User user = new User(null, uname, pwd, null);
user = Operation.select(user);
if (user == null) {
System.err.println("登录失败"); } else {
System.out.println("登录成功");
System.out.println(user);
} } }
+

day05 java JDBC案例—Android小白的学习笔记的更多相关文章

  1. day04关于MySqL—Android小白的学习笔记

    Mysql入门 1. 数据库基本知识(了解) 1.1.数据库介绍 1.1.1.什么是数据库?数据库的作用是什么? 数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户 ...

  2. 20145213《Java程序设计》第八周学习笔记

    20145213<Java程序设计>第八周学习笔记 教材学习内容总结 "桃花春欲尽,谷雨夜来收"谷雨节气的到来意味着寒潮天气的基本结束,气温回升加快.刚出冬的我对于这种 ...

  3. Android安装器学习笔记(一)

    Android安装器学习笔记(一) 一.Android应用的四种安装方式: 1.通过系统应用PackageInstaller.apk进行安装,安装过程中会让用户确认 2.系统程序安装:在开机的时候自动 ...

  4. Java架构师-十项全能学习笔记(1)

    Java架构师-十项全能学习笔记(1) @Configuration @EnableStateMachine public class OrderStateMachineConfig extends ...

  5. android cocos2d-x for Android安装和学习笔记(请用adt-bundle21.1或以上导入)

    引用:http://weimingtom.iteye.com/blog/1483566 (20121108)注意:这篇文章用cdt编译ndk工程的内容已过时(现在可以用adt-bundle,避免配置繁 ...

  6. Java架构师之路 Spring学习笔记(一) Spring介绍

    前言 这是一篇原创的Spring学习笔记.主要记录我学习Spring4.0的过程.本人有四年的Java Web开发经验,最近在面试中遇到面试官总会问一些简单但我不会的Java问题,让我觉得有必要重新审 ...

  7. Android应用开发学习笔记之多线程与Handler消息处理机制

    作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz 和JAVA一样,Android下我们可以通过创建一个Thread对象实现多线程.Thread类有多个构造函数,一般通 ...

  8. Android Room框架学习笔记

    一.使用 1.build.gradle引入 compile "android.arch.persistence.room:runtime:1.0.0" annotationProc ...

  9. Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(十三)之Strings

    Immutable Strings Objects of the String class are immutable. If you examine the JDK documentation fo ...

随机推荐

  1. javascript数组的方法总结,非常实用的!

    在ES5中,一共有9个Array方法 http://kangax.github.io/compat-table/es5/ 注* 九个方法 Array.prototype.indexOfArray.pr ...

  2. web前端面试题

    HTML+CSS 1.对WEB标准以及W3C的理解与认识 标签闭合.标签小写.不乱嵌套.提高搜索机器人搜索几率.使用外链css和js脚本.结构行为表现的分离.文件下载与页面速度更快.内容能被更多的用户 ...

  3. 高手总结的“恋爱法”学习Linux系统,效果更好。

    如果你恋爱了,那你一定非常喜欢她.了解她,知道她喜欢吃什么玩什么,知道她需要什么,在她生气的时候可以哄她开心,一切尽在你的手指中.那你想学好Linux吗?喜欢Linux吗?你懂她吗?你有喜欢Linux ...

  4. [WebServer] Windows操作系统下 Tomcat 服务器运行 PHP 的环境配置

    前言: 由于本人在开发和学习过程中需要同时部署 JavaWeb 和 PHP 项目,于是整理了网上的一些相关资料,并结合自己的实际操作,记录于此,以供参考. 一.环境(64bit): 1.操作系统.To ...

  5. IHttpHandler给图片加水印

    /// <summary> /// WaterMarkHandlher 的摘要说明 /// </summary> public class WaterMarkHandlher ...

  6. IHttpHandler防止图片链接被盗用

    public class JpegHandler : IHttpHandler { public bool IsReusable { get { return true; } } public voi ...

  7. 用Runtime.getRuntime().exec()需要注意的地方

    有时候我们可能需要调用系统外部的某个程序,此时就可以用Runtime.getRuntime().exec()来调用,他会生成一个新的进程去运行调用的程序. 此方法返回一个java.lang.Proce ...

  8. 也谈自动化平台的搭建,另附高大上的名字---无人值守定时巡检系统(selenium+testng+ant+jenkins)

    最近公司新项目改版,由于没有运维,开发则负责上线任务,并且都是手动上线,并行的项目多了,分支混乱,经常导致B项目上线覆盖A项目,导致系统不定时出现异常,老板知道了便扣了大家的绩效,作为测试这边必须想个 ...

  9. java开发连接Oracle 12c采用PDB遇到问题记录

    今天初次使用java连接Oracle 12c,遇到各种问题,为方便后续查询,在汇总了问题记录及解决方案如下. ORA-28040: No matching authentication protoco ...

  10. 硬件抽象层:HAL

    本节我们研究硬件抽象层:HALHAL,它是建立在Linux驱动之上的一套程序库.刚开始介绍了为什么要在Android中加入HAL,目的有三个,一,统一硬件的调用接口.二,解决了GPL版权问题.三,针对 ...