但是这些东西在mysql那里有问题。mysql的驱动不是很完善。getClob()、getBlob()不好使不是因为程序的问题,而是因为mysql驱动的问题,oracle驱动就没有这个问题,证明oracle比mysql高级。类型匹配没问题有这种方案,但是mysql不支持。


做注册登录的时候,表单里面有用户名和密码,一提交,提交到servlet,servlet拿到了,拿着用户名和密码上数据库查那个用户,这个sql语句执行完返回几条记录?必须得返回一条吧,不可能有两个人重名吧。

在遍历结果集时要使用if不要再使用while,而那个while是结果集里面有多条的时候。


package cn.itcast.jdbc;
import com.mysql.jdbc.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
//ResultSet介绍
public class JdbcDemo4 {
public static void main(String[] args) throws SQLException, ClassNotFoundException { //1.注册驱动
Class.forName("com.mysql.jdbc.Driver");//优点是加载一次 替换registerDriver()这个方法 这个不耦合,根本就没用mysql驱动的东西 不是意味着那就不用驱动了,只是不依赖jar包 String url = "jdbc:mysql:///day17"; //2.获取连接对象
Connection con = (Connection) DriverManager.getConnection(url, "root", ""); //3.通过连接对象获取操作sql语句的Statement
Statement st = con.createStatement();
//4.操作sql语句
String sql = "select * from user";
ResultSet rs = st.executeQuery(sql);//ResultSet就是查询的结果,可以想象成是集合,但是它不是集合 //5.遍历结果集 while(rs.next()){
//int id = rs.getInt("id");
String id = rs.getString("id");
String username = rs.getString("username");
String password = rs.getString("password");
String email = rs.getString("email");
System.out.println(id+" "+username+" "+password+" "+email);
} //6.释放资源
rs.close();//结果集得关
st.close();
con.close();
//直接把con关闭了,数据库和程序断开了。但是statement和resultset没有及时释放,它还在内存存着。close()是释放和回收资源。
//close()的顺序和进门出门是一样的,是进门的时候先进大门,出门的时候是最后才出大门
//=============
//Java可以操作数据库
}
}

day17-jdbc 8.ResultSet介绍的更多相关文章

  1. 学习日常笔记<day17>jdbc基础

    1.jdbc入门 1.1.jdbc定义 使用java代码发送sql语句的技术就是jdbc技术 1.2.使用jdbc发送sql前提 需要登录数据库服务器(数据库的IP地址,端口,数据库用户名,密码) / ...

  2. MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  3. 超全面的JavaWeb笔记day17<JDBC>

    1.JDBC的原理 是由JavaEE提供的连接数据库的规范 需要由各大数据库的厂商提供对JDBC的实现类 2.四大核心类 3.四大参数 driverClassName url username pas ...

  4. 深入浅出MyBatis:JDBC和MyBatis介绍

    JDBC相关概念 Java程序都是通过JDBC连接数据库的,通过SQL对数据库编程,JDBC是由SUN公司提出的一些列规范,只定义了接口规范,具体实现由各个数据库厂商去实现,它是一种典型的桥接模式. ...

  5. ResultSet指针回到初始位置的方法及ResultSet介绍

    原文地址: https://blog.csdn.net/walkerjong/article/details/7023872 仅供学习参考使用. 结果集(ResultSet)是数据中查询结果返回的一种 ...

  6. MyBatis源码分析(一):从JDBC到MyBatis 介绍MyBatis的背景,为什么要用MyBatis

    一.介绍JDBC JDBC全称Java Database Connectivity,是Java语言规范客户端访问数据库的应用程序接口,所面向的数据库类型为关系型数据库. JDBC的三层架构图: JDB ...

  7. JDBC用ResultSet访问大量数据时会遇到的问题

    我们经常需要JDBC来对数据库就行操作,一般流程为连接数据库.通过sql语句把需要的数据取出来保存到ResultSet,然后调用ResultSet方法的类似 getString,getInt()等方法 ...

  8. JDBC之ResultSet

    ResultSet is a interface More gnerally,ResultSet is a class involves a table returned by executeQuer ...

  9. Mysql——JDBC编程 理论介绍

    一.JDBC简介(来自俞琰--数据库老师) Java数据库编程主要使用JDBC技术.JDBC是一种用于执行SQL语句的Java API.它由一组用Java编写的类和接口组成.JDBC为开发人员提供了一 ...

随机推荐

  1. msdn - Developer Library(包括wpf)重要程度——5星*****

    https://msdn.microsoft.com/zh-cn/library/ms754242(v=vs.110).aspx https://msdn.microsoft.com/zh-cn/li ...

  2. axure下载及汉化

    第一步:下载axure rp 6.5英文原版 axure6.5官方英文下载地址: Windows版:http://t.cn/zW7JifS 第二步:安装汉化语言包 axure6.5汉化语言包中文包下载 ...

  3. nexus上传jar带依赖

    编写pom文件 比如我上传alipay-sdk-java.jar   依赖是commons-logging.jar <project> <modelVersion>1.3.1& ...

  4. 后勤LO采购数据源增强

    EIS采购数据源增强 1.       2LIS_02_HRD增强 1.1.         在标准数据源上增加字段 事务代码:LBWE 激活数据源字段 激活数据源 1.2.  在结构MC02M_0H ...

  5. git常用别名设置,保存一份

    git配置别名设置,保存一份 若git  config  --global  xxxx 设置,则文件一般在 C:\Users\Administrator\.gitconfig [alias] lg = ...

  6. 编写高效的CSS选择器

    高效的CSS已经不是一个新话题,也不是一个我非得重拾的话题,但是,它却是自我在SKY工作以后,真正感兴趣并始终关注的一个话题. 很多人或者忘记了,或者仅仅是没有意识到,CSS可以是高效的也可能导致低能 ...

  7. 二叉排序树的应用(java)

    package com.tree.find; public class TestSearchBST { private static class BiNode{ int data; BiNode lc ...

  8. mysql前缀索引的应用

    在mysql中有时需要索引的列很长,如果直接应用索引会造成索引过大的问题.因此我们可以取其中一部分字段来做索引,例: 添加索引:alter table * add key (field(3));   ...

  9. h5废弃的标签和属性及新增的标签和属性

    一.废弃的标签和属性 1.表现性元素 a) basefont b) big c) center d) font e) strike f) tt 2.框架类元素 a) frame b) frameset ...

  10. vbox sethduuid

    laozha@abc$ /usr/bin/vboxmanage internalcommands sethduuid /ud1/VBOX/centos7/CentOS7.vdi UUID change ...