java学习——121.Java连数据库代码说明

本篇介绍用JDBC连接数据库时各代码的含义。

1、指定JDBC驱动程序

调用Java.lang.Class类的forName()方法指定JDBC驱动程序类。

要注意的是,不同的数据库其forName()方法中的参数是不一样的;就算是同一数据库,版本不一样,其参数也有可能不一样。

我的是SQL Server 2008版,故其代码为:

 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

如果是MySql数据库,其代码应为:

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

2、连接指定数据库

调用Java.lang.DriveManager类中的getConnection()方法连接指定数据库。

DriverManager.getConnection(url,userName,userPwd);

其中,url是JDBC数据源,userName是安装数据库时的账户名,SQLserver的默认账户一般是sa,userPwd是登陆数据库时的密码。

数据库连接的结果一般是存储在Connection的对象中。

如我的代码:

Connection conn=DriverManager.getConnection(url,userName,userPwd);

3、Statement语句对象

Statement st=conn.createStatement();表示的是根据与对应数据库的连接,创建一个Statement对象

4、ResultSet

执行SQL语句的结果要放在ResultSet对象中。

如:

ResultSet rs = st.executeQuery(sql);

要注意的是,不同的SQL语句执行的方法是不一样的。

上例是查询语句的方法,若是插入语句,则用的是:excuteUpdate(sql)方法。

例:查询并输出数据库中某一张表的数据

在做本例之前,我已经在数据库中添加了一些数据。

另,连接数据库的类与上篇一致,代码就不再重复帖在这里了。

import java.sql.*;

public class Test_ex {

private SQLclass consql;

ResultSet rs;

int i;

public Test_ex(){

String sql="select *from layuser";

consql=new SQLclass(sql);

rs=consql.get_ResultSet();

try{

while(rs.next()){

System.out.print("ID:"+rs.getInt(1)+"\t");

//getInt()是因为在数据库里第一列定义的是int类型,()参数若是数字,对应的是数据库表的第几列,也可以直接用字段名

 System.out.print("username:"+rs.getString(2)+"\t");

System.out.print("password:"+rs.getString("password"));

System.out.println();

}

}

catch(Exception e){}

}

public static void main(String args[]){

new Test_ex();

}

}

其运行结果如下:

与数据库中的数据一致。

(0)

相关推荐

  • Mybatis中类型映射处理器详解

    上一篇梳理了Configuration初始化分析,今天继续typeHandlers部分. 数据库厂商标识 接上一篇文章分析,下一个解析的是databaseIdProvider节点,这个节点好理解,从字 ...

  • 06 | 基础规范:如何理解 JDBC 关系型数据库访问规范?

    从今天开始,我们将进入 Spring Boot 另一个核心技术体系的讨论,即数据访问技术体系.无论是互联网应用还是传统软件,对于任何一个系统而言,数据的存储和访问都是不可缺少的. 数据访问层的构建可能 ...

  • jdbc预编译对象,事务,数据库连接池

    jdbc预编译对象 原始的jdbc使用声明对象进行sql的执行,对于执行的sql参数使用字符串拼接的形式进行添加 Class.forName("com.mysql.jdbc.Driver&q ...

  • 【MyBatis入门到入土精讲】MyBatis介绍

    在web应用中,与数据库的交互是永恒的课题.回顾过去,在ORM框架出现之前,我们采用原始的JDBC编程与数据库打交道:从数据库获取数据,再将数据映射成对象:或者将对象映射为表的字段,将用户想要保存的信 ...

  • java学习——58.java.swing学习

    AWT组件不是跨平台的,从外观到控制都依赖本地操作系统,所以称为重型组件.它会造成在不同的操作系统中会有不同的外观显现,所以现在均推荐使用Swing组件. Swing组件扩展了AWT,AWT中有的组件 ...

  • 详细的Java学习路线+Java每个阶段核心知识点+Java工作就业方向

    第一阶段:Java基础 掌握基本语法.面向对象.常用类.正则.集合.Io流.多线程.Nio.网络编程.JDK新特性.函数式编程. 可胜任工作(工作方向):数据采集与嵌入式交互,负责公司业务平台开发和维 ...

  • Java学习-126.2048代码

    本篇帖的是按钮的代码. 因为按钮比较多,包括菜单项的动作,为了区分,我用了两个内部类来实现这两部分代码. //本类是Game_2048类的内部类,用来实现上.下.左.右四个按钮,以及重新开始和退出游戏 ...

  • Java学习—125.2048代码

    本篇帖的是部分动作代码. 每个方法前都有注释说明本方法的功能. //随机选取一个位置,并填入数字2.如果此位置中已有数字,那么换一个位置. public void rule(){ x=ran.next ...

  • Java学习—124.2048代码

    游戏的主界面的代码在类game_2048中. 本类主要包括两个方面: 一是布局. 二是动作,按钮的动作. 其中,动作又有菜单动作,按钮动作.而按钮动作又有多方面,在下一篇的代码中会有注释说明. 本篇帖 ...

  • Java学习-注解和反射

    注解 java.Annotation Annotation的作用:可以呗其他程序读取 Annotation的格式 注解是:@注释名 在代码中存在,还可以添加一些参数 ​@SuppressWarning ...

  • Java学习-多线程

    多线程 任务(Task).进程(Process).线程(Thread) 进程的创建 1.继承Thread类 自定义线程类继承Thread类 重写run()方法,编写线程执行体 创建线程对象,调用sta ...

  • Java学习-Mybatis

    Mybatis Maven依赖: <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependenc ...

  • Java 学习笔记

    您对计算机(电脑)有了解吗? 计算机组成 系统软件 直接和硬件交互的软件叫系统软件,例如 win7.win8.Linux.mac等操作系统 应用软件 通常在运行在系统软件上,也就是在系统软件上开发的软 ...