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