Java伪界面操作数据库的小实例
首先在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伪界面操作数据库的小实例的更多相关文章
- SQL语言(二) java怎样连接操作数据库中的数据
import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.S ...
- 分享一个以前写的基于C#语言操作数据库的小框架
一:前言 这个是以前写的操作MySQL数据库的小型框架,如果是中小型项目用起来也是很不错的,里面提供Filter.ModelPart.Relationship等机制实现操作数据库时的SQL语句的拼接和 ...
- java中如何操作数据库(增删改查)
EntityManager 是用来对实体Bean 进行操作的辅助类.他可以用来产生/删除持久化的实体Bean,通过主键查找实体bean,也可以通过EJB3 QL 语言查找满足条件的实体Bean.实体B ...
- java链接并操作数据库
链接准备 MySQL数据库驱动(连接器).mysql-connector-java-x.x.xx.jar会在MySQL安装时提供,若Mysql是默认安装路径,则连接器在:C:\Program File ...
- Mysql数据库基础小实例 学员管理系统菜单
package test; import java.sql.*; import java.util.Scanner; public class testSql002_StudentTest { /** ...
- Java之JDBC操作数据库
DBC JDBC就是一套接口,真正执行的是jar包里得实现类,通过泛型对象来执行实现类里的方法. 步骤: ###1.导入驱动jar包到工程中 ###2.编写代码注册驱动,我们要让程序知道用的是哪个驱动 ...
- JAVA连接、操作数据库的DBHelper
工厂模式的DBHelper 1 import java.sql.Connection; 2 import java.sql.DriverManager; 3 import java.sql.Prepa ...
- 使用navicat for mysql图形界面操作数据库、使用node.js操作数据库写接口
1.先启动MYSQL服务 2.打开navicat for mysql, 点击链接,输入如下的内容: 3.新建数据表 4.数据库(新建一个db.js) //数据库链接配置 module.exports ...
- Java程序要操作数据库,一定要使用JDBC技术吗?
<!-- MySQL驱动,连接数据库用,由数据库厂商提供 --> <dependency> <groupId>mysql</groupId> <a ...
随机推荐
- 【iOS 单例设计模式】底层解析与运用
[iOS 单例设计模式]底层解析与运用 一.单例设计名词解释: (官方解释)单例模式确保一个类只有一个实例,自行提供这个实例并向整个系统提供这个实例.(形象比喻)程序 — 公司 单例实例 - 管理 ...
- Delphi之静态方法,虚方法virtual,动态dynamic,抽象abstract,消息
Delphi之静态方法,虚方法virtual,动态dynamic,抽象abstract,消息 http://www.cnblogs.com/zhwx/archive/2012/08/28/266055 ...
- 疑难问题解决备忘录(1)——LAMP环境下WordPress无法发现themes目录下的主题问题解决
程序猿的宿命就是无穷无尽地解题,虽然可以说是解题的机器,但也无法达到解题之神的境界,碰到自己解决不了的问题那是家常便饭,尤其当遍寻Google和StackOverflow花了九牛二虎之力才解决的问题, ...
- 如何发布付费WP8应用
如何发布付费应用,听起来蛮简单的,事实上也确实如此,但是发布付费WP8应用前的资料填写却让我郁闷不已. 我打开仪表板,点击进入账户--账户摘要,填写税务资料和付款账户,发现付款账户保存成功了,税务资料 ...
- Junit测试框架 Tips
关于Junit测试框架使用的几点总结: 1.Junit中的测试注解: @Test →每个测试方法前都需要添加该注解,这样才能使你的测试方法交给Junit去执行. @Before →在每个测试方法执行前 ...
- Sublime Text 3实用快捷键大全
下面是我通过网上教程和文本资料学习sublime Text3时收集的一些实用功能和常用快捷键,现在分享出来,如果还有其它的好用的功能可以在下面留言,以便互相学习和交流,谢谢!. 选择类 Ctrl+ ...
- JS写入日志
try { var WSShell = WScript.CreateObject("WScript.Shell"); var FileSys = WScript.CreateObj ...
- JS代码将数据导入Excel
如果在别的浏览器中无法导入,尝试用IE浏览器 function AutomateExcelall(){try { oXL = new ActiveXObject('Excel.Application' ...
- gulp-less解决遇到错误停止执行task
来龙去脉 在用less+gulp开发时,有时候代码还没写完整,不小心保存了一下,然后gulp就开始执行gulp-less的task. 但是代码是有问题的,这时候会输出一个Potentially unh ...
- TLV(类型—长度—值)格式及编码
转自: http://www.cnblogs.com/tml839720759/archive/2014/07/13/3841820.html 引子: 前段时间在项目中第一次接触TLV,项目中用这种格 ...