-----连接数据库

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. Day3-递归函数、高阶函数、匿名函数

    一.递归函数 定义:函数内部可以调用其它函数,如果调用自身,就叫递归. 递归特性: 1.必须有结束条件退出: >>> def calc(n): ... print(n) ... re ...

  2. nginx+tomcat+session共享(转)

    1 起因   最近对新开发的web系统进行了压力测试,发现tomcat默认配置下压到600人的并发登录首页响应速度就有比较严重的影响,一轮出现2000多个的 500和502错误.我把登录的时间统计做了 ...

  3. 029 hibernate抓取策略

    实例A引用实例B,B如果是代理的话(比如多对一关联中):如果遍历A的查询结果集(假设有10条记录),在遍历A的时候,访问B变量,将会导致n次查询语句的发出!这个时候,如果在B一端的class上配置ba ...

  4. [oracle]Oracle数据库安全管理

    目录 +  1.数据库安全控制策略概述 +  2.用户管理 +  3.资源限制与口令管理 +  4.权限管理 +  5.角色管理 +  6.审计 1.数据库安全控制策略概述 安全性是评估一个数据库的重 ...

  5. [认证授权] 4.OIDC(OpenId Connect)身份认证授权(核心部分)

    0 目录 认证授权系列:http://www.cnblogs.com/linianhui/category/929878.html 1 什么是OIDC? 看一下官方的介绍(http://openid. ...

  6. Vulkan Tutorial 07 Window surface

    操作系统:Windows8.1 显卡:Nivida GTX965M 开发工具:Visual Studio 2017 到目前为止,我们了解到Vulkan是一个与平台特性无关联的API集合.它不能直接与窗 ...

  7. javascript常见面试题

    闭包相关面试题:1. var a=0,b=0; function A(a){ A=function(b){console.log(a+b++);}; console.log(a); } A(1); A ...

  8. spring和hibernate的整合

    阅读目录 一.概述 二.整合步骤 1.大致步骤 2.具体分析 一.概述 Spring整合Hibernate有什么好处? 1.由IOC容器来管理Hibernate的SessionFactory 2.让H ...

  9. php中的数组遍历的几种方式

    [(重点)数组循环遍历的四种方式]   1.使用for循环遍历数组     conut($arr);用于统计数组元素的个数.     for循环只能用于遍历,纯索引数组!!!!     如果存在关联数 ...

  10. HashMap集合

    HashMap集合特点(用法与特点类似于HashSet集合): 1.无序,不允许重复(无序指元素顺序与添加顺序不一致): 2.底层数据结构是哈希表 3.HashMap内部对"键"用 ...