[引言]
我们在学习Java编程时,连接数据库技术(JDBC)是一项必备技能,我们经常需要读取或操作持久性存储的结构化数据。那么现在开始,小博老师就开始为大家讲解JDBC中的常用操作技术,今天我们来了解JDBC中对数据库的参数化操作。
[步骤阅读一]准备数据库
既然要连接数据库,那么我们首先得准备一个数据库(bwf)并且设计一个数据表(users用户表),具体信息如下:
接下来,我们给用户users数据表中添加4条测试记录:
[步骤阅读二]项目添加jdbc驱动
我们想要在Java项目中使用JDBC的功能,就必须要为项目添加JDBC驱动文件(jar),我们一般可以在各种数据库产品的官网上找到它们,例如mysql数据库则可以在:http://www.mysql.com/products/connector/中找到驱动文件。
为项目添加了JDBC驱动文件(jar文件)后,我们可以看到项目的Referenced Library中结构如下:
[步骤阅读三]普通查询操作实现用户登录
接下来,我们就进入了本文的重点了,小博老师通过一个简单的用户登录案例,我们先使用之前学习过的普通查询技术来实现,核心代码如下:
publicclassLoginFrameextendsJFrame {
publicLoginFrame(){
super("博为峰教育");
setBounds(200, 100, 400, 200);
setLayout(null);
// 实例化 控件
txtUname=newJTextField();
txtUname.setBounds(20, 20, 350, 25);
add(txtUname);
txtUpwd=newJTextField();
txtUpwd.setBounds(20, 50, 350, 25);
add(txtUpwd);
bt=newJButton("登 录");
bt.setBounds(20, 80, 80, 25);
add(bt);
//给按钮控件添加监听器
bt.addMouseListener(newMouseListener() {
publicvoidmouseReleased(MouseEvente) {}
publicvoidmousePressed(MouseEvente) {}
publicvoidmouseExited(MouseEvente) {}
publicvoidmouseEntered(MouseEvente) {}
publicvoidmouseClicked(MouseEvente) {
try{
// 加载JDBC驱动
Driverdriver=newDriver();
// 创建数据库连接对象
Connectionconn= DriverManager.getConnection(
"jdbc:mysql://127.0.0.1:3306/bwf?useUnicode=true&characterEncoding=utf8",
"root","");
// 创建数据库操作申明对象
Statementstmt=conn.createStatement();
// 根据用户填写的账户名称和密码,向数据库发送查询语句,查询满足条件的用户记录
ResultSetrs=stmt.executeQuery("select * from users where uname='"+txtUname.getText()+"' and upwd='"+txtUpwd.getText()+"'");
// 判断查询的结果集中是否有满足条件的记录
if(rs.next()){
// 有满足条件的记录,登录成功
JOptionPane.showMessageDialog(getContentPane(),"登录成功!");
}else{
// 没有满足条件的记录,登录失败
JOptionPane.showMessageDialog(getContentPane(),"账户名称或密码错误!请重新填写!");
}
}catch(Exceptionexception){
exception.printStackTrace();
}
}
});
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
privateJTextFieldtxtUname;
privateJTextFieldtxtUpwd;
privateJButtonbt;
}
运行后效果: