您的位置:首页 > 其它

[第四季]考试结束

2017-07-28 23:34 260 查看

终于考试结束了

第四季的学习早在7月12号就结束了,当时是边看视频边敲代码,连续看完了第三季和第四季所有的27个视频,看的倒是挺爽的.

第四季结束要考试,所以要复习,留下的只有代码和及其少量的注释,悲剧的是我发现代码看不懂了,并且离看完视频已经有10天了,记忆已经很模糊,错过了最好的总结时间,java是自己选的,学java是认真的,不能随便对待吧,所以20多篇代码从新自己敲一遍,消化里面的知识,翻JAVA API中文文档,写笔记.

中午联系助教调试代码,叫我不要在基础知识上浪费太多时间,如果在基础知识上纠结过久会浪费太多的时间,这个我觉得很有道理.

目前第四季结束后的考试已经通过,准备考试第五季的学习,这次会在视频后抽出一定时间总结消化知识,并且注意不要太钻牛角尖,注意进度和时间的问题.

package javastudy;

import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Scanner;

public class Test {

public static void main(String[] args) throws ClassNotFoundException, SQLException, IOException
{
showMenu();
System.out.println("请输入操作序号:");
Scanner scan=new Scanner(System.in);
int choise=scan.nextInt();
while(choise!=5)
{

switch (choise)
{
case 1:
/*
本来想要一个个的scan,并且伴随后就stu.ar=scan.next的,但是这样代码重复率太高
所以直接先扫面完成,再进行实例化.
Student stu=new Student();
*/
/*
定义各个参数
*/
String name;
String gender;
int age;
String teleNo;
System.out.println("请输入姓名:");
name=scan.next();
System.out.println("请输入性别:");
gender=scan.next();
System.out.println("请输入年龄:");
age=scan.nextInt();
System.out.println("请输入电话号码:");
teleNo=scan.next();
/*
根据上面的参数实例化
*/
Student stu=new Student(name, gender, age, teleNo);
Save(stu);
System.out.println();
break;
case 2:
System.out.println("请输入要删除的学生的姓名:");
String Student=scan.next();
delete(Student);
break;
case 3:
System.out.println("查询学生信息");
show();
break;

case 4:
System.out.println("请输入学生姓名:");
String student=scan.next();
export(student);
break;

default:
System.out.println("输入不正确,请重新输入!");
break;
}
showMenu();
System.out.println("请输入操作序号:");
choise=scan.nextInt();
}
System.out.println("再见!欢迎再次使用本系统。");
scan.close();

}

static void showMenu()
{
System.out.println("**************************************");
System.out.println("*      欢迎使用新趋势学生信息管理系统V1.0      *");
System.out.println("*                                    *");
System.out.println("*      请选择你要执行的命令:                                              *");
System.out.println("*                                    *");
System.out.println("*       1.输入学生信息          2.删除学生信息                 *");
System.out.println("*       3.查询学生信息          4.导出学生信息                 *");
System.out.println("*       5.退出系统                                                                 *");
System.out.println("**************************************");
}

static void Save(Student student) throws ClassNotFoundException, SQLException
{
System.out.println("这里是Save函数");
Connection con=getconn();
Statement st=con.createStatement();
String str="insert into studinformation values ('" + student.name +"','"+ student.gender +"',"+ student.age +",'"+ student.teleNo +"')";
System.out.println(str);
st.executeUpdate(str);
con.close();
}
//******************************删除学生的函数*********************************
static void delete(String student) throws ClassNotFoundException, SQLException
{

Connection con=getconn();
Statement st=con.createStatement();
ResultSet rst=st.executeQuery("select * from studinformation where name='"+student+"'");
/*
判断是否有学生存在,如果没有就输出提示并退出函数.否则进行删除.
*/
if(rst.next()==false)
{
System.out.println("提示:你输入的学生不存在。");
return;
}else
{
String str="delete from studinformation where name='"+ student+"'";
Syst
be85
em.out.println(str);
st.executeUpdate(str);
}
con.close();
}

//******************************删除学生的函数*********************************

//******************************显示学生信息*********************************
static void show() throws ClassNotFoundException, SQLException
{
Connection con=getconn();
Statement st=con.createStatement();
ResultSet rs=st.executeQuery("select * from studinformation");
//*********打印表头

while(rs.next())
{
for(int i=1;i<=rs.getMetaData().getColumnCount();i++)
{
System.out.print(rs.getString(i)+"\t");
//              System.out.println(i);

}
System.out.println();
}
con.close();
}
//******************************显示学生信息*********************************

//******************************输出学生信息到文件*********************************
static void export(String student) throws IOException, ClassNotFoundException, SQLException
{
//      System.out.println("这里是export函数");
FileWriter fw=new FileWriter("d:\\234.txt");
PrintWriter pw=new PrintWriter(fw);
Connection con=getconn();
Statement st=con.createStatement();
ResultSet rs=st.executeQuery("select * from studinformation where name='"+student+"'");

while(rs.next())
{
for(int i=1;i<rs.getMetaData().getColumnCount();i++)
{
pw.append(rs.getString(i)+"\t");
}
pw.println();
}

st.close();
pw.close();
fw.close();
st.close();
con.close();

}
//******************************输出学生信息到文件*********************************

public static Connection getconn() throws SQLException, ClassNotFoundException
{
Class.forName("com.mysql.jdbc.Driver");
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost/student?&useSSL=true", "root", "123456");
return conn;
}
}


Student class代码

public class Student
{
String name;
String gender;
int age;
String teleNo;

public Student()
{

}

public Student(String name,String gender,int age,String teleNo)
{
this.name=name;
this.gender=gender;
this.age=age;
this.teleNo=teleNo;
}
}


考试题目

测试案例题

一.在mysql中建立一下表格

student(id,name,sex,age,telephone)

二.程序中输出主菜单

欢迎使用新趋势学生信息管理系统V1.0 *

*

请选择你要执行的命令: *

*

1.输入学生信息 2.删除学生信息 *

3.查询学生信息 4.导出学生信息 *

5.退出系统 *

三.请输入你的选择:

1.如果用户输入1

依次提示

(1)请输入姓名

(2)请输入性别

(3)请输入年龄

(4)请输入电话号码

将接收到的信息存入到数据库中

然后继续显示主菜单√

2.如果用户输入2

提示

请输入要删除的学生的姓名:

接收到姓名后,如果该姓名不存在,提示:你输入的学生不存在。

否则将该学生删除掉。

然后继续显示主菜单

3 .如果用户输入3

则将所有学生信息列出来

然后继续显示主菜单

4 .如果用户输入4

则将所有学生信息写入到一个文本文件d:\data.txt中

然后继续显示主菜单

5.如果用户输入5

显示:再见!欢迎再次使用本系统。

===========================================================

提示:

1.将主菜单的显示放在一个方法中,叫做showMenu();

2.如何让程序不退出,循环接收用户的命令输入

ShowMenu();

Scanner scan=new Scanner(System.in);

int choice=scan.nextInt();

while(choice!=5){

switch(choice){

case 1:

break;

case 2:

break;

case 3:

break;

case 4:

break;

case 5:

}

choice=scan.nextInt();

}

3.保存学生信息,编写一个方法

public void save(Student student)

4.删除学生信息,编写一个方法

public void delete(String name)

5.显示学生信息,编写一个方法

public void show(Student student)

6.导出数据,编写一个方法

public void export(String fileName)

7.因为各处都要获取数据库连接,编写一个获取数据库连接的方法

public Connection getConn()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: