JDBC 连接sql server Demo

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介: JDBC 连接sql server Demo

废话不多话,直接上代码了;这个demo我也是网上找的 稍微的修改了下;代码里面都有注释;

package com.example.democrud.democurd;
import java.sql.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class sqlserver {
    public static void main(String[] args) {
        test1();
     //   test2();
    }
    public static void test1(){
        //默认sql server 驱动类
        String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
        //此处localhost 为本地的地址  1433 默认端口  demo 为主表 的名字
        String dbURL = "jdbc:sqlserver://localhost:1433;databaseName=demo";
        String userName = "sa";            //sqlserver用户名
        String userPwd = "root";    //sqlserver用户密码
        try {
            Class.forName(driverName);   //加载sqlserver的驱动类
            System.out.println("sqlServer load success!");
        } catch (ClassNotFoundException a) {
            System.out.println("sqlServer load failed!");
            a.printStackTrace();
        }
        Connection dbcon = null;
        try {
            //处理与数据库的连接
            dbcon = DriverManager.getConnection(dbURL, userName, userPwd);
            Statement stmt = dbcon.createStatement();
            String sql = "select * from Demo";
            //ResultSet对象,其包含给定查询生成的数据
            ResultSet resultSet = stmt.executeQuery(sql);
            //获取执行的SQL语句的元数据
            ResultSetMetaData metaData = resultSet.getMetaData();
            //获取执行的SQL语句查询的列的个数
            int columnCount = metaData.getColumnCount();
            //获取表中的所有数据,字段 + 值
            List<Map<String, Object>> list1 = new ArrayList<>();
            List<Map<String, Object>> list2 = new ArrayList<>();
            List<Object> list3 = new ArrayList<>();
            //取出ResultSet中表的记录。如果可以取出则返回true,否则返回false
            while (resultSet.next()) {
                //数据
                Map<String, Object> row = new HashMap<>();
                //表结构--包含字段类型
                Map<String, Object> map = new HashMap<>();
                for (int i = 0; i < columnCount; i++) {
                    //字段
                    String columnLabel = metaData.getColumnLabel(i + 1);
                    //字段类型
                    String columnTypeName = metaData.getColumnTypeName(i + 1);
                    //值
                    Object value = resultSet.getObject(i + 1);
                    row.put(columnLabel, value);
                    map.put(columnLabel, columnTypeName);
                    list3.add(value);
                }
                list1.add(row);
                list2.add(map);
                System.out.println("获取到的key的值"+list2);
                System.out.println("获取到的value的值"+list1);
                System.out.println("单独获取V的值"+list3);
            }
            System.out.println("sqlServer connect success! sql server 连接成功");
            dbcon.close();
        } catch (SQLException e) {
            System.out.println("sqlServer connect failed!");
            e.printStackTrace();
        }
    }
    public static void test2(){
        String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
        String dbURL = "jdbc:sqlserver://120.27.229.213:65023;databaseName=davinci3";
        String userName = "sa";            //sqlserver用户名
        String userPwd = "BSa!67365021";    //sqlserver用户密码
        try {
            Class.forName(driverName);   //加载sqlserver的驱动类
            System.out.println("sqlServer load success!");
        } catch (ClassNotFoundException a) {
            System.out.println("sqlServer load failed!");
            a.printStackTrace();
        }
        Connection dbcon = null;
        try {
            //处理与数据库的连接
            dbcon = DriverManager.getConnection(dbURL, userName, userPwd);
            Statement stmt = dbcon.createStatement();
            String sql = "select * from display";
            //ResultSet对象,其包含给定查询生成的数据
            ResultSet resultSet = stmt.executeQuery(sql);
            //获取执行的SQL语句的元数据
            ResultSetMetaData metaData = resultSet.getMetaData();
            //获取执行的SQL语句查询的列的个数
            int columnCount = metaData.getColumnCount();
            //获取表中的所有数据,字段 + 值
            List<Map<String, Object>> list1 = new ArrayList<>();
            List<Map<String, Object>> list2 = new ArrayList<>();
            //取出ResultSet中表的记录。如果可以取出则返回true,否则返回false
            while (resultSet.next()) {
                //数据
                Map<String, Object> row = new HashMap<>();
                //表结构--包含字段类型
                Map<String, Object> map = new HashMap<>();
                for (int i = 0; i < columnCount; i++) {
                    //字段
                    String columnLabel = metaData.getColumnLabel(i + 1);
                    //字段类型
                    String columnTypeName = metaData.getColumnTypeName(i + 1);
                    //值
                    Object value = resultSet.getObject(i + 1);
                    row.put(columnLabel, value);
                    map.put(columnLabel, columnTypeName);
                }
                list1.add(row);
                list2.add(map);
                System.out.println(list1);
                System.out.println(list2);
            }
            System.out.println("sqlServer connect success!");
            dbcon.close();
        } catch (SQLException e) {
            System.out.println("sqlServer connect failed!");
            e.printStackTrace();
        }
    }
}

有疑问可留言;大家一起交流;


相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS&nbsp;SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/sqlserver
相关文章
|
2天前
|
Oracle Java 关系型数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
14 6
|
13天前
|
JSON 前端开发 Java
管理系统总结(前端:Vue-cli, 后端Jdbc连接mysql数据库,项目部署tomcat里)
管理系统总结(前端:Vue-cli, 后端Jdbc连接mysql数据库,项目部署tomcat里)
|
14天前
|
Java 关系型数据库 MySQL
JDBC连接数据库
JDBC连接数据库
|
26天前
|
SQL 安全 网络安全
IDEA DataGrip连接sqlserver 提示驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接的解决方法
IDEA DataGrip连接sqlserver 提示驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接的解决方法
63 0
|
27天前
|
SQL Java 数据库连接
数据库访问: JDBC是什么,如何使用它连接数据库?
JDBC是Java访问关系数据库的标准API,包含一组Java类和接口,如java.sql和javax.sql。要连接数据库,需先下载相应JDBC驱动,然后使用DriverManager.getConnection()方法。以下是一个连接MySQL数据库的示例代码片段,展示如何加载驱动、建立连接并关闭连接。注意替换代码中的数据库URL、用户名和密码。
12 3
|
2月前
|
SQL
SQL多表查询的几种连接方式
SQL多表查询时,主要使用以下几种连接方式
|
3月前
|
SQL 消息中间件 分布式数据库
flink sql问题之连接HBase报错如何解决
Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。本合集提供有关Apache Flink相关技术、使用技巧和最佳实践的资源。
200 0
|
3月前
|
SQL 网络协议 Java
【Java+SQL Server】前后端连接小白教程
【Java+SQL Server】前后端连接小白教程
26 0
|
4月前
|
SQL Java 关系型数据库
通过JDBC连接MySQL实现表的插入和查看语句
通过JDBC连接MySQL实现表的插入和查看语句
35 0
|
4月前
|
SQL
在SQL中连接和复杂操作
在SQL中连接和复杂操作
24 0