一、复习JDBC的基础知识
1.获取驱动并连接数据库
通过Class.forName(“com.mysql.jdbc.Driver”) 和DriverManager.getConnection()函数来建立起程序与数据库的连接。其中getConnection()函数中传入的参数是数据库地址、数据库用户名与数据库密码。
2.SQL语句的书写执行与结果反馈
1.将上一步中getConnection()返回的值赋值给Connection类实例化得到的对象conn,此时可以通过对conn的操作来操作数据库。
2.然后获取sql对象,将conn.prepareStatement(sql)的返回赋值给PreparedStatement类的实例pstm,其中参数sql的值为具体的sql语句。
3.最后如果是数据库内表内容的结果反馈用PreparedStatement类的executeQuery()函数来获取,并将其赋值给ResultSet类的实例然后调用函数输出想要的内容
如果是想要得知操作是否有效,可以使用executeUpdate(),返回值不为0则有效
3.编写一个能增删查改数据库表的程序
按照要求完成一个简易的能增删查改数据库内表的内容的程序,具体要求为:有菜单、能添加数据、删除特定数据、查询数据和修改数据
1.菜单:在启动程序后显示的操作选项与提示。开始时我用的是死循环来保证能重复使用菜单,但是由于常常忘记结束运行所以改用有判断的while循环。
2.具体功能
在菜单和数据库操作之间加入各个功能的类来减少耦合度,当进行工作时,会通过调用不同类来处理选择功能之后与进行数据库操作之前的一些操作。进行具体的数据库操作的类内部函数与上述的SQl语句使用与结果反馈中的内容大致相同,只是使用的SQL语句具体内容不同。
二、建立小组项目所需的数据库与表
经过与同组成员之间的讨论,我们在昨天确认的数据库表内容的基础上进行修改,完成了项目所需的数据库与其表的建立。
tb_user用户(总): | tb_allcourse课程汇总 |
---|---|
id, | id, |
username(用户名), | courseID, |
role(权限) | restudy(是否重修) |
password(密码) | studyTime(学习时间) |
. | sorce(成绩) |
tb_stuInfo用户信息(个人): | tb_postInfo帖子信息: |
---|---|
id, | postID |
name姓名, | theme(主题) |
grade(学籍) | id(发帖人) |
major(专业) | time(发帖时间) |
class(班级), | total(浏览人数) |
phone(手机), | content(内容) |
academy(学院) | |
number(学号) |
tb_teaInfo用户信息(教师): | tb_remarkInfo评论信息: |
---|---|
id | postID(帖子id) |
number(工号) | userID(用户id) |
name(姓名) | floor(楼层) |
phone(手机号) | content(内容) |
academy(学院) |
tb_course课程: |
---|
courseID(课程编号) |
cname(课程名) |
id(任课老师 teaInfo.id) |
time(课程时间) |
term(选课学期1-8) |
volume(课程容量) |
place(地点) |
score(学分) |