本文實例為大家分享了jdbc實現學生管理系統的具體代碼,供大家參考,具體內容如下
1、學生類
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
package manage; import java.util.date; /** * @author fanxf * @since 2018/4/27 17:01 */ public class student { private int id; private int age; private string sex; private string name; private date datecreated; public int getid() { return id; } public void setid( int id) { this .id = id; } public int getage() { return age; } public void setage( int age) { this .age = age; } public string getsex() { return sex; } public void setsex(string sex) { this .sex = sex; } public string getname() { return name; } public void setname(string name) { this .name = name; } public date getdatecreated() { return datecreated; } public void setdatecreated(date datecreated) { this .datecreated = datecreated; } public student() { } public student( int age, string sex, string name) { this .age = age; this .sex = sex; this .name = name; } public student( int id, int age, string sex, string name) { this .id = id; this .age = age; this .sex = sex; this .name = name; } @override public string tostring() { return "student{" + "id=" + id + ", age=" + age + ", sex='" + sex + '\ '' + ", name='" + name + '\ '' + ", datecreated=" + datecreated + '}' ; } } |
2、jdbc工具類
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
package manage; import java.io.ioexception; import java.sql.*; import java.util.properties; /** * @author fanxf * @since 2018/4/27 11:06 */ //數據庫的工具類 public class jdbcutils { private static string driver = "" ; private static string url = "" ; private static string user = "" ; private static string password = "" ; static { properties p = new properties(); try { p.load(thread.currentthread().getcontextclassloader().getresourceasstream( "db.properties" )); } catch (ioexception e) { e.printstacktrace(); } driver = p.getproperty( "driver" ); url = p.getproperty( "url" ); user = p.getproperty( "user" ); password = p.getproperty( "password" ); try { class .forname(driver); } catch (classnotfoundexception e) { e.printstacktrace(); } } public static connection getconnection() { try { return drivermanager.getconnection(url, user, password); } catch (sqlexception e) { e.printstacktrace(); } return null ; } //釋放的時候要從小到大釋放 //connection -> statement --> resultset public static void release(resultset rs, statement stmt, connection conn) { if (rs != null ) { try { rs.close(); } catch (sqlexception e) { e.printstacktrace(); } } if (stmt != null ) { try { stmt.close(); } catch (sqlexception e) { e.printstacktrace(); } } if (conn != null ) { try { conn.close(); } catch (sqlexception e) { e.printstacktrace(); } } } } |
3、代碼
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
|
package manage; import java.sql.connection; import java.sql.preparedstatement; import java.sql.resultset; import java.sql.sqlexception; import java.util.scanner; /** * @author fanxf * @since 2018/4/27 17:06 */ public class managesystem { private static connection conn = null ; private static preparedstatement ps = null ; private static resultset rs = null ; /** * 添加學生數據 * * @param student * @return */ public static int addstudent(student student) { conn = jdbcutils.getconnection(); int result = 0 ; try { ps = conn.preparestatement( "insert into student (age, sex, `name`, datecreated) values (?, ?, ?, now())" ); ps.setint( 1 , student.getage()); //設置第一個參數 ps.setstring( 2 , student.getsex()); //設置第二個參數 ps.setstring( 3 , student.getname()); //設置第三個參數 result = ps.executeupdate(); } catch (sqlexception e) { e.printstacktrace(); } finally { jdbcutils.release( null , ps, conn); //關閉連接 } return result; } public void add() { scanner scan = new scanner(system.in); system.out.println( "請輸入學生年齡" ); int age = scan.nextint(); system.out.println( "請輸入學生性別" ); string sex = scan.next(); system.out.println( "請輸入學生姓名" ); string name = scan.next(); student s = new student(age, sex, name); int flag = addstudent(s); if (flag > 0 ) { system.out.println( "添加成功" ); } else { system.out.println( "添加失敗" ); } } /** * 修改 * * @param student * @return */ public static int updatestudent(student student) { conn = jdbcutils.getconnection(); int result = 0 ; try { ps = conn.preparestatement( "update student set age = ?, sex = ?, `name` = ? where id = ?" ); ps.setint( 1 , student.getage()); //設置第一個參數 ps.setstring( 2 , student.getsex()); //設置第二個參數 ps.setstring( 3 , student.getname()); //設置第三個參數 ps.setint( 4 , student.getid()); result = ps.executeupdate(); } catch (sqlexception e) { e.printstacktrace(); } finally { jdbcutils.release( null , ps, conn); //關閉連接 } return result; } public void update() { scanner scan = new scanner(system.in); system.out.println( "請輸入學生id" ); int id = scan.nextint(); system.out.println( "請輸入學生年齡" ); int age = scan.nextint(); system.out.println( "請輸入學生性別" ); string sex = scan.next(); system.out.println( "請輸入學生姓名" ); string name = scan.next(); student s = new student(id, age, sex, name); int flag = updatestudent(s); if (flag > 0 ) { system.out.println( "更新成功" ); } else { system.out.println( "更新失敗" ); } } /** * 刪除 * * @param id * @return */ public static int deletestudent( int id) { conn = jdbcutils.getconnection(); int result = 0 ; try { ps = conn.preparestatement( "delete from student where id = ?" ); ps.setint( 1 , id); //設置第一個參數 result = ps.executeupdate(); } catch (sqlexception e) { e.printstacktrace(); } finally { jdbcutils.release( null , ps, conn); //關閉連接 } return result; } public void delete() { scanner scan = new scanner(system.in); system.out.println( "請輸入學生id" ); int id = scan.nextint(); int flag = deletestudent(id); if (flag > 0 ) { system.out.println( "刪除成功" ); } else { system.out.println( "刪除失敗" ); } } public static void main(string[] args) { system.out.println( "************ 歡迎進入學生管理系統 *************" ); managesystem ms = new managesystem(); boolean b = true ; while (b) { system.out.println( "你想進行以下哪項操作" ); system.out.println( "1、添加學生 2、更新學生數據 3、學生信息查詢 4、刪除學生 0、退出" ); scanner scan = new scanner(system.in); int i = scan.nextint(); switch (i) { case 1 : ms.add(); break ; case 2 : ms.update(); break ; case 3 : system.out.println(); break ; case 4 : ms.delete(); break ; default : system.out.println( "沒有該操作選項,請重新來過!" ); main(args); break ; } } } } |
4、properties數據庫文件自己配置
數據庫字段根據學生類建立!
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。
原文鏈接:https://blog.csdn.net/feidao0/article/details/81535758