您好,欢迎来到华佗小知识。
搜索
您的当前位置:首页java实训报告

java实训报告

来源:华佗小知识


吉林工业职业技术学院

( JAVA实训报告 )

( 2014 ~ 2015 学年第 2 学期)

实训地点: 网站建设实训室 指导教师: 刘洋、尹春宏 专业班级: 软件3131 学生姓名: 25号 王军琦

2015年7月10日

目 录

实训题目.......................................................................................................... 2 实训内容.......................................................................................................... 2

1需求分析 ................................................................................................................... 2 1.1功能需求分析 ................................................................................................. 2 1.2性能需求分析 ................................................................................................. 3 2 数据库设计 .............................................................................................................. 3 3系统实现 ................................................................................................................... 7 3.1登录窗体和系统主界面设计 ......................................................................... 7 3.2添加用户界面 ................................................................................................. 9 3.3修改用户界面 ................................................................................................11 3.5查询用户界面 ............................................................................................... 15

实习心得........................................................................................................ 18 参考文献........................................................................................................ 19

精选文档,供参考!

实训题目

学生信息管理系统

实训内容

1需求分析

学生信息管理系统,是对学生的个人信息,课程信息,成绩信息以信息的方式进行管理,最大限度地减少各个环节可能出现的错误,有效减少人力资源局限性导致的储存信息量大,信息存储错误,混淆等问题,合理进行信息存储,是学校能够合理录入学生的个人自料,学期成绩情况,以及课程安排,为学校师生的工作提供方便。

1.1功能需求分析

学生信息管理系统在管理学生中占有重要的地位,它关系着学生信息的基本信息,其中包括学生信息,班级信息,课程信息等。对于学校来讲,学生信息管理系统是不可缺少的组成部分,他有效的管理学生档案,对学校学生的变动和统计起着重要的管理作用。

本系统根据学校管理的实际要求,结合学生信息管理的实际流程要,需实现以下功能:

(1)能够对学生的有关资料进行输入,查询,修改,删除。

(2)能够为学校提供强大的查询功能,以使管理人员了解和掌握学生的具体情况。

(3)能够对数据库和登陆记录进行清理。 (4)可以对用户进行修改密码,新增用户。

(5)超级管理员能对用户的使用权限进行设置,分为不同的用户等级。 根据需求分析中总结的用户需求可以设计系统的体系结构,系统的功能模块图, 如图1所示。

精选文档,供参考!

学生信息管理系统 管理员登陆 学生信息管理 增加 学 生 信息 查询学生信息 修改学生信息 删除学生信息 显示学生信息 图1 学生信息管理系统功能模块示意图

1.2性能需求分析

本系统是学生信息的重要管理软件,必将涉及到很多学生的信息,因此必须要考虑到系统的安全性和可靠性。

(1)安全性

系统安全性要求主要体现在应用软件安全性、数据库安全性和信息安全性等方面。软件设计应做到应用学生信息与数据的分离,实现数据共享,防止数据丢失或破坏;数据库的安全性除自身提供的以外,各应用系统还可通过分配权限、设置权限级别来区别对待不同操作者对数据库的操作来提高数据库的安全性。 (2)可靠性

学生信息的可靠性主要体现在它的运行情况上。例如如何使学生信息管理系统在不同的系统平台上都可以稳定的运行,如何实现数据库与学生信息管理系统的合理连接,在接到非法操作后如何响应等等。这些都会影响到系统内信息的完整和项目管理的正常进行,因此要格外重视。 2 数据库设计

在这个学生信息管理系统的开发中,我们选用SQL Server2000作为系统服务数

精选文档,供参考!

据库。设置数据表的列名、数据类型等,如下图2所示。

图2学生信息数据表

数据库需求分析是数据库结构设计的第一个阶段,是非常重要的一个阶段。在这个阶段主要是收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为以后的进一步设计打下基础。

再仔细分析和调查学生信息管理过程的基础上,可以得到本系统的实体E-R图,如图3、图4、图5、图6和图7所示。在此次程序设计中,通过对学生信息管理的内容和实体E-R图的分析而设计的数据项和数据结果如下所示:

(1)学生个人信息记录:学号、姓名、班级、性别、生日、电话、联系地址。 (2)班级信息记录:班级编号、班级名称、所属院系、班主任、辅导员。 (3)学生课程信息记录:记录号、学号、姓名、所选课程编号。

(4)课程设置记录:课程编号、课程号、学时、学分、任课老师、上课地点。 (5)学生奖励记录:记录号、学号、姓名、获奖时间、奖励名称、具体描述。 (6)学生职务记录:记录号、学号、姓名、任课时间、职务名称、具体描述。

地址 学号 姓名 班级 性别 图3学生个人信息 E-R图

精选文档,供参考!

学生个人信息 电话 生日

所选课程 学生班级信息 学号 姓名 记录号 课程编号 班主任 班级编号 辅导员 院校 班级名称

图4所选课程E-R图 图5学生班级信息E-R图

学生奖励信息表

学号

姓名 记录号 获奖 时间获奖内容 具体描述 图6学生奖励信息表E-R图

学生职务信息表

学号 姓名 记录号 任职时间职务内容 具体描述 图7学生职务信息表E-R图

有了上面的数据结构。数据项和E-R实体图,就能进行数据库设计了。 在对数据项和结构分析的基础上可以形成数据库中的表格以及个人信息表、学生所选课程表、学生奖励信息学生职务信息表。为了数据记录实例的完整性,系统中包括了一些数据表:

表1学生个人信息表的结构

字段名 Student-id Student-name 字段类型 int Char(10) 可否为空 Not null Not null 说明 学生学号 学生姓名 精选文档,供参考!

Student-class Student-sex Student-birthday Student-tel Student-address Var char Var char Date time Var char Var char Not null Not null null null null 学生班级 学生性别 学生生日 联系电话 联系地址 表2学生所选课程表

字段名 Count-id Course-id Course-name Course-no 数据类型 Int Int Char(10) Int 可否为空 Not null Not null Not null Not null 说明 记录号 学生学号 学生姓名 所选课程编号 表3学生奖励信息表

字段名 Gcheck-id Gcheck-no Gcheck-name Gcheck-time Gcheck-title Gcheck-disc 字段类型 Int int Char(10) daratime Char(30) Char(50) 可否为空 Not null Not null Not null Not null Not null null 说明 记录号 学生学号 学生姓名 获奖时间 获奖内容 获奖具体描述 表4学生职务信息表

字段名 Bcheck-id Bcheck-no Bcheck-name Bcheck-time Bcheck-title Bcheck-dise 字段类型 int int Char(10) daratime Char(30) Char(50) 可否为空 Nut null Nut null Nut null Nut null Nut null null 说明 记录号 学生学号 学生姓名 任职时间 职务内容 职务具体描述 表5学生班级信息表

字段名 字段类型 可否为空 说明 精选文档,供参考!

Class-id Class-name Class-teacher Class-assitant Class-dcp int Char(10) Var char Date time Var char Not null Not null Not null Not null Not null 班级编号 班级名称 班主任 辅导员 所属院校 数据库是集数据库基本知识和数据库设计技术、计算机基础知识和程设序计方法、学生信息管理的原理和方法及应用领域的知识于一身的综合科学,涉及了多学科、多领域。数据库应用系统经过试运行后即可投入正式使用。在数据库系统运行过程中必须不断地对其进行评价、修改、调整。 3系统实现

3.1登录窗体和系统主界面设计

当系统运行时,首先打开登录窗体,只有有权限的用户才能进入系统。登录成功后,将显示系统主界面。登录窗体的名称为FrmLogin,它的界面布局,如图8所示。

图8登陆界面

程序的运行过程如下:

判断是否输入了用户名和密码,如果没有输入,则返回,要求用户输入。 将输入的用户名和密码赋值到变量NameKey和PasswordKey中,如果通过密码验证,将当前用户信息保存到curUser对象中,以便后面使用。

关闭登录窗体。

精选文档,供参考!

本系统的主界面,如图9所示。

图9主界面

登录窗体和系统主界面设计代码如下:

class Login {

void Login() {

final JFrame loginframe=new JFrame(\"登陆界面\"); loginframe.setBounds(200,200,400,500); loginframe.setVisible(true); loginframe.setResizable(true); loginframe.setLayout(null);

final JTextField text1=new JTextField(10); final JPasswordField text2=new JPasswordField(10); JButton btn1=new JButton(\"登陆\"); JButton btn2=new JButton(\"取消\"); JLabel label1=new JLabel(\"用户名\"); JLabel label2=new JLabel(\"密码\");

public void actionPerformed(ActionEvent event) {

精选文档,供参考!

String name=text1.getText(); String password=text2.getText(); {JOptionPane b=new JOptionPane();

b.showMessageDialog(null,\"账号有误\" ,\"消息对话框

\

} else {

st.executeUpdate(\"INSERT INTO LoginVALUES('\"+username+\"','\"+pass+\"')\");

loginframe.dispose();

JOptionPane b=new JOptionPane();

b.showMessageDialog(null,\"登录成功\" ,\"消息对话框

\

3.2添加用户界面

点击使用里面有管理员登陆、超级管理员登陆、普通学生登陆。鼠标右键单击普通学生登陆,单击再次确认登陆。

点击用户管理里面有添加用户、删除用户、更改用户、修改密码。如图10所示。

图10用户管理界面

如上图界面所示,选择用户管理里面的添加用户,进行对新用户的添加,如果

精选文档,供参考!

出现问题右键点击帮助,进行调解,也可以选择退出,重新进入界面,填写学号、姓名、性别、籍贯、年龄和电话右键单击确定,在进行添加新用户如图11所示。

图11添加学生信息界面

添加学生信息代码如下: class AddStu {

String sage; String ssex; String sno; String saddress; String sphone; String sname; void AddStu() {

JFrame addframe=new JFrame(\"添加学生信息窗体\"); addframe.setDefaultCloseOperation(2); addframe.setBounds(400,200,400,500); addframe.setVisible(true); addframe.setResizable(true);

精选文档,供参考!

addframe.validate();

JLabel no=new JLabel(\"学号\"); JLabel name=new JLabel(\"姓名\"); JLabel age=new JLabel(\"年龄\"); JLabel sex=new JLabel(\"性别\"); JLabel address =new JLabel(\"籍贯\"); JLabel phone=new JLabel(\"电话\");

JLabel title=new JLabel(\"需要添加的基本信息 \JButton addbtn=new JButton(\"添加\"); {

JOptionPane b=new JOptionPane();

b.showMessageDialog(null,\"添加成功\" ,\"消息对话框\

}

while(rs.next()) {

String no=rs.getString(1); String name=rs.getString(2); String age=rs.getString(3); String sex=rs.getString(4); String address=rs.getString(5); String phone=rs.getString(6);

System.out.println(no+\" \"+ name+\" \"+age+\" \"+sex+\" \"+address+\" \"+phone);

}

con.close(); }

3.3修改用户界面

录入学生的相关信息后,如果你不满意,可以对相关信息进行修改如图12所示。

精选文档,供参考!

图12修改界面

修改学生信息代码如下: class AlterStu {

void AlterStu() {

JFrame deleteframe=new JFrame(\"更改学生信息\"); deleteframe.setLayout(null);

JLabel label=new JLabel(\"需要修改的学生学号\deleteframe.setVisible(true);

deleteframe.setBounds(350,350,450,350); JButton btn=new JButton(\"确定\"); if(rs==null) {

JOptionPane b=new JOptionPane();

b.showMessageDialog(null,\"该学生不存在\" ,\"消息对话框

\

} else {

精选文档,供参考!

JFrame addframe=new JFrame(\"修改学生信息\"); addframe.setDefaultCloseOperation(2); addframe.setBounds(400,200,450,600); addframe.setVisible(true); addframe.setResizable(true); addframe.validate();

addframe.setLayout(new BorderLayout()); Box basebox,box1,box2,box3,box4; basebox=Box.createHorizontalBox(); box1=Box.createVerticalBox(); box2=Box.createVerticalBox(); box3=Box.createVerticalBox(); box4=Box.createVerticalBox(); JLabel no=new JLabel(\"学号\"); JLabel name=new JLabel(\"姓名\"); JLabel age=new JLabel(\"年龄\"); JLabel sex=new JLabel(\"性别\"); JLabel address =new JLabel(\"籍贯\"); JLabel phone=new JLabel(\"电话\");

JLabel title=new JLabel(\"所要修改学生的基本信息\

JButton addbtn=new JButton(\"修改\"); if(ok==1) {

JOptionPane b=new JOptionPane();

b.showMessageDialog(null,\"修改成功\" ,\"消息对话框

\

}

3.4删除用户界面

在界面输入要删除用户的学号,右键单击“确定”,用户删除成功,如图13所

精选文档,供参考!

示。

图13删除界面

删除学生信息,输入学生学号,右键单击确定,学生信息就会删除,代码如下: class DeleteStu {

void DeleteStu() {

JFrame deleteframe=new JFrame(\"删除学生信息\");

JLabel label=new JLabel(\"请输入要删除学生的学号\deleteframe.setVisible(true);

deleteframe.setBounds(300,300,400,300); JButton btn=new JButton(\"确定\"); deleteframe.add(label);

label.setForeground(Color.black);

final JTextField text=new JTextField(15); text.setSize(100,60); deleteframe.add(text); deleteframe.add(btn);

btn.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent event)

精选文档,供参考!

{

Connection con; Statement st; ResultSet rs;

String sno=text.getText(); try {

Class.forName(\"sun.jdbc.odbc.JdbcOdbcDriver\"); }

catch(ClassNotFoundException e) {

System.out.println(e); } try {

con=DriverManager.getConnection(\"jdbc:odbc:pan\st=con.createStatement();

int ok= st.executeUpdate(\"DELETE FROM student WHERE sno='\"+sno+\"'\"); if(ok==1) {

JOptionPane b=new JOptionPane();

b.showMessageDialog(null,\"删除成功\" ,\"消息对话框

\

}

3.5查询用户界面

可以通过学生信息管理系统进行查询学生的信息如图14所示。

精选文档,供参考!

图14学生信息界面

学生信息代码如下: class ShowStu {

void ShowStu() {

JFrame frame1=new JFrame(\"学生信息窗口\"); frame1.setBounds(300,300,500,400); frame1.setDefaultCloseOperation(2); JTable table; Object a[][]=null;

Object name[]={\"学号\姓名\年龄\性别\籍贯\电话\Connection con; Statement st; ResultSet rs; try {

con=DriverManager.getConnection(\"jdbc:odbc:pan\

st=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);

rs=st.executeQuery(\"SELECT * FROM student\"); rs.last();

int lastnumber=rs.getRow();

精选文档,供参考!

a=new Object[lastnumber][6]; int i=0;

rs.beforeFirst(); while(rs.next()) {

a[i][0]=rs.getString(1); a[i][1]=rs.getString(2); a[i][2]=rs.getString(3); a[i][3]=rs.getString(4); a[i][4]=rs.getString(5); a[i][5]=rs.getString(6); i++; }

con.close(); }

catch(SQLException e) {

System.out.println(e); }

table=new JTable(a,name);

frame1.setLayout(new BorderLayout());

frame1.add(new JScrollPane(table),BorderLayout.CENTER); frame1.setVisible(true); frame1.validate(); } }

精选文档,供参考!

实习心得

在本学期的最后两周,我们在学校机房进行了为期两周的JAVA实训。现在即将结束了,回首本学期的java学习,重点还是在学习概念等一些常识性的东西,当然学知识可不能凭自己的爱好和一时兴趣,要一步一个脚印,认认真真,踏踏实实,理论与实践相结合,在扎实掌握课本实例和内容之后,有一定的扩展阅读和课外学习,充分全面的了解JAVA的应用和扩展运用。

在我所学的语言当中,我自认为JAVA是一门比较强大的面向对象的编程语言,不仅仅因为它的跨平台性,更多的是因为它的灵活多变和实用性较强,可以说比较的经典和强悍。

所以学好java语言有很大的用处,这次实训,面对一道陌生的题目和要求时,不应慌张和无措,首先应该想到这和课本上的哪些知识具有结合点,回忆和分析这种结构的算法和具体实施方法,综合考虑其他的方面,例如:该题的易写性和易懂性及其他的问题的可利用性。在编写时,一个小小的符号,一个常量变量的设定,这都无不考量着我们的细心和严谨,所以学习JAVA,不仅对我们以后学习其他语言有很大的好处,而且也让我们知道了和理解了作为一个编程人员首先应具有的良好心理素质,那就是冷静思考和专心致志。对待学术知识应该是严谨和认真。

这次实训,我们更多学到的是不懂就问和自己应该尽自己的全力去尝试,哪怕失败,只要自己尽自己的全力,和身边同学一起探讨而不是抄袭,团结合作,发挥团队意识,最后在自己的努力下,终于运行成功,这种成就感美不可言,心情愉悦至极。

最后终于要结束了,大家都有种释怀的感觉,当然我想我更多的是兴奋和自己掌握了知识之后的饱满感,学知识就像吃东西一样,吃饱了就应该好好的消化。要不断的温习和运用,做到举一反三,将所学知识充分融入到平时的学习生活中去,为以后的工作做好坚实的基础。感谢学校和老师能够为我们提供这次机会,让我们更好的掌握和了解JAVA这门语言。谢谢!

精选文档,供参考!

参考文献

(1)张勇毅 姚华. Java+SQL Server数据库应用系统开发与实例.人民邮电出版社

(2)张孝祥. Java就业培训教程.清华大学出版社

(3)马,王殊宇.java项目开发实例自学手册.人民邮电出版社 (4)苗春义.java项目开发全程实录.清华大学出版社 、

精选文档,供参考!

考核项目 课堂表现(10%) 评价标准 旷课扣2分,事假扣1分,病假累计2次扣1分。旷课和事假累计次数随学校学生成绩管理规定执行。 遵守实训室管理规定,爱护实训室设备。 评价尺度 优 良 10 8 中 6 可 4 差 2 得分 3 3 2 2 10 10 10 10 5 2.5 2.5 1.5 1.5 8 8 8 8 4 2 2 1.5 1.5 6 6 6 6 3 1.5 1.5 1 1 4 4 4 4 2 1 1 1 1 2 2 2 2 1 实习态度(10%) 按照教师要求完成实训内容,不进行教学无关的其他活动。 服从教师安排,不随意调窜座位,不随意走动,不大声喧哗。 保持室内整洁,不将任何食品带入实训室,不随意丢弃垃圾。 程序功能:完成预期功能。 程序质量:代码行数、程序操作性、程序界面友好。 程序执行:程序正常执行,程序具有容错性。 程序理解:课程内容掌握程度。 职业操作规范:安全、文明作业,具有良好的职业操守 团队合作能力:热心帮助小组其他成员,具有良好团队合作精神及组织协调能力。 交流表达能力:能用语言准确流利的阐述项目成果并能准确回答问题。 工作能力:正确理解工作内容,并制定适当的工作计划,完成工作。 内容全面、充实 知识技能考核(40%) 素质考核(20%) 5 4 3 2 1 5 5 5 5 5 5 4 4 4 4 4 4 3 3 3 3 3 3 2 2 2 2 2 2 1 1 1 1 1 1 实训报告 (20%) 格式规范 总结实际 条理清晰、层次清楚 总分:

(此文档部分内容来源于网络,如有侵权请告知删除,文档可自行编辑修改内容,

供参考,感谢您的支持)

精选文档,供参考!

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务