1.基本的数据库操作

这里连接数据库可以做成一个单独的utils类,我这里因为程序少就没有封装。

虽然现在jdbc被其他框架取代了,但这是框架的基础

如下:第一个是插入数据操作

package Databases;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; public class test0812 { public static void main(String[] args) throws Exception{
// TODO Auto-generated method stub
results();
}
public static void results() throws Exception {
String driver="com.mysql.jdbc.Driver";
String url="jdbc:mysql://localhost:3306/my";
String user="root";
String pwt="";
Connection con=null; Class.forName(driver);
con=DriverManager.getConnection(url, user, pwt);
Statement sta=con.createStatement();
// String sql="select * from user";
// ResultSet re=sta.executeQuery(sql);
// while(re.next()) {
// String username=re.getString("username");
// String password=re.getString("password");
// System.out.println(username+password);
// }
// 这是插入自增的处理指明对应的值,不然会报错
// String sql="insert into user(username,password) values('admin','123456')";
String sql="insert into user values('6','admins','1212')";
int n=sta.executeUpdate(sql);
System.out.println(n);
sta.close();
con.close();
}
}

2.查询的操作:

这里也附带一个查询package Databases;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement; public class TestMain { public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
insert();
}
public static void selects() throws Exception{
//要使用数据库先要连接数据库(jdbk),1.注册数据库
Class.forName("com.mysql.jdbc.Driver");
//us是自己建立的数据库名
String url="jdbc:mysql://localhost:3306/us"; String username="root"; String password=""; //连接数据库Connection中有一个方法 Connection con=DriverManager.getConnection(url,username,password); /** * 建立执行数据语句的平台 * Statement */

        Statement sta=con.createStatement();
/**
* 执行SQL查找
* executeQuery
*/
String sql="select * from us";
ResultSet rs=sta.executeQuery(sql);
/**
* ResultSet遍历用迭代器的
* 这里不需要直接用迭代器的,可以
* 直接用rs,next()实现
*/
while(rs.next()){
String user=rs.getString("username");
String pwd=rs.getString("password"); System.out.println(user+pwd);
} sta.close();
con.close();
}
public static void insert()throws Exception{
/**
* 连接数据库
*/
Class.forName("com.mysql.jdbc.Driver");
String url="jdbc:mysql://localhost:3306/us";
String names="root";
String price="";
Connection con=DriverManager.getConnection(url,names,price);
/**
* 建立执行数据语句的平台
* 双引号里再添加引号的时候用单引号或者用\隔开
*/
Statement sta=con.createStatement();
/**
* 执行添加sql语句 us是
*/
String sql="insert into us(?,?) values('durian','ds')";
int n=sta.executeUpdate(sql);
// 插入数据用的是executeUpdate()方法
/**
* 数据库的查询 * @throws Exception
*/
public static void select() throws Exception{
//要使用数据库先要连接数据库(jdbk),1.注册数据库
Class.forName("com.mysql.jdbc.Driver"); String url="jdbc:mysql://localhost:3306/us";
String names="root";
String price="";
//连接数据库Connection中有一个方法
Connection con=DriverManager.getConnection(url,names,price);
/**
* 建立执行数据语句的平台
* Statement
*/
Statement sta=con.createStatement();
/**
* 执行SQL查找
* executeQuery user是表名
*/
String sql="select * from user";
ResultSet rs=sta.executeQuery(sql);
// 查找用的是executeQuery()
/**
* ResultSet遍历用迭代器的
* 这里不需要直接用迭代器的,可以
* 直接用rs,next()实现
*/
while(rs.next()){
// 这里的names要和数据库中的名字要相对应,否则报错
System.out.println(rs.getString("names")+" "+rs.getString("price")+" "+rs.getString("number"));
}
sta.close();
con.close();
}
}
3.用动态方法添加数值得用法:这是和上面的程序是分开的没有任何联系
这是添加类
3.1
package Databases_1;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Scanner; public class FatherClass {
/**
* 添加3个商品的信息
*/
private String names;
private String price;
private String num; public String getNames() {
return names;
}
public void setNames(String names) {
this.names = names;
}
public String getPrice() {
return price;
}
public void setPrice(String price) {
this.price = price;
}
public String getNum() {
return num;
}
public void setNum(String num) {
this.num = num;
}
private Statement sta;
private Connection con; public Statement getSta() {
return sta;
}
public void setSta(Statement sta) {
this.sta = sta;
}
public Connection getCon() {
return con;
}
public void setCon(Connection con) {
this.con = con;
}
/**
* 设置了3个常量
*/
private static final String URI = "jdbc:mysql://localhost:3306/us";
private static final String USER = "root";
private static final String PASS = ""; public static String getUri() {
return URI;
}
public static String getUser() {
return USER;
}
public static String getPass() {
return PASS;
} /**
* 数据库常用方法
* @throws Exception
*/
Scanner in=new Scanner(System.in);
public void numbers() throws Exception {
//要使用数据库先要连接数据库(jdbk),1.注册数据库
Class.forName("com.mysql.jdbc.Driver");
//连接数据库Connection中有一个方法
setCon(DriverManager.getConnection(URI,USER,PASS));
/*con=DriverManager.getConnection(URI,USER,PASS);*/
/**
* 建立执行数据语句的平台
* Statement
*/
setSta(getCon().createStatement());
/*sta=con.createStatement();*/
}
/**
* 添加的方法
*/
public void inserts() throws Exception{
System.out.println("请输入你要添加的商品名称");
names=in.next();
System.out.println("请输入商品的价格");
price=in.next();
/*setPrice(in.next());*/
System.out.println("请输入商品数量");
num=in.next();
/*setNum(in.next());*/
numbers();
/**
* 执行添加sql语句
*/
String sql="insert into user values('"+names+"','"+price+"','"+num+"')";
int n=sta.executeUpdate(sql);
System.out.println("添加成功");
sta.close();
con.close();
}
/**
* 删除的方法
*/
public void delete() throws Exception{ numbers();
System.out.println("请输入你要删除的商品名称");
names=in.next();
String sql="delete into user where names='"+names+"'";
System.out.println("删除成功");
select();
} /**
* 修改的方法
*/
// public void updata() throws Exception {
// numbers();
// System.out.println("请输入你要修改的商品信息(1.修改商品名称 2.修改商品价格 3.修改商品数量)");
// int n=in.hashCode();
// switch (n) {
// case 1:
// System.out.println("你要修改成的");
// break;
// case 2:
//
// break;
// case 3:
//
// break;
//
// }
// }
/**
* 查找的方法
*/
public void select() throws Exception{ numbers();
/**
* 执行SQL查找
* executeQuery
*/
String sql="select * from user";
ResultSet rs=sta.executeQuery(sql);
/**
* ResultSet遍历用迭代器的
* 这里不需要直接用迭代器的,可以
* 直接用rs,next()实现
*/
while(rs.next()){
System.out.println(rs.getString("names")+" "+rs.getString("price")+" "+rs.getString("number"));
}
sta.close();
con.close();
} }

3.2我这里设置了一个验证的效果:

package Databases_1;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Scanner;
/**
* 登陆系统
* @author xixu
*
*/
public class Login {
private String us;
private String pw; public void Scanners() {
Scanner in=new Scanner(System.in);
System.out.println("请输入登陆的超市账号");
us=in.next();
System.out.println("请输入登陆的密码");
pw=in.next();
} public boolean selects() throws Exception{
Scanners(); //要使用数据库先要连接数据库(jdbk),1.注册数据库
Class.forName("com.mysql.jdbc.Driver"); String url="jdbc:mysql://localhost:3306/us";
String username="root";
String password="";
//连接数据库Connection中有一个方法
Connection con=DriverManager.getConnection(url,username,password);
/**
* 建立执行数据语句的平台
* Statement
*/
Statement sta=con.createStatement();
/**
* 执行SQL查找
* executeQuery
*/
String sql="select * from us";
ResultSet rs=sta.executeQuery(sql);
/**
* ResultSet遍历用迭代器的
* 这里不需要直接用迭代器的,可以
* 直接用rs,next()实现
*/
while(rs.next()){
String user=rs.getString("username");
String pwd=rs.getString("password");
if(us.equals(user)&&pw.equals(pwd)) {
return true;
}
} sta.close();
con.close();
return false;
}
}
3.3测试类

package Databases_1;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement; public class Mains { public static void main(String[] args) throws Exception{
Login lo=new Login();
boolean s=lo.selects();
if(s) { System.out.println("登陆成功");
FatherClass fa=new FatherClass();
fa.inserts();
/*fa.select();
fa.delete();*/ }
else {
System.out.println("你的账号输入有误,请核对好账号密码");
} }
}



 

 

jdbc最基础的mysql操作的更多相关文章

  1. jdbc基础 (一) MySQL的简单使用

    前段时间学习了jdbc,正好利用这几篇文章总结一下. JDBC 可做三件事:与数据库建立连接.发送操作数据库的语句并处理结果. 而程序首先要做的就是加载数据库驱动,这里我使用的是mysql: Stri ...

  2. 着重基础之—MySql 不能遗忘的索引操作

    着重基础之—MySql 不能遗忘的索引操作 关于MySql索引的基础知识我就不在这里写了,我不太想当信息的搬运工. 技巧分享:Workbench 作为一款专为MySQL设计的ER/数据库建模工具.除了 ...

  3. (2.7)Mysql之SQL基础——表的操作与查看

    (2.7)Mysql之SQL基础——表的操作与查看 搜索关键字:mysql表操作,comment注释操作,mysql临时表 0.临时表 create temporary table 1.创建表(在in ...

  4. Java JDBC的基础知识(三)

    在前面的Java JDBC的基础知识(二)和(三)中,主要介绍JDBC的原理和简单的应用过程.尤其在(二)中,可以发现代码进行多次try/catch,还有在前面创建连接等过程中好多参数我都给写定了. ...

  5. Java JDBC的基础知识(二)

    在我的上一篇Java JDBC的基础知识(一)中,最后演示的代码在关闭资源的时候,仅仅用了try/catch语句,这里是有很大的隐患的.在程序创建连接之后,如果不进行关闭,会消耗更多的资源.创建连接之 ...

  6. Java JDBC的基础知识(一)

    一.为什么引入JDBC 在学习JDBC之前,抛开它的概念,我先按照我的理解解释一下,为什么要引入JDBC.在我看来,引入JDBC跟我之前学过的引入JVM(Java虚拟机)有些相似之处.当然,关于JVM ...

  7. 使用JDBC进行数据库的事务操作(1)

    本篇讲述数据库中非常重要的事务概念和如何使用MySQL命令行窗口来进行数据库的事务操作.下一篇会讲述如何使用JDBC进行数据库的事务操作. 事务是指数据库中的一组逻辑操作,这个操作的特点就是在该组逻辑 ...

  8. 使用JDBC对数据库实现批处理操作

    本篇讲述如何使用JDBC对数据库实现批处理操作.很多时候单条SQL命令不能满足我们的需求,我们需要对数据库一次实现很多操作,需要发送一批SQL命令给数据库执行. 而JDBC也提供了相应的方法给我们实现 ...

  9. JDBC增删改数据库的操作

    JDBC入门及简单增删改数据库的操作 一.JDBC的引入 1.JDBC的概念 JDBC:Java Database Connection,表示数据库连接(任何数据库都支持JDBC的连接),是一个独立于 ...

随机推荐

  1. URL工具类

    UrlUtils = { /** * 判断url是否存在(存在跨域问题) * @param {String} url */ isTrueUrl: function(_url) { result = f ...

  2. javascript实现数据结构: 树和二叉树,二叉树的遍历和基本操作

    树型结构是一类非常重要的非线性结构.直观地,树型结构是以分支关系定义的层次结构. 树在计算机领域中也有着广泛的应用,例如在编译程序中,用树来表示源程序的语法结构:在数据库系统中,可用树来组织信息:在分 ...

  3. Android 应用开发 之通过AsyncTask与ThreadPool(线程池)两种方式异步加载大量数据的分析与对比--转载

     在加载大量数据的时候,经常会用到异步加载,所谓异步加载,就是把耗时的工作放到子线程里执行,当数据加载完毕的时候再到主线程进行UI刷新.在数据量非常大的情况下,我们通常会使用两种技术来进行异步加载,一 ...

  4. JSTL核心库

    1 out和set(重点) out <c:out value=”aaa”/> 输出aaa字符串常量 <c:out value=”${aaa}”/> 与${aaa}相同 < ...

  5. GitHub无法push的问题

    问题背景 换了台别人用过的电脑想要将文件push到github上,出现下面报错 remote: Permission to *****(我的)/gittest.git denied to *****( ...

  6. C# linq to sql

    参考文章地址:http://www.cnblogs.com/yubaolee/p/BestLinqQuery.html   以下是我自己的总结: 表结构: 本文全部代码基于:UserInfo与Clas ...

  7. mif文件C语言生成

    1:正弦波 用函数 sin (x * π/180°) /************************************************** 正弦波 mif 生成 ********** ...

  8. day5-基础 函数

     函数 函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不同的,具体区别,我们后面会讲,编程中的函数在英文中也有很多不同的叫法.在BASIC中叫做subroutine(子过程或子程序 ...

  9. vue.js--基础 数据的双向绑定

    所谓双向绑定:就是改变modle,就会改变view,改变view,也会改变modle 下面案例,点击getMthod(),获取msg的内容,在点击setMthod()改变msg的内容,你会发现H1的值 ...

  10. Hibernate Validator数据校验框架常用注释

    使用前先配置maven,加入依赖: <dependency> <groupId>org.hibernate</groupId> <artifactId> ...