JDBC_完整版
1,新建WEB项目:JDBC
2,导入驱动
将mysql-connector-java-5.0.8-bin.jar包放入web-inf目录下面的lib目录中
3,新建User类,放入entity包中
package songyan.login.etity;
import java.util.Date;
public class User {
private int id;
private String name;
private String password;
private String email;
private Date birthday;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
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;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
}
4,新建dbinfo.properties
选中src,右击new--File
File Name :dbinfo.properties
点击左下角source,写入代码
driverClass=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/day06
user=root
password=247418
5.新建Util.java 放入Util包
抽取getConnection()和closeAll(Connection conn,Statement sta,ResultSet rs)
package songyan.login.util; 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 Util {
private static String driverClass;
private static String url;
private static String user;
private static String password; static{
ResourceBundle rb= ResourceBundle.getBundle("dbinfo");
driverClass=rb.getString("driverClass");
url=rb.getString("url");
user=rb.getString("user");
password=rb.getString("password");
try {
Class.forName(driverClass);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
} public static Connection getConnection() throws SQLException
{
return DriverManager.getConnection(url,user,password);
} public static void closeAll(Connection conn,Statement sta,ResultSet rs)
{
if(rs!=null)
{
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
rs=null;
} if(sta!=null)
{
try {
sta.close();
} catch (SQLException e) {
e.printStackTrace();
}
sta=null;
} if(conn!=null)
{
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
conn=null;
}
}
}
6,新建DoLogin.java
package songyan.servlet; 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 java.sql.Statement;
import java.util.ArrayList;
import java.util.List; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import songyan.login.etity.User;
import songyan.login.util.Util; public class Dologin {
public static User findUser(String name,String password) throws SQLException
{
User u=null;
Connection conn;
PreparedStatement sta;
ResultSet rs;
String sql="select * from users where name=? and password=?"; conn=Util.getConnection();
sta=conn.prepareStatement(sql);
sta.setString(1, name);
sta.setString(2, password);
rs=sta.executeQuery(); while(rs.next())
{
u=new User();
u.setId(rs.getInt(1));
u.setName(rs.getString(2));
u.setPassword(rs.getString(3));
u.setEmail(rs.getString(4));
u.setBirthday(rs.getDate(5));
} return u;
}
}
7,新建Login.java
package songyan.servlet; import java.sql.SQLException;
import java.util.Scanner; import songyan.login.etity.User; public class Login
{
public static void main(String[] args) throws SQLException
{
System.out.println("请输入用户名:");
Scanner in =new Scanner(System.in);
String name=in.next();
System.out.println("请输入密码");
String pass=in.next(); User u=Dologin.findUser(name,pass);
if(u==null)
{
System.out.println("用户名或密码不正确");
}
else
{
System.out.println("欢迎你"+name);
}
}
}
8.测试:

JDBC_完整版的更多相关文章
- 如何安全的将VMware vCenter Server使用的SQL Server Express数据库平滑升级到完整版
背景: 由于建设初期使用的vSphere vCenter for Windows版,其中安装自动化过程中会使用SQL Server Express的免费版数据库进行基础环境构建.而此时随着业务量的增加 ...
- Android版的菜谱客户端应用源码完整版
Android版的菜谱客户端应用源码完整版,这个文章是从安卓教程网转载过来的,不是本人的原创,希望能够帮到大家的学习吧. <ignore_js_op> 152936qc7jdnv6vo0c ...
- sed实例精解--例说sed完整版
原文地址:sed实例精解--例说sed完整版 作者:xiaozhenggang 最近在学习shell,怕学了后面忘了前面的就把学习和实验的过程记录下来了.这里是关于sed的,前面有三四篇分开的,现在都 ...
- flexbox-CSS3弹性盒模型flexbox完整版教程
原文链接:http://caibaojian.com/flexbox-guide.html flexbox-CSS3弹性盒模型flexbox完整版教程 A-A+ 前端博客•2014-05-08•前端开 ...
- 转贴 IT外企那点儿事完整版
转贴 IT外企那点儿事完整版 第一章:外企也就那么回儿事(http://www.cnblogs.com/forfuture1978/archive/2010/04/30/1725341.html) 1 ...
- C#.Net 上传图片,限制图片大小,检查类型完整版
C#.Net 上传图片,限制图片大小,检查类型完整版 源代码: 处理图片类,如检查图片大小,按宽度比例缩小图片 public class CImageLibrary{ public enum Va ...
- office2016 软件全集 官方下载免费完整版(含破解文件)不含垃圾软件 win10完美激活
office2016官方下载免费完整版是新一代办公软件,office2016官方下载免费完整版已经分享到下面,office2016官方下载免费完整版包括了Word.Excel.PowerPoint.O ...
- 老王Python培训视频教程(价值500元)【基础进阶项目篇 – 完整版】
老王Python培训视频教程(价值500元)[基础进阶项目篇 – 完整版] 教学大纲python基础篇1-25课时1.虚拟机安装ubuntu开发环境,第一个程序:hello python! (配置开发 ...
- thinkPHP3.2.3完整版 在sae上面的部署
第一步: thinkPHP3.2.3完整版,目录结构如下 第二步:在新浪sae上面创建一个新应用 第三步:用svn down,下来会有两个文件:index.php.config.ya ...
随机推荐
- leetcode-19-merge
88. Merge Sorted Array 解题思路: 需要注意,两个数组是排好序的,且nums1够大.所以从两个数组的尾端开始比较,大的那个放在nums1的尾部,并且放了之后就可以前进. 例如nu ...
- phpmyadmin提示The mbstring extension is missing的解决方法
解决办法:安装php-mbstring yum install php-mbstring
- 下载linaro android 4.4.2 for panda4460
$ export MANIFEST_REPO=git://android.git.linaro.org/platform/manifest.git$ export MANIFEST_BRANCH=li ...
- Linux对大容量硬盘分区
随着单块硬盘容量的增大和硬盘价格的下降,2TB的磁盘使用将很快会普及,由于传统的MBR方式存储分区表的方 式缺陷,将可能导致很多分区工具不能正确地读取大于2TB容量的硬盘而无法正常分区大容量硬盘.其实 ...
- JavaScript日期时间格式化函数
这篇文章主要介绍了JavaScript日期时间格式化函数分享,需要的朋友可以参考下 这个函数经常用到,分享给大家. 函数代码: //格式化参数说明: //y:年,M:月,d:日,h:时,m分,s:秒, ...
- day06 面向对象编程
面向对象: 面向对象: 世界万物,皆可分类 世界万物,皆为对象 只要是对象,就肯定属于某种品类 只要是对象,就肯定有属性 特性: 多态: 一个统一的接口,多种实现 例如: 一个 ...
- xcode各个版本下载 xcode7 xcode6 xcode5
登录开发者帐号,选择 support,然后操作如下图: 登录开发者帐号,选择 support,然后操作如下图: 登录开发者帐号,选择 support,然后操作如下图: 登录开发者帐号,选择 suppo ...
- Sogou日志分析(hive)
1. 数据准备 1.1 数据预先放在mac本地桌面的“VB共享文件夹”中,从VisualBox虚拟机中/mnt/VBShare共享目录中转移到resources目标目录. [cloudera@quic ...
- EOJ Monthly 2018.1
985月赛,当时鸽了,现在想补一补 A. 石头剪刀布的套路 Time limit per test: 1.0 seconds Memory limit: 256 megabytes 现在有一种石头剪刀 ...
- MySQL将内存用在了哪里
本片文章参考官网讲述MySQL是如何分配内部内存,同时涉及到如何合适设的置内存分配以及如何监控内存的使用情况 官方文档 MySQL在启动时默认被分配给512MB RAM,可以通过设置相关内存参数对其进 ...