1.连接数据库必要的步骤:

jdbc:

driver=com.mysql.jdbc.Driver
jdbcUrl=jdbc:mysql://localhost:3306/lxn
user=root
password=lxn123

oracle:

#driver=oracle.jdbc.driver.OricerDriver
#jdbcUrl=jdbc:oracle:thin:@localhost:1521:orcl
#user=system
#password=lxn123

2.连接数据库的两种方法,实现数据库的增删改查

package com.lanqiao.javatest;

import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.Date;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.util.Properties;

import org.junit.Test;

import com.mysql.jdbc.Statement;

public class TestDriverManager {
/*
* 连接数据库的方法:
* 1.使用DriverManager连接数据库
* 2.Driver连接:是一个接口,是一个本地实现的接口,能从其中获取数据库的驱动的链接
* */

//方法一:DriverManager方法,连接数据库

public void testDriverManager() throws Exception{
//连接数据库的四个要素:
String driverClass=null;
String jdbcUrl=null;
String user=null;
String password=null;

//读取类路径文件下的jdbc.properties
InputStream in=
getClass().getClassLoader().getResourceAsStream("jdbc.properties");
Properties properties=new Properties();
properties.load(in);//从输入流中读取文件

//依次获取properties中的文件
driverClass=properties.getProperty("driver");
jdbcUrl=properties.getProperty("jdbcUrl");
user=properties.getProperty("user");
password=properties.getProperty("password");

Class.forName(driverClass);//反射机制获取文件中的driverClass

//通过driverManager中的getConnection方法获取数据的连接
Connection conn=DriverManager.getConnection(jdbcUrl,user,password);
System.out.println(conn);
}

//方法二:使用driver接口连接数据库
//1.
public Connection getConnection() throws Exception{
//对数据库的连接使用者个,里面有Connection接口,实现数据的连接,并可以进行数据库的增删改查的操作
//连接数据里的四个必要步骤:
String driverClass=null;
String jdbcUrl=null;
String user=null;
String password=null;

//读取类路径文件下的jdbc.properties文件
InputStream in=getClass().getClassLoader().getResourceAsStream("jdbc.properties");
Properties properties=new Properties();
//从输入流中读取文件
properties.load(in);

//依次获取文件中的内容
driverClass=properties.getProperty("driver");
jdbcUrl=properties.getProperty("jdbcUrl");
user=properties.getProperty("user");
password=properties.getProperty("password");

//反射机制获取
@SuppressWarnings("unused")
Driver driver=(Driver)Class.forName(driverClass).newInstance();//获取运行时类的方法及属性

Properties info=new Properties();
info.put("user", "root");
info.put("password", "lxn123");
Connection conn=driver.connect(jdbcUrl, info);
return conn;
}

//测试testDriver()方法;
public void testDriver1() throws Exception{
System.out.println(getConnection());
}
/*
* 1.连接数据库之后对指定的数据库中的增加,删除,更改,查询的操作
* statement用于执行sql语句的对象;
* 通过Connection的stateStatement()方法来获取
* 同过executeUpdate(sql)可以执行sql语句
* 传入的sql语句可以是insect(插入),update(修改),delete(删除),但是不可以是select(查询)
* 2.需要注意的是:Connection,statement都是应用程序和数据库服务器的链接资源,使用后都要关闭;
* */

public void testStatement() throws Exception{//数据库的插入,删除,更改,查询需要的步骤;
//1.获取数据库的
Connection connn=getConnection();
//2.准备插入的sql语句

//将sql语句插入到在数据库中建立的表格中
//4.进行插入,删除,更改,查询的操作

//插入
String sql1="INSERT INTO CUSTOMER(NAME,EMALL,BIRTH)VALUES('pa','LJ','1932-2-12');";
//删除
String sql2="delete from customer where id=27";
//修改
String sql3="update customer set name='jiajia' where id=2564";
//获取sql语句的statement对象,调用statement对象的executeUpdate(sql),执行sql语句的插入
Statement statement=(Statement) connn.createStatement();
statement.executeUpdate(sql1);
statement.executeUpdate(sql2);
statement.executeUpdate(sql3);
//5关闭statement对象。
statement.close();
//3.关闭连接
connn.close();
}
//sql为数据库语句,这个为数据库的增删改的方法
public void testStatement1(String sql){
Connection conn=null;
Statement sta=null;
try {
conn=getConnection();
sta=(Statement) conn.createStatement();
sta.executeUpdate(sql);
} catch (Exception e) {
e.printStackTrace();
}finally{
if(conn!=null){
try {
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
if(sta!=null){
try {
sta.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
//数据库的查询方法
@Test
public void testResultSet(){
//获取指定的id,或name的属性记录值,并打印
Connection connection=null;
Statement statement=null;
ResultSet resultset=null;

try {
//1.获取Connection
connection=getConnection();

//2.获取Statement
statement=(Statement)connection.createStatement();

//3.准备sql语句
String sql="select id,name,email,birth from customer";

//4.执行查询,得到ResultSet
resultset=statement.executeQuery(sql);

//5.处置ResultSet
while(resultset.next()){
int id=resultset.getInt(1);
String name=resultset.getString(2);
String email=resultset.getString(3);
Date birth=resultset.getDate(4);
System.out.println(id+"--"+name+"--"+email+"--"+birth);
}

} catch (Exception e) {
// TODO: handle exception
}
//6.关闭数据库资源
finally{
release(connection,statement,resultset);
}
}

//关闭数据库资源的方法
public static void release(Connection conn,Statement sta,ResultSet rs){
if(conn!=null){
try {
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
if(sta!=null){
try {
sta.close();
} catch (Exception e) {
e.printStackTrace();
}
}
if(rs!=null){
try {
rs.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}

转载于:https://www.cnblogs.com/lxnlxn/p/5766189.html

数据库连接,实现增删改查操作具体步骤(全)相关推荐

  1. mysql mysqli 修改_php mysqli 增删改查操作

    数据库连接 $host = '127.0.0.1';//主机号 $dbuser = 'root';//数据库用户名称 $pwd = '123456';//数据库用户密码 $database = 'my ...

  2. java调用oracle删除,使用IDEA对Oracle数据库进行简单增删改查操作

    1.1 java中的数据存储技术 在java中,数据库存取技术可分为如下几类: 1.jdbc直接访问数据库 2.jdo(java data object)是java对象持久化的新的规范,也是一个用于存 ...

  3. Java+MyEclipse+Tomcat (六)详解Servlet和DAO数据库增删改查操作

    此篇文章主要讲述DAO.Java Bean和Servlet实现操作数据库,把链接数据库.数据库操作.前端界面显示分模块化实现.其中包括数据的CRUD增删改查操作,并通过一个常用的JSP网站前端模板界面 ...

  4. 实现对mysql增删改查_Java语言实现对MySql数据库中数据的增删改查操作的代码

    简单说操作的步骤: 1.连接数据库 2.将SQL语句发送到数据库 3.执行SQL语句 这里举个例子: 在一个数据库中有个students表,表中有学号(Id),姓名(Name),性别(Sex),地址( ...

  5. MyBatis批量的增删改查操作

    本文转载至http://blog.csdn.net/mahoking 前文我们介绍了MyBatis基本的增删该查操作,本文介绍批量的增删改查操作.前文地址:http://blog.csdn.net/m ...

  6. JDBC中用控制台简单对数据库进行增删改查操作(IDEA.2023)

    文章目录 前言 一.首先是每个操作共用的操作大纲 1.注册驱动 2.创建连接 3.编写SQL语句结果,动态值的部分使用?代替 4.创建prepareStatement,并且传入SQL语句的结果 5.占 ...

  7. 学生信息管理系统(连接数据库,面向对象的方法实现学生信息的增删改查操作)...

    ---------------------------------------------------------------------------------------------------- ...

  8. 国产化之路-统信UOS /Nginx /Asp.Net Core+ EF Core 3.1/达梦DM8实现简单增删改查操作

    引言 经过前期的准备工作,.net core 3.1的运行环境和WEB服务器已经搭建完毕,这里需要注意一下,达梦DM8数据库对于Entity Framework Core 3.1 的驱动在NuGet官 ...

  9. 利用Mybatis对数据库进行增删改查操作

    文章目录 mybatis模糊查找 先来了解一下 #{}和${}的使用 parameterType和resultType的使用 selectOne和selectList的使用 mysql自增主键返回 方 ...

最新文章

  1. WPF新手实践7:MVVM Light Toolkit(七、Messenger)
  2. XV6700刷evdo详细教程
  3. 平安、招行、工行、微众、网商们怎么都在布局卫星物联网?
  4. python实现 多叉树 寻找最短路径
  5. ES6公用分页组件的封装及应用举例
  6. 4、oracle数据库的查询基础
  7. js定时器和linux命令locate
  8. LwIP之动态内存堆
  9. MySQL Statement Cancellation Timer] but has failed to stop it.
  10. Python+numpy实现蒙特卡罗方法估计圆周率近似值
  11. 读取excel内容在网页上显示出来
  12. Grunt安装与入门
  13. Python——OpenCV形态学处理(膨胀与腐蚀)
  14. 改善代码设计 —— 处理概括关系(Dealing with Generalization)
  15. 十个必备的学习iOS开发的网站
  16. 链表排序python
  17. 将 Windows RE 安装到手工创建的 OEM 分区中
  18. html5视频自动轮播,HTML5教程 可自动轮播的旋转木马插件
  19. 请问add_mutually_exclusive_group函数什么意思?
  20. 【官方文档】Fluent Bit 1.8 官方文档

热门文章

  1. Debian Linux下的Python学习——入门
  2. 【转】Django 数据库的操作
  3. 化解恶劣情绪山人自有妙计
  4. java文件读写的基本类_java常用工具类(三)—— 文件读取的操作类
  5. vue 文字转语音mp3_阿里云tts 将文字转换成语音
  6. php7如何安装swoole,初学Swoole:PHP7安装Swoole的步骤
  7. Mysql 扩展性设计之数据切分、那么数据切分后会带来哪些问题呢?比如分布式事务、数据的一致性、垂直切分和水平切分应用场景
  8. 手机检测归属地 java_手机号归属地离线查询- Java
  9. PostgreSQL13逻辑备份pg_dump
  10. Python机器学习:梯度下降法009更多讨论