Java JDBC 数据库链接小结随笔

一、链接数据库的步骤

二、关于Statement  和  PrepareStatement 两者区别 用法

三、关于 ResultSet 的一些小结

四、自定义工具类的封装

五、一些异常的解释

一、链接数据库的步骤

  • 注册驱动
  • 获得链接对象
  • 创建sql容器
  • 执行sql语句
  • 查询操作
  • 关闭资源:

  

 package demo1;

 import java.sql.*;

 public class demo1 {
public static void main(String[] args) {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
String url="jdbc:mysql://127.0.0.1:3306/jdbc?serverTimezone=UTC";
/*目前手动改变 sql 服务器 时区报错问题*/
String username="root";
String password="root";
/* com.mysql.cj.jdbc.Driver */ Connection con= DriverManager.getConnection(url,username,password);
System.out.println(con);
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select * from test");
while (rs.next()){
int id=rs.getInt("id");
String name=rs.getString(2);
System.out.println("id:"+id+"-"+"name:"+name);
} }
catch (ClassNotFoundException e){
e.printStackTrace();
}
catch (SQLException e){
e.printStackTrace();
}
}
}

二、 关于Statement  和  PrepareStatement 两者区别 用法

    PrepareStatement 继承自 Statement 接口  拥有Statement 中的方法

    execute()
   executeQuery()
   executeUpdate()

 

 package demo1;

 import Util.connectionUtil;

 import java.sql.*;

 public class TestDemo {
/*
* 1. prepareStatement Statement 区别
*
* 1)prepareStatement继承自 statement
* prepareStatement{ execute、 executeQuery 和 executeUpdate 已被更改以使之不再需要参数} * 2. 接口用法 * */ public static void main(String[] args) { //直接使用 Util 包下自定义的 链接数据库方法
Connection con=connectionUtil.getConnections("jdbc");
Statement stmt=null;
PreparedStatement ps=null; ResultSet resultSet=null;
ResultSet rs=null; String selectSql="select * from test";
try {
stmt=con.createStatement();
resultSet=stmt.executeQuery(selectSql); System.out.println("Statement 接口:");
while (resultSet.next()){
int id=resultSet.getInt("id");
String name=resultSet.getString("name");
System.out.println("id:"+id+"---"+"name:"+name);
} System.out.println("PrepareStatement 接口:"); /* PrepareStatement */
ps=con.prepareStatement(selectSql);
rs=ps.executeQuery();
while (rs.next()){
int id=rs.getInt("id");
String name=rs.getString("name");
System.out.println("id:"+id+"---"+"name:"+name);
} } catch (SQLException e) {
e.printStackTrace();
}
finally {
if(con!=null){
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}

基本能用PrepareStatement 就不用 Statement    尽量避开   ‘1’ or "1"="1"    1的情况

 也会比 Statement 更灵活  

   execute()   executeQuery()  executeUpdate()    这三个方法也不需要用参数  直接调用

   例:

      PrepareStatement>

       String sql="select * from test where id= ?";

        PreparedStatement ps=con.prepareStatement(sql);
        ps.setInt(1,1)         /* ? 相当于 占位符
         setInt(index,value); 来给占位符设置值
         
set数据类型(index,value);
      */
             ----------------------------------------------------------
      Statement>
        stmt=con.createStatement();
resultSet=stmt.executeQuery(selectSql);
 

  

三、关于 ResultSet 的一些小结

     ResultSet  结果集   接收一个二维的数组集

     关于ResultSet 的一些方法

        

boolean next()              将光标从当前位置向前移一行。
String  getString(int columnIndex)     获取此ResultSet对象的当前行中指定列的值
String  getString(String columnLabel)    获取此ResultSet对象的当前行中指定列的值

四、自定义工具类的封装

   

五、一些异常的解释

上述内容为 自学笔记  可自行参考

Java JDBC 数据库链接小结随笔的更多相关文章

  1. Java JDBC数据库链接

    好久没有编写有关数据库应用程序啦,这里回顾一下java JDBC. 1.使用Java JDBC操作数据库一般需要6步: (1)建立JDBC桥接器,加载数据库驱动: (2)连接数据库,获得Connect ...

  2. java JDBC 数据库链接

    1.准备环境搭建: myeclipse,sql2005,jdbc. 2.都下载完之后开始进行安装 ,前两个是属于数据库软件,正常安装即可(注意数据库登陆不要使用windows验证) <1> ...

  3. Java JDBC基础学习小结

    JDBC是一个Java应用程序接口,作用是封装了对数据库的各种操作.JDBC由类和接口组成,使用Java开发数据库应用都需要4个主要的接口:Driver.Connection.Statement.Re ...

  4. Java ——JDBC数据库编程

    数据库分类 关系型数据库:以表来存放数据的,数据与数据之间的关系通过表之间的连接体现 面向对象的数据库:保存的是对象本身 其它 数据库:数据库管理系统中创建一个个的保存数据的单位 数据是保存在数据库的 ...

  5. java jdbc数据库操作

    package shb.java.demo3; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQ ...

  6. java mysql数据库链接与资源关闭

    /** * Created by Clear on 2018/8/11. * here provide the kind of connections from mysql database,and ...

  7. Java JDBC数据库编程

    课程  Java面向对象程序设计 一.实验目的 掌握数据库编程技术 二.实验环境 1.微型计算机一台 2.WINDOWS操作系统,Java SDK,Eclipse开发环境,Microsoft SQL  ...

  8. JAVA JDBC 元数据分析小结

    纯干货: 获取数据库名称: /** * 获取数据库的名称 */ public void getDataBaseName() throws Exception { Connection con = DS ...

  9. java jdbc/ojdbc 链接oracle的三种方式

    方法一:使用service_name 连接oracle  jdbc:oracle:thin:@//:/<service_name> 例如: jdbc:oracle:thin:@//10.1 ...

随机推荐

  1. 经常使用的cmd命令

    ASSOC 显示或修改文件扩展名关联.ATTRIB 显示或更改文件属性.BREAK 设置或清除扩展式 CTRL+C 检查.BCDEDIT 设置启动数据库中的属性以控制启动加载.CACLS 显示或修改文 ...

  2. Layui之动态循环遍历出的富文本编辑器显示

    这篇记得是工作中的例子 描述: 平常的富文本显示都是根据静态的html获取id来显示,比如: <textarea class="layui-textarea" id=&quo ...

  3. 题解【POJ3252】Round Numbers

    Description The cows, as you know, have no fingers or thumbs and thus are unable to play Scissors, P ...

  4. HTML学习(6)段落

    HTML段落使用<p>标签定义,浏览器会自动地在段落的前后添加空行. 如果不希望产生空行,可以使用<br />换行标签. 在元素内容中,连续的空格会被浏览器认格式化为一个空格, ...

  5. js对象冒充实现的继承

    //人类 function Person(name) { this.name = name; this.showName = function () { console.log("my na ...

  6. 378. 有序矩阵中第K小的元素

    Q: A: //O(NK) class Solution { public: int kthSmallest(vector<vector<int>>& matrix, ...

  7. 2020最新版idea激活教程

    windows破解教程 首先下载jar包:(云盘链接发不上去,大家关注gzh"灰太狼学爪哇"回复idea获取)将其放到合适的文件夹(首选IDEA的同级目录)进行管理: 进入C盘 - ...

  8. 【一句话解释】docker and vm

    效果 在一个host上面运行多个os,达到快速部署以及充分利用资源的额目的 vm 虚拟机,会模拟一个完整的操作系统堆栈出来. 缺点开销大,优点,guest os 是一个完整的操作系统 根据hyperv ...

  9. 关于java中MD5加密(可直接使用)

    本文转自:http://www.cnblogs.com/solove/archive/2011/10/18/2216715.html 上部分是转载的关于字符串的加密,后半部分则比较全,包括字符串.文件 ...

  10. Servlet获取配置信息(ServletConfig)

    ServletConfig ServletConfig:当Servlet容器初始化Servlet时,Servlet容器会给Servlet的init方法传入一个ServletConfig.Servlet ...