JDBC学习一 基础 一个简单的增删该查例子

2024-02-16 10:32

本文主要是介绍JDBC学习一 基础 一个简单的增删该查例子,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

jdbcUtil02.java

 

//单例模式
public final class jdbcUtil02 {
 static String url = "jdbc:mysql://localhost:3306/jdbc";
 static String username = "root";
 static String password = "root";
 
 //private static jdbcUtil02 instance = new jdbcUtil02();
 private static jdbcUtil02 instance= null;
 //构造私有化
 private jdbcUtil02(){
  
 }
 
 //提供一个公共的static方法
 public static jdbcUtil02 getInstance(){
  if (instance==null) {
   //延迟加载  使用的时候new
   //处理并发问题  可以加锁
   synchronized (jdbcUtil02.class) {
    instance = new jdbcUtil02();
   }
  }
  return instance;
 }
 
 public static Connection getConnection() throws SQLException {
  return DriverManager.getConnection(url, username, password);
 }
 
 public static void free(Statement st, Connection conn, ResultSet rs) {
  try {
   if (rs != null) {
    rs.close();
   }
  } catch (SQLException e) {
   e.printStackTrace();
  } finally {
   try {
    if (conn != null) {
     conn.close();
    }
   } catch (SQLException e2) {
    e2.printStackTrace();
   } finally {
    try {
     if (st != null) {
      st.close();
     }
    } catch (SQLException e2) {
     e2.printStackTrace();
    }
   }
  }
 }
}

 

 

package com.sg.test;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;

import org.junit.Test;

public class JdbcCRUDTest {
 // 查询
 @Test
 public void select() throws Exception {
  Connection conn = jdbcUtil02.getInstance().getConnection();
  Statement st = conn.createStatement();
  ResultSet rs = st.executeQuery("select * from user");

  while (rs.next()) {
   System.out.println("id:" + rs.getInt("id") + "\n name:"
     + rs.getString("name") + "\n age:" + rs.getInt("age")
     + "\n sex" + rs.getString("sex") + "\n brithday:"
     + rs.getDate("brithday"));
  }
  // 关闭资源
  jdbcUtil02.free(st, conn, rs);
 }
 //添加
 @Test
 public void insert() throws Exception {
  Connection conn = jdbcUtil02.getInstance().getConnection();
  Statement st = conn.createStatement();
  String sql = "insert into user values(4,'name1',20,'nan','1992-12-28')";
  int i = st.executeUpdate(sql);
  System.out.println("i = "+i);
  
 }
 //修改
 @Test
 public void update() throws Exception {
  Connection conn = jdbcUtil02.getInstance().getConnection();
  Statement st = conn.createStatement();
  String sql = "update user set age = 30 where id = 1";
  int i = st.executeUpdate(sql);
  
 }
 //删除
 @Test
 public void delete() throws Exception {
  Connection conn = jdbcUtil02.getInstance().getConnection();
  Statement st = conn.createStatement();
  String sql = "delete from user where id > 2";
  int i = st.executeUpdate(sql);
  
 }
 
}

这篇关于JDBC学习一 基础 一个简单的增删该查例子的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/714281

相关文章

SpringBoot集成Milvus实现数据增删改查功能

《SpringBoot集成Milvus实现数据增删改查功能》milvus支持的语言比较多,支持python,Java,Go,node等开发语言,本文主要介绍如何使用Java语言,采用springboo... 目录1、Milvus基本概念2、添加maven依赖3、配置yml文件4、创建MilvusClient

mysql的基础语句和外键查询及其语句详解(推荐)

《mysql的基础语句和外键查询及其语句详解(推荐)》:本文主要介绍mysql的基础语句和外键查询及其语句详解(推荐),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋... 目录一、mysql 基础语句1. 数据库操作 创建数据库2. 表操作 创建表3. CRUD 操作二、外键

Python基础语法中defaultdict的使用小结

《Python基础语法中defaultdict的使用小结》Python的defaultdict是collections模块中提供的一种特殊的字典类型,它与普通的字典(dict)有着相似的功能,本文主要... 目录示例1示例2python的defaultdict是collections模块中提供的一种特殊的字

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

Python基础文件操作方法超详细讲解(详解版)

《Python基础文件操作方法超详细讲解(详解版)》文件就是操作系统为用户或应用程序提供的一个读写硬盘的虚拟单位,文件的核心操作就是读和写,:本文主要介绍Python基础文件操作方法超详细讲解的相... 目录一、文件操作1. 文件打开与关闭1.1 打开文件1.2 关闭文件2. 访问模式及说明二、文件读写1.

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

springboot简单集成Security配置的教程

《springboot简单集成Security配置的教程》:本文主要介绍springboot简单集成Security配置的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录集成Security安全框架引入依赖编写配置类WebSecurityConfig(自定义资源权限规则

C#基础之委托详解(Delegate)

《C#基础之委托详解(Delegate)》:本文主要介绍C#基础之委托(Delegate),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 委托定义2. 委托实例化3. 多播委托(Multicast Delegates)4. 委托的用途事件处理回调函数LINQ

如何使用Python实现一个简单的window任务管理器

《如何使用Python实现一个简单的window任务管理器》这篇文章主要为大家详细介绍了如何使用Python实现一个简单的window任务管理器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 任务管理器效果图完整代码import tkinter as tkfrom tkinter i

C++中函数模板与类模板的简单使用及区别介绍

《C++中函数模板与类模板的简单使用及区别介绍》这篇文章介绍了C++中的模板机制,包括函数模板和类模板的概念、语法和实际应用,函数模板通过类型参数实现泛型操作,而类模板允许创建可处理多种数据类型的类,... 目录一、函数模板定义语法真实示例二、类模板三、关键区别四、注意事项 ‌在C++中,模板是实现泛型编程