jdbc连接Mysql数据库,增删改查

package util;

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

public class DbManager {
public static final String url="jdbc:mysql://localhost/jdbctest";
public static final String name="com.mysql.jdbc.Driver";
public static final String user="root";
public static final String password="123456";

public static Connection conn=null;
public static Connection getConnection(){
try {
Class.forName(name);
System.out.println("驱动加载成功!");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("驱动加载失败!");
e.printStackTrace();
}
try {
conn=DriverManager.getConnection(url,user,password);
System.out.println("建立连接成功!");
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("建立连接失败!");
e.printStackTrace();
}
return conn;
}

public static void release(Statement stm,Connection conn){
if(stm!=null){
try {
stm.close();
System.out.println("statement 释放成功!");
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("statement 释放失败!");
e.printStackTrace();
}
stm=null;
}

if(conn!=null){
try {
conn.close();
System.out.println("断开连接成功!");
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("断开连接失败!");
e.printStackTrace();
}
conn=null;
}
}

public static void release(ResultSet rs,Statement stm,Connection conn){
if(rs!=null){
try {
rs.close();
System.out.println("rs释放成功!");
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("rs释放失败!");
e.printStackTrace();
}
rs=null;
}
release(stm,conn);
}
}

package bean;

import java.util.Date;
import java.sql.Timestamp;

public class Student {
private int id;
private String name;
private int grade;
private Date birthday;
private Date f_birthday;

public Student(int id,String name,int grade,Date birthday,Date f_birthday){
this.setId(id);
this.setName(name);
this.setBirthday(birthday);
this.setF_birthday(f_birthday);
this.setGrade(grade);
}

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getGrade() {
return grade;
}

public void setGrade(int grade) {
this.grade = grade;
}

public Date getBirthday() {
return birthday;
}

public void setBirthday(Date birthday2) {
this.birthday = birthday2;
}

public Date getF_birthday() {
return f_birthday;
}

public void setF_birthday(Date f_birthday) {
this.f_birthday = f_birthday;
}

}

package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.SimpleDateFormat;

import bean.Student;
import util.DbManager;

public class StudentDAO {
public static void insert(Student stu){
Connection conn=DbManager.getConnection();
String sql="insert into student(id,name,grade,birthday,f_birthday) values(?,?,?,?,?)";
try {
PreparedStatement stm=conn.prepareStatement(sql);
stm.setInt(1, stu.getId());
stm.setString(2, stu.getName());
stm.setInt(3, stu.getGrade());
//转化为字符串进行插入
SimpleDateFormat sdff=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String strr=sdff.format(stu.getBirthday());
stm.setString(4,strr);
//stm.setTimestamp(4, new java.sql.Timestamp(stu.getBirthday().getTime()));//把java.util.Date转换成java.sql.Timestamp
//转化为字符串进行插入
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
String str=sdf.format(stu.getF_birthday());
stm.setString(5, str);
//stm.setDate(5, new java.sql.Date(stu.getF_birthday.getTime()));//把java.util.Date转换成java.sql.Date
stm.execute();
DbManager.release(stm, conn);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

public static void delete(Student stu){
Connection conn=DbManager.getConnection();
String sql="delete from student where id=?";
try {
PreparedStatement stm=conn.prepareStatement(sql);
stm.setInt(1, stu.getId());
stm.execute();
System.out.println("删除成功!");
DbManager.release(stm, conn);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

public static void update(Student stu){
Connection conn=DbManager.getConnection();
//String sql="update student set name=? grade=? birthday=? f_birthday=? where id=?";
String sql="update student set name=?,birthday=? where id=?";
try {
PreparedStatement stm=conn.prepareStatement(sql);
stm.setString(1, stu.getName());
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String str=sdf.format(stu.getBirthday());
stm.setString(2, str);
stm.setInt(3, stu.getId());
stm.executeUpdate();
System.out.println("更新成功!");
DbManager.release(stm, conn);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

public static void query(Student stu){
Connection conn=DbManager.getConnection();
String sql="select * from student where id =?";
try {
PreparedStatement stm=conn.prepareStatement(sql);
stm.setInt(1,stu.getId());
ResultSet rs=stm.executeQuery();
while(rs.next()){
System.out.println(rs.getInt(1)+" "+rs.getString(2)+" "+rs.getInt(3)+" "+rs.getTimestamp(4)+" "+rs.getDate(5));
}
System.out.println("查询成功!");
DbManager.release(rs,stm, conn);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

}

package Test;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Date;

import bean.Student;
import util.DbManager;
import dao.StudentDAO;
public class Test {

public static void main(String[] args) {
// TODO Auto-generated method stub
Student stu=new Student(2018,"qifengle",87,new Date(),new Date());
//StudentDAO.insert(stu);//插入成功
//StudentDAO.delete(stu);//删除成功
stu.setBirthday(new Date());
StudentDAO.update(stu);
//StudentDAO.query(stu);//查询成功

}
}

原文地址:https://www.cnblogs.com/Reqifengle/p/9011856.html

时间: 2024-10-10 15:21:06

jdbc连接Mysql数据库,增删改查的相关文章

Java连接MySQL数据库增删改查通用方法

Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类下面写好多方法,要是多个数据库,就要写多个类多个方法,导致代码编写太过于繁琐,所以为了改变这样的繁琐,我将连接数据库的方法进行了一系列的封装,使用户传入一个对象值Object就可以得到想要的. 我在之前写过一篇普通的Java连接MySQL数据库,大家可以看看,以便对比参考之后就知道差距了  数据库--MySQL-->Java篇 接下来我给大家讲讲如何将

jsp-2 简单的servlet连接mysql数据库 增删改查

连接mysql数据库的操作 有增删改查 用的包有 commons-lang3-3.5 mysql-connector-java-5.1.40-bin 但是实际上也就是 数据查询和数据处理两种 所以对数据库的操作DAO只有两种方法 package com.javaweb.dao; import java.lang.reflect.Field;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.Re

java连接mysql数据库增删改查操作记录

1. 连接数据库,得到数据库连接变量 注意连接数据库的时候 (1)打开DB Browser 新建一个Database Driver,注意添加Driver JARs的时候添加的包,我的是mysql-connector-java-5.0.3-bin.jar (2)要将数据库jar包拷贝到工程下的WEB-INF\lib下 import java.sql.Connection;//java包 public class DBConnection { private String dbDriver="com

mysql数据库增删改查

mysql数据库增删改查增:create database DBname charset gbk; 删:drop database DBname; 改:alter database DBname charset gbk; 改名:如下查:show databases;(show databases like '%name';)查:查看数据库定义:show create database 库名; (改名)百度了下大概就这三种方法: 1. RENAME DATABASE db_name TO new_

jdbc之实现数据库增删改查的最基本操作

关于JDBC 之前很早学过jdbc了,可是学的不够扎实,连接MySQL总是出问题,于是这两天又把jdbc好好学了一遍.  定义:JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成.JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序. JDBC库中所包含的API通常与数据库使用于: 连接到数据库 创建SQ

java连接mysql以及增删改查操作

java连接数据库的代码基本是固定的,步骤过程觉得繁琐些,代码记起来对我来说是闹挺.直接上代码: (温馨提醒:你的项目提前导入连接数据库的jar包才有的以下操作 ) 1 class DBConnection{ 2 3 // 驱动类名 4 String driver="com.mysql.jdbc.Driver"; 5 // URL格式,最后为数据库名 6 String url="jdbc:mysql://localhost:3306/javaTest?useUnicode=t

安卓版php服务器的mysql数据库增删改查简单案例

index.php文件: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html

ASP.NET C# 连接 Oracle数据库增删改查,事务

一.知识介绍 ①ASP.NET 使用的是MVC模式,开发工具Visual studio ,语言C# ②Oracle是比较重型的数据库,这里主要介绍连接数据库,对数据进行具体的使用 ③Visual Studio连接数据库都是需要dll文件,方法相似. 二.步骤 ①新建一个ASP项目 ②右击项目或引用,管理Nuget程序包.搜索Oracle,下载Oracle的dll依赖 ③由于数据库的增删改查常用,放在一个方法中.新建了类库,把方法放入类库中,在项目中需添加引用. 1 using Oracle.Da

JDBC之Java连接mysql实现增删改查

使用软件:mysql.eclipse 链接步骤: 1.注册驱动 2.创建一个连接对象 3.写sql语句 4.执行sql语句并返回一个结果或者结果集 5.关闭链接(一般就是connection.statement.setresult)这三个连接对象,关闭顺序一般是(setresult    --->  statement  -->  setresult  ) 一.直接连接方法:(这种方法就是讲sql语句和结果所有的步骤写在一起) 不建议使用该方法 1 public static void mai

MySQL数据库增删改查SQL语句(2018整理集合大全)

查看数据库 show databases; 使用数据库 use 数据库名;创建数据库 CREATE DATABASE 数据库名;删除数据库 DROP DATABASE 数据库名;创建表 create table 表名(    列名1 类型(长度) [约束],    列名2 类型(长度) [约束],    ……);长度区别int类型带长度:不影响存取值,即使设定的值超出了长度的范畴,也能存,如果没有达到设定的长度,则使用空格自动填充到设定的长度char类型:不可变字符,设定的长度就是规定当前字段能