15 getStatement();
16 System.out.println("欢迎来到J18银行");
17 System.out.println("请登录:");
18 System.out.println("用户名:");
19 username=sca.next();
20 System.out.println("密码:");
21 String password=sca.next();
22
//调用查询账户方法,需要传入 用户名 和密码 返回int类型的值
23 int num=queryJ18(username,password);
24
//num==1 表示 数据库中有对应的用户名和密码
25
if(num==1){
26 System.out.println("登录成功");
27
//使用for死循环 进行操作
28 for(;;){
29 System.out.println("请选择交易类型:");
30 System.out.println("1、存钱 2、取钱 3、查询余额");
31 int cz=sca.nextInt();//输入操作类型
32 if(cz==1){
33
cun(); //调用存钱方法
34 }else if(cz==2){
35 qu();
//调用取钱方法
36 }else if(cz==3){
37 query();
//调用查询余额方法
38 }else{
39 System.out.println("谢谢使用!");
40 break;
41 }
42 }
43 }
44
else{
45 System.out.println("登录失败!");
46 }
47 }
48 /**
49 * 取钱方法
50 * @throws Exception
51 */
52
public static void qu() throws Exception{
53 System.out.println("请输入你的取款金额:");
54 double money=sca.nextDouble();
55 String sql="update J18 set money=money-"+money;
56 System.out.println(sql);
57 boolean a =sc.execute(sql);
58
if(!a){
59 System.out.println("取款成功!");
60 }
61 }
62 /**
63 * 存钱方法
64 */
65
public static void cun() throws Exception{
66
67 System.out.println("请输入你的存款金额:");
68 double money=sca.nextDouble();
//输入存款金额
69
//拼接 修改sql
70 String sql="update J18 set money=money+"+money;
71
//在 操作平台中 执行 sql语句
72 boolean a =sc.execute(sql);
73
//判断是否成功
74 if(!a){
75 System.out.println("存款成功!");
76 }
77 }
78 public static int queryJ18(String username,String password) throws Exception{
79
//拼接查询sql 注意: 在拼接的时候,,字符串需要在前后加‘(单引号)
80 String sql="select * from J18 where Sname=‘"+username+"‘ and pwd=‘"+password+"‘";
81
//在平台中执行查询sql ,并把查询的内容放在 ResultSet rs 里面
82 ResultSet rs=sc.executeQuery(sql);
83
//声明一个int 类型的变量 初始值 0
84 int num=0;
85
//如果查询的结果里面有值得话,就进入循环里面
86 while(rs.next()){
//rs.next() 是判断当前位置是否有数据,有就进入 没有就跳过
87 num++;
88 }
89 return num;
90 }
91 /*
92 * 查询方法
93 */
94
public static void query() throws Exception{
95
//拼接查询sql 注意: 在拼接的时候,,字符串需要在前后加‘(单引号)
96 String sql="select money from J18 where Sname=‘"+username+"‘";
97
//在平台中执行查询sql ,并把查询的内容放在 ResultSet rs 里面
98 ResultSet rs=sc.executeQuery(sql);
99
//声明一个double类型的变量 赋值 0
100 double money=0;
101
//rs.next() 是判断当前位置是否有数据,有就进入 没有就跳过
102 while(rs.next()){
103
//把查询出来的数据赋值给money 变量
104 money=rs.getDouble(1);
105 }
106 System.out.println("你的账户余额:"+money);
107 }
108
109 /**
110 * 得到数据库操作平台方法
111 * @throws Exception
112 */
113 public static void getStatement() throws Exception{
114
//1\加载驱动
115 Class.forName("com.mysql.jdbc.Driver");
116 /**
117 * 数据库连接URL
118 * jdbc:mysql://IP:port/数据库名
119 * jdbc:mysql://localhost:3306/score
120 */
121 String url="jdbc:mysql://localhost:3306/atm";
122
//数据库用户名
123 String username="root";
124
//数据库密码
125 String password="root";
126
//使用驱动得到数据库连接,需要传入 url username password
127 Connection c=DriverManager.getConnection(url, username, password);
128
//得到数据库操作平台,平台
129 sc=c.createStatement();
130 }
131 }
Java连接Mysql 实例
标签:row 数据库名 bsp 成功 nbsp div 赋值 位置 manage