首先在Mysql中有两个表fruit和login:

package com.zuoye;

import java.sql.*;

import java.util.*;

public class Test {

    public static String uid;
public static void main(String[] args)throws Exception{
Scanner sc = new Scanner(System.in);
System.out.println("用户名:");
uid =sc.nextLine();
System.out.println("密码:");
String pwd = sc.nextLine(); Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mydb?characterEconding=GBK","root","");
String sql ="select * from login where UserName=? and Password=?";
PreparedStatement p = conn.prepareStatement(sql);
p.setString(1, uid);
p.setString(2, pwd);
ResultSet rs = p.executeQuery(); boolean ok = rs.next();
if(ok){
System.out.println("欢迎您:"+rs.getString(2));
xuanxiang(); }
else{
System.out.println("用户名或密码有误"); }
main(args); conn.close(); }
public static void xuanxiang() throws Exception{ Scanner sc = new Scanner(System.in);
System.out.println("*******选项*******");
System.out.println("1.显示所有商品");
System.out.println("2.添加商品");
System.out.println("3.购买商品");
System.out.println("4.退出");
String a = sc.nextLine();
if(a.equals("1")){
liebiao();
xuanxiang(); }
else if(a.equals("2")){
tianjia();
xuanxiang();
}
else if(a.equals("3")){
goumai();
xuanxiang(); }
else{
return;
} } public static void liebiao() throws Exception{
Class.forName("com.mysql.jdbc.Driver");
Connection conn1 = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mydb?characterEncoding=GBK","root","");
String sql1 = "select * from fruit";
Statement state1 = conn1.createStatement();
ResultSet rs1 = state1.executeQuery(sql1);
while(rs1.next()){
System.out.print(rs1.getString(1)+"\t");
System.out.print(rs1.getString(2)+"\t");
System.out.print(rs1.getString(3)+"\t");
System.out.print(rs1.getString(4)+"\t");
System.out.print(rs1.getString(5)+"\t");
System.out.print(rs1.getString(6)+"\n");
}
conn1.close();
}
public static void tianjia() throws Exception{
Scanner sc =new Scanner(System.in);
System.out.println("请输入编号:");
String bh =sc.nextLine();
System.out.println("请输入品种:");
String pz =sc.nextLine();
System.out.println("请输入价格:");
double jg =Double.parseDouble(sc.nextLine());
System.out.println("请输入产地:");
String cd =sc.nextLine();
System.out.println("请输入数量:");
int sl=Integer.parseInt(sc.nextLine());
System.out.println("请输入图片地址:");
String dz =sc.nextLine(); Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mydb?characterEconding=GBK","root","");
String sql ="insert into fruit values(?,?,?,?,?,?)";
PreparedStatement p = conn.prepareStatement(sql);
p.setString(1, bh);
p.setString(2, pz);
p.setDouble(3, jg);
p.setString(4, cd);
p.setInt(5, sl);
p.setString(6, dz);
p.executeUpdate(); conn.close();
}
public static void goumai() throws Exception{ Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mydb?characterEncoding=GBK","root","");
Scanner sc = new Scanner(System.in);
System.out.println("购买什么水果");
String pz = sc.nextLine();
System.out.println("买多少");
int gs = Integer.parseInt(sc.nextLine());
String sql1 ="select * from fruit where Name=?";
PreparedStatement p1 = conn.prepareStatement(sql1);
p1.setString(1, pz);
ResultSet rs2 = p1.executeQuery();
double s = 0;
while(rs2.next()){
s =(rs2.getDouble(3)*gs);
System.out.println(s);
}
String sql2="update fruit set Numbers = Numbers-? where Name =?";
PreparedStatement p2 = conn.prepareStatement(sql2);
p2.setInt(1, gs);
p2.setString(2, pz);
p2.executeUpdate(); String sql3="update login set Account = Account-? where UserName =?";
PreparedStatement p3 = conn.prepareStatement(sql3);
p3.setDouble(1, s);
p3.setString(2, uid);
p3.executeUpdate(); conn.close();
}
}
用户名:
lisi
密码:
666666
欢迎您:李四
*******选项*******
1.显示所有商品
2.添加商品
3.购买商品
4.退出
1
k001 苹果 2.40 烟台 87 image/0.gif
k002 菠萝 1.40 广东 90 image/1.gif
k003 桔子 2.40 福州 90 image/2.gif
k004 葡萄 2.40 新缰 90 image/3.gif
k005 樱桃 2.40 青岛 90 image/4.gif
k006 桃子 2.40 花果山 90 image/5.gif
k007 香蕉 2.40 济南 90 image/6.gif
*******选项*******
1.显示所有商品
2.添加商品
3.购买商品
4.退出

Java伪界面操作数据库的小实例的更多相关文章

  1. SQL语言(二) java怎样连接操作数据库中的数据

    import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.S ...

  2. 分享一个以前写的基于C#语言操作数据库的小框架

    一:前言 这个是以前写的操作MySQL数据库的小型框架,如果是中小型项目用起来也是很不错的,里面提供Filter.ModelPart.Relationship等机制实现操作数据库时的SQL语句的拼接和 ...

  3. java中如何操作数据库(增删改查)

    EntityManager 是用来对实体Bean 进行操作的辅助类.他可以用来产生/删除持久化的实体Bean,通过主键查找实体bean,也可以通过EJB3 QL 语言查找满足条件的实体Bean.实体B ...

  4. java链接并操作数据库

    链接准备 MySQL数据库驱动(连接器).mysql-connector-java-x.x.xx.jar会在MySQL安装时提供,若Mysql是默认安装路径,则连接器在:C:\Program File ...

  5. Mysql数据库基础小实例 学员管理系统菜单

    package test; import java.sql.*; import java.util.Scanner; public class testSql002_StudentTest { /** ...

  6. Java之JDBC操作数据库

    DBC JDBC就是一套接口,真正执行的是jar包里得实现类,通过泛型对象来执行实现类里的方法. 步骤: ###1.导入驱动jar包到工程中 ###2.编写代码注册驱动,我们要让程序知道用的是哪个驱动 ...

  7. JAVA连接、操作数据库的DBHelper

    工厂模式的DBHelper 1 import java.sql.Connection; 2 import java.sql.DriverManager; 3 import java.sql.Prepa ...

  8. 使用navicat for mysql图形界面操作数据库、使用node.js操作数据库写接口

    1.先启动MYSQL服务 2.打开navicat for mysql, 点击链接,输入如下的内容: 3.新建数据表 4.数据库(新建一个db.js) //数据库链接配置 module.exports ...

  9. Java程序要操作数据库,一定要使用JDBC技术吗?

    <!-- MySQL驱动,连接数据库用,由数据库厂商提供 --> <dependency> <groupId>mysql</groupId> <a ...

随机推荐

  1. 增删改查--windows下mysql客户端--表的使用

    >>>>>>>>>>>>>>>>>>>> selet 5种子句之where常用运 ...

  2. 中国剩余定理(Chinese Remainder Theorem)

    我理解的中国剩余定理的含义是:给定一个数除以一系列互素的数${p_1}, \cdots ,{p_n}$的余数,那么这个数除以这组素数之积($N = {p_1} \times  \cdots  \tim ...

  3. Linux usual cmd

    日常工作时常需要用到,在此备份一下: <1> top命令 第一行:当前系统时间为23:31:59,系统已经运行了127天又19小时47分钟,当前系统只要一个用户即root,load ave ...

  4. 图的基本遍历算法的实现(BFS & DFS)复习

    #include <stdio.h> #define INF 32767 typedef struct MGraph{ ]; ][]; int ver_num, edge_num; }MG ...

  5. 洛谷 P1182 数列分段Section II Label:贪心

    题目描述 对于给定的一个长度为N的正整数数列A[i],现要将其分成M(M≤N)段,并要求每段连续,且每段和的最大值最小. 关于最大值最小: 例如一数列4 2 4 5 1要分成3段 将其如下分段: [4 ...

  6. 数论 - Moon Game

    Fat brother and Maze are playing a kind of special (hentai) game in the clearly blue sky which we ca ...

  7. nandaom

    this python</div><div><br></div><div>hahah</div><div> 来自为知 ...

  8. 第2章 新手必须掌握的Linux命令

      第2章 新手必须掌握的Linux命令 章节简述: 本章节讲述系统内核.Bash解释器的关系与作用,教给读者如何正确的执行Linux命令以及常见排错方法. 经验丰富的运维人员可以恰当的组合命令与参数 ...

  9. codeforces 360 C

    C - NP-Hard Problem Description Recently, Pari and Arya did some research about NP-Hard problems and ...

  10. Android6.0动态获取权限

    Android6.0采用新的权限模型,只有在需要权限的时候,才告知用户是否授权,是在runtime时候授权,而不是在原来安装的时候 ,同时默认情况下每次在运行时打开页面时候,需要先检查是否有所需要的权 ...