JDBC新手必会

JDBC新手必会

jdbc是什么

java连接数据库 java database connectivity

jdbc的本质是什么

是sun公司提供的一套接口

接口都有调用者和实现者

面向接口调用 面向接口写实现类 这都属于面向接口编程

为什么要面向接口编程

解耦合:降低程序的耦合度 提高程序的可扩展力

多台机制就是非常典型的面向抽象编程(是面向具体编程)

建议以后写也用多态机制 父类型的引用指向子类型的对象

jdbc使用流程

java程序员面向接口编程 》 调用jdbc接口 》 数据库厂家java程序员提供的负责编写jdbc接口的实现类(一些.class文件)就是各种(mysql/Oracle)驱动

什么是驱动

所有的数据库驱动都是以jar包的形式存在 jar包中有很多的.class文件 这个文件就是对jdbc接口的实现 驱动不是sun公司提供的 是各大数据库厂家负责提供 下载驱动jar包需要去数据库官网下载

JDBC编程六步

第一步:注册驱动

作用:告诉java程序员 即将连接的是哪个品牌的数据库

方法:

class.forName("com.mysql.cj.jdbc.Driver");

第二步:获取连接

表示JVM的进程和数据库进程之间的通道已经打开 这属于进程之间的通信属于重量级别的 使用完记得关闭

String url=””
String user=”root”
String pas =123456;
Conn= DriverManager.getConnection(url,user,pas);

第三步:获取数据库操作的对象

专门执行sql语句的地方

String sql = “select * from login where username = ? and userpas = ?;
Ps = conn.prepareStatment(sql);
Ps.SetString(1,username);
Ps.SetString(2,usrepas);
Rs = ps.ExcuteQuery();
//这是标准写法
Stmt = conn.Statement()

第四步:执行SQL语句

int count = stmt.excuteupdate(sql);//当代码执行增删改时使用

第五步:处理查询结果

注意:这一步是仅限于第四部是查询操作使用

Rs=stmt.excutequery(sql);
While(rs.next(){
String username = rs.getString(1);
String userpas = rs.getString(2);
System.out.println(username + userpas);
}

第六步:释放资源

使用完资源后一定要关闭资源 java和数据库之间的通信,开启一定要关闭

Try{
If(rs!=null){
Rs.close();
}
}catch(Exception e){
E.printStacktrace();
}

statement and preparestatement区别

1.statement存在SQL注入问题,preparestatement解决了这个问题

2.statement编译一次 执行一次 preparestatement编译一次执行N次

3.preparestatement会在编译阶段做类型的安全检查

4.综上:preparestatement使用多

事务提交

jdbc中的事务是自动提交的 是什么自动提交:

只要执行任意一条dml语句 就会自动提交一次 只是jdbc默认的事务行为

但是在实际业务过程中 通常是N条数据共同联合才能完成 必须保证这些dml语句在同一个事务中同时完成或者同时失败

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Tomcat在使用JDBC连接数据库时,经常会出现以下几种错误: 1. ClassNotFoundException: com.mysql.jdbc.Driver 这个错误意味着Tomcat无法找到MySQL JDBC驱动程序。为了解决这个问题,你需要将MySQL JDBC驱动程序的jar包添加到Tomcat的classpath中。你可以将jar包复制到Tomcat的lib目录下,或者将其添加到Tomcat启动脚本中的CLASSPATH环境变量中。 2. java.sql.SQLException: No suitable driver found 如果你在JDBC连接字符串中使用了错误的URL,那么Tomcat会抛出这个异常。你需要确保你的JDBC连接字符串的格式正确,并且包含了正确的数据库名称、用户名和密码。 3. java.sql.SQLException: Communications link failure 这个错误通常意味着Tomcat无法连接到MySQL服务器。可能的原因包括: - MySQL服务器未启动或已停止。 - MySQL服务器的端口号或IP地址错误。 - 防火墙阻止了Tomcat连接MySQL服务器的网络流量。 - MySQL服务器配置了SSL选项,但Tomcat未正确配置SSL证书。 为了解决这个问题,你可以检查MySQL服务器的状态,确保Tomcat可以访问MySQL服务器的端口,检查防火墙设置,或者确保Tomcat已正确配置SSL证书(如果MySQL服务器启用了SSL选项)。 4. java.lang.OutOfMemoryError: PermGen space 如果你在Tomcat中频繁地部署和卸载Web应用程序,可能会导致PermGen空间不足的错误。为了解决这个问题,你可以增加Tomcat的PermGen空间,或者使用Java 8及以上版本,其中PermGen空间已被移除。 总之,Tomcat使用JDBC连接数据库时可能会出现各种错误。你需要仔细检查错误信息,并采取适当的措施来解决问题。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值