数据库编程连接mysql_使用JDBC编程-连接MySQL数据库

作者:李老师,吕老师              2019-09-23

准备工作:

1、首先安装MySQL5.5.30

64位:链接:https://pan.baidu.com/s/1H99PH-jRq9OrWBMTA_Xo5g 提取码:6kmk

32位:链接:https://pan.baidu.com/s/19bBx0s1hC4HWNdYNLB5DeQ 提取码:wdl5

2、安装navicat for MySQL;

链接:https://pan.baidu.com/s/1OrM2Q6OSfz7AZojorW4P_A 提取码:70oy

3、然后创建数据库-例如名字为Stu,创建表stu_info

编程:

1、打开Eclipse,创建Dynamic web project;

2、将连接MySQL数据库的jar包复制到webcontent->web-inf->lib下。并且右击该jar包,选择buildpath->add buildpath

jar包下载地址:链接:https://pan.baidu.com/s/1qlzUjQw3Jk9L2ig0dBlmyg  提取码:qf2i

3、新建JSP文件,在page指令中,输入import="java.sql.*"

4、进行JDBC编程步骤大致如下:

4.1加载数据库驱动

Class.forName(driverClass)

上面的dirverClass就是数据库驱动类所对应的类路径字符串,根据不同数据库厂商提供的驱动也不同。

这里连接MySQL数据库,字符串为:"com.mysql.jdbc.Driver"

4.2、通过DriverManager获取数据库的链接

DriverManager.getConnection(String url, Stirng user, String pass)

当使用DriverManager来获取链接,需要传入三个参数:分别是数据量的url、用户名、密码。

连接MySQL数据库,参数分别为:"jdbc:mysql://localhost:3306/Stu"     "root"  "root"

注意:密码可以修改为自己安装MySQL的时候的密码

4.3、通过Connection对象创建Statement对象,Connection创建Statement的方法如下三个:

createStatement()创建基本的Statement对象。

prepareStatement(String sql):根据传入的sql语句创建预编译的Statement对象。

prepareCall(String sql):根据传入的sql语句创建CallableStatement对象

4.4 、Statement执行SQL语句,Statement有三大方法来执行SQL语句:

execute:可以执行任何SQL语句,单比较麻烦

executeUpdate:可以执行DML、DDL语句。执行DML返回受影响的SQL语句行数,执行DDL返回0;

executeQuery:只能执行查询语句,执行后返回代表查询结果的ResultSet对象。

4.5、操作结果集,针对ResultSet

主要移动指针和获得值

next、previous、first、last、beforeFrist、afterLast、absolute等移动指针的方法。

getXxx获得移动指针指向行,特定列、索引的值。使用列名作为获取值的参数可读性好、使用索引作为获取参数性能好。

4.6、释放资源

关闭结果集

关闭Statement对象

关闭Connection对象

核心代码:

try {

Class.forName("com.mysql.jdbc.Driver");

conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/Stu", "root", "root");

}catch(Exception e) {

e.printStackTrace();

}

}

public boolean check(User user) throws SQLException {

String userName=user.getUsername();

String pwd=user.getPassword();

String cpwd=null;

boolean flag=false;

try {

PreparedStatement psmt=conn.prepareStatement("select * from stu_info where user=?");

psmt.setString(1, userName);

ResultSet rs=psmt.executeQuery();

while(rs.next()) {

cpwd=rs.getString(2);

}

}catch(Exception e) {

e.printStackTrace();

}finally {

conn.close();

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值