-----连接数据库

package connectdb;
import java.sql.*;
class Dbcon {
// 此处连接数据库,独立开一个类,以后操作数据库的每次连接就不用写这么多
public Connection getCon() {
Connection con = null;
try {
Class.forName("com.mysql.jdbc.Driver");
// 其中test是我们要链接的数据库,user是数据库用户名,password是数据库密码。
// 3306是mysql的端口号,一般是这个
// 后面那串长长的参数是为了防止乱码,免去每次都需要在任何语句都加入一条SET NAMES UTF8
String url = "jdbc:mysql://localhost/testdb?useUnicode=true&characterEncoding=utf8&useSSL=false";
String user = "root";
String password = "basketball";
con = DriverManager.getConnection(url, user, password);
System.out.println("sucess to connect db");
} catch (Exception e) {
System.out.println("fail to connect db");
e.printStackTrace();
}
return con;
}
}

增删改查操作:

package connectdb;

import java.sql.*;
import java.util.ArrayList;
public class applyDb {
//定义一个Student类,存到数据库数据类型是Student
class Student{
private String number;
private String name;
private String grade;
public Student(String num,String name,String grade){
this.number = num;
this.name = name;
this.grade = grade;
}
public String getNumber(){
return number;
}
public String getName(){
return name;
}
public String getGrade(){
return grade;
}
}
//定义一个ArrayList来存放数据
public ArrayList<Student> dataList(){
Student stu1 = new Student("1","李青","90");
Student stu2 = new Student("2","小明","60");
ArrayList<Student> stu = new ArrayList<Student>();
stu.add(stu1);
stu.add(stu2);
return stu;
}
//创建一个表
public void create(){
Connection con = new Dbcon().getCon();
try {
Statement s = con.createStatement();
String creatT = "create table student(number char(10),name char(15),grade char(15))";
s.executeUpdate(creatT);
s.close();
con.close();
System.out.println("sucess to create");
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("fail to create");
e.printStackTrace();
}
}
//插入数据
public void insert(){
Connection con = new Dbcon().getCon();
ArrayList<Student> arStu = dataList();
int length = arStu.size();
String number = "";
String name = "";
String grade = "";
PreparedStatement ps = null;
try {
for(int i = 0 ;i<length;i++){
number = arStu.get(i).number;
name = arStu.get(i).name;
grade = arStu.get(i).grade;
String sql = "insert into student values(?,?,?)";
ps = con.prepareStatement(sql);
ps.setString(1,number);
ps.setString(2, name);
ps.setString(3, grade);
ps.executeUpdate();
}
ps.close();
con.close();
System.out.println("sucess to insert");
} catch (SQLException e1) {
// TODO Auto-generated catch block
System.out.println("fail to insert");
e1.printStackTrace();
}
}
//删除数据
public void delete(){
Connection con = new Dbcon().getCon();
String sql = "delete from student where number=?";
PreparedStatement ps = null;
try {
ps = con.prepareStatement(sql);
ps.setString(1, "1");
ps.executeUpdate();
ps.close();
con.close();
System.out.println("sucess to delete");
} catch (SQLException e) {
System.out.println("fail to delete");
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//查找数据
public void query(){
Connection con = new Dbcon().getCon();
String sql = "select * from student where number=?";
PreparedStatement ps = null;
ResultSet rs = null;
try {
ps= con.prepareStatement(sql);
ps.setString(1,"2");
rs = ps.executeQuery();
while(rs.next()){
System.out.println(rs.getString("number"));
System.out.println(rs.getString("name"));
System.out.println(rs.getString("grade"));
}
ps.close();
con.close();
} catch (SQLException e) {
System.out.println("fail to query");
// TODO Auto-generated catch block
e.printStackTrace();
}

}
public static void main(String args[]){
applyDb db = new applyDb();
//db.create();
//db.insert();
//db.delete();
db.query();
}
}

java对mysql的增删改查的更多相关文章

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

    版权声明:本文为博主原创文章,未经博主允许不得转载. Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类 ...

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

    java连接数据库的代码基本是固定的,步骤过程觉得繁琐些,代码记起来对我来说是闹挺.直接上代码: (温馨提醒:你的项目提前导入连接数据库的jar包才有的以下操作 ) class DBConnectio ...

  3. java操作mysql的增删改查

    prepareStatement(sql)是statement的子类,比statement好用. 如果数据库中定义的是int值,那么sql语句中要把int单独提出来.如".....value ...

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

    使用软件:mysql.eclipse 链接步骤: 1.注册驱动 2.创建一个连接对象 3.写sql语句 4.执行sql语句并返回一个结果或者结果集 5.关闭链接(一般就是connection.stat ...

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

    1. 连接数据库.得到数据库连接变量 注意连接数据库的时候 (1)打开DB Browser 新建一个Database Driver,注意加入Driver JARs的时候加入的包,我的是mysql-co ...

  6. Java实现mongodb原生增删改查语句

    Java实现mongodb原生增删改查语句 2018-03-16 自动化测试时,需校验数据库数据,为了快速自动化,在代码中用原生增删改查语句操作mongodb 结构 代码 0 pom.xml < ...

  7. 使用MySQL练习增删改查时因为版本问题出现连接错误

    使用MySQL练习增删改查时出现连接错误,错误提示如下: 2020-02-19 19:53:51.088 ERROR 16328 --- [reate-249798694] com.alibaba.d ...

  8. MySQL数据库(增删改查语句)

    MySQL数据库(增删改查语句)一.登录数据库:---->  mysql -uroot -proot;(对应用户名和密码)二.SQL语句:    数据定义语言DDL  用来定义数据库.表.列,关 ...

  9. python操作mysql数据库增删改查的dbutils实例

    python操作mysql数据库增删改查的dbutils实例 # 数据库配置文件 # cat gconf.py #encoding=utf-8 import json # json里面的字典不能用单引 ...

随机推荐

  1. 模仿下拉框datalist的jquery插件的一点小经验

    原本项目里是用h5的新属性data-list,但是这个下拉框的数据太多,而data-list似乎没有设置高度的地方,所以写了个小插件,期间也发现了一些bug,目前这个版本算是可以一用的版本,故写一下这 ...

  2. Mac OS 安装 Git 环境

    1. 在mac的终端上,输入git会提示安装git软件,确认安装.安装完成后打开终端,使用git --version或者which git命令查看安装版本,有就是安装成功了. 2. 创建一个全局用户名 ...

  3. 超声波 HC-SR04

    三.实验原理 1. 超声波传感器简介 超声波测距系统主要应用于汽车的倒车雷达.及机器人自动避障行走.建筑施工工地以及一些工业现场例如:液位.井深.管道长度等场合.超声波是一种在弹性介质中的机械振荡,有 ...

  4. javaWeb学习总结(4)- HttpServletResponse

    一.简介: Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象. request和response对象即然代表请求和 ...

  5. unity 判断是安卓还是IOS平台

    功能概述 储值功能,点击一个按钮(mSprites["Recharge"]),实现储值功能,在IOS平台上,该按钮下的功能全部隐藏,在安卓平台上正常显示按钮,实现相应功能 #if ...

  6. 关于IOS sourcetree 注册 2017最新hosts

    今天用sourcetree  git管理工具的时候,第一次打开发现需要注册. 在网上搜索了一下教程,发现现在新版本没有  (我同意协议)这个条款,这就尴尬.我以前没有sourcetree的账号. 试了 ...

  7. python爬虫从入门到放弃(四)之 Requests库的基本使用

    什么是Requests Requests是用python语言基于urllib编写的,采用的是Apache2 Licensed开源协议的HTTP库如果你看过上篇文章关于urllib库的使用,你会发现,其 ...

  8. java编程之泛型

    java泛型实现了"参数化类型"的概念,所谓"参数化类型"是指将操作的数据类型指定为一个参数,这点在容器中用的最多,例如:List<String> ...

  9. 深度解析PHP数组函数array_chunk

    array_chunk是PHP中的一个数组分割函数,是将一个数组分割为多个数组块 我们可以把它理解卖豆腐的商人把一整块大豆腐切割为一个一个的小块来进行售卖 这个函数需要三个参数: 被切割的数组(必需) ...

  10. 防火墙上开放Oracle服务端口1521的方法

    近来由于工作需要,在Windows XP平台上安装了Oracle9i数据库作为测试之用,一切正常.但当客户机连接服务器时却总是超时,我首先想到了防火墙,当我打开1521端口时,连接操作仍然失败.我又怀 ...