软件生产实习报告_第1页
软件生产实习报告_第2页
软件生产实习报告_第3页
软件生产实习报告_第4页
软件生产实习报告_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件生产实习报告题目 : 学生信息管理系统 学 号: 0805010216 专 业: 计算机科学与技术 姓 名: 曾垚 指导老师: 冯建湘 湖南科技大学 计算机科学与工程学院1.系统问题定义与描述31.1软件项目名称31.1.1学生信息管理系统31.1.2完成时间2012/3/131.2项目内容简介32.可行性研究和计划43.软件需求分析44.概要设计45.详细设计55.1用户登录模块55.2学生个人信息查看模块75.3学生成绩查询75.4管理员注册学生信息模块85.5学生成绩增删改查模块85.6系统开发环境及其工具软件95.6.1系统开发软硬件环境:95.6.2开发工具Eclipse介绍:9

2、5.7Struts1框架:106.第六章 编码与实现117.总结151. 系统问题定义与描述1.1软件项目名称1.1.1学生信息管理系统1.1.2完成时间2012/3/11.2项目内容简介 学生信息管理是学校管理中异常重要的一个环节,作为学校,除了育人,就是育知,学生信息管理的计算机化是整个学校教务管理中的重要一部分,能否实现这一步关系到学校办学整体效率的高低。 运用学生信息管理系统可以减轻学院教学人员的工作量,加快查询速度,加强管理,以及加快国家各部门关于信息化的步伐,使各项管理更加规范化。还有就是缩小开支,提高工作效率与准确率。可以使学生能够合理安排时间,能够尽快的知道自己的考试成绩,投入

3、新的课程的学习或复习这次没有考过的课程。并且学生信息管理系统的应用也为今天的高校教育在未来市场的竞争力的提高打下了坚实的基础。该系统是基于浏览器的B/S模式学生信息管理系统,主要使用者是教师和学生。项目开发时间为两星期 2012/2/20-2012/3/1.2. 可行性研究和计划经过对该MIS系统的分析和自身的能力,决定采用JavaEE实现,同时在WEB层使用struts1框架,这样便于编写高质量和可维护性好的代码。同时决定在持久层采用Mybatis框架,因为该框是轻量级、半自动化的框架,保留了所有的SQL语句,这样在该项目的开发中,能够提升自己的SQL语句的能力。衡量自己的能力之后,返现该M

4、IS系统在自己的能力范围之内,完全能够一个人独立完成需求分析、领域建模、代码实现、项目测试等整个软件开发阶段。3. 软件需求分析这是一个MIS系统,所有其核心作用是管理学生的信息,学生的信息主要包括了基本信息和学生在大学期间的成绩。同时一个系统肯定需要管理员进行日常的维护,比如学生信息的增删改查。所有,该系统分为学生和管理员了两种登录权限。学生主要有信息查询、密码修改、成绩查询几个核心功能。而对于管理员,有修改自己的密码、初始化所有学生密码、初始化某个学生密码、以及对学生成绩的模糊查询、精确查询等几个核心功能。4. 概要设计对于一个MIS系统,其核心是用户的信息,所有数据库的设计是重中之重,数

5、据库设计的好与坏直接影响着开发的难度和系统运行的效率,而学生管理系统的核心数据则是学生各个不同学期时的成绩。所有在分析阶段主要设计了两种方案,第一种方案:将学院学生的成绩放在一张成绩表中,第二种方案:将学院学生的成绩放在八个不同的表中,每个学期的全院学生的成绩存放在一张表中。但一种方案有两种明显的缺点:首先八个学期的科目都不尽相同,如果将它们全部放在一张表中,会极大的浪费所创建的学生成绩表的空间。所以结合需求分析和系统设计前期考虑把本学生信息管理信息系统分为:权限验证模块、用户管理模块、基础设置模块、成绩管理模块、学生管理模块、数据库管理模块以及帮助模块等。5. 详细设计5.1用户登录模块包括

6、普通用户登录和管理员登录,登录时需要密码,同时还需要输入验证码,该模块控制用户登录口令和用户登录权限,在满足具有不同权限用户登陆的前提下,提交系统的安全性。 YN输入用户信息信息查询信息正确否获得访问权限提示:登陆错误开始普通学生用户登录:管理员登录:登录后的界面:5.2学生个人信息查看模块学生个人信息查看模块,主要是为学生提供查看自己的个人信息,包括个人学号、姓名、学院、专业、住址、联系方式、以及个人身份证号。学生信息查询:5.3学生成绩查询学生成绩查询是学生信息管理系统的一个主要模块,主要功能是提供了查询各个年级的成绩信息以及该生在学校里全部成绩查询。5.4管理员注册学生信息模块管理员实现

7、对刚入学的学生进行学生信息的录入,实现对入学的学生进行信息的一个总体管理。进行了简单的校验功能模块的设计,实现了添加已存在的学生个人信息时会提示:该用户已存在。5.5学生成绩增删改查模块该模块提供给管理员对学生成绩信息的添加以及更新操作。实现了学生成绩信息的管理。方便管理者对学生信息的一个总体掌控。5.6系统开发环境及其工具软件5.6.1系统开发软硬件环境:5.6.2开发工具Eclipse介绍:Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。它是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C+和P

8、ython的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。 Eclipse 最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。IBM提供了最初的Eclipse代码基础,包括Platform、JDT 和PDE。目前由IBM牵头,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、Rational Software、Red Hat及Sybase等。

9、Eclipse是一个开发源码项目,它其实是 Visual Age for Java的替代品,其界面跟先前的Visual Age for Java差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。近期还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。5.7Struts1框架:Struts最早是作为Apache Jakarta项目的组成部分,项目的创立者希望通过对该项目的研究,改进和提高JavaServer Pages 、Servlet、标签

10、库以及面向对象的技术水准。Struts这个名字来源于在建筑和旧式飞机中使用的支持金属架。这个框架之所以叫"Struts",是为了提醒我们记住那些支撑我们房屋,建筑,桥梁,甚至我们踩高跷时候的基础支撑。这也是一个解释Struts在开发Web应用程序中 所扮演的角色的精彩描述。当建立一个物理建筑时,建筑工程师使用支柱为建筑的每一层提供支持。同样,软件工程师使用Struts为业务应用的每一层提供支 持。它的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。我们仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。如果 想混合使用Servlets和JSP的优

11、点来建立可扩展的应用,Struts是一个不错的选择。3.4持久层框架Mybatis介绍:MyBatis 的前身就是 iBatis 。是一个数据持久层(ORM)框架。 iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO),同时还提供一个利用这个框架开发的 JPetStore实例。MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及结果集的检索。MyBatis 使

12、用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java 对象)映射成数据库中的记录。 每个MyBatis应用程序主 要都是使用SqlSessionFactory实例的,一个SqlSessionFactory实例可以通过 SqlSessionFactoryBuilder获得。SqlSessionFactoryBuilder可以从一个xml配置文件或者一个预定义的配 置类的实例获得。 6. 编码与实现学生信息管理系统项目文件系统结构图:数据库连接主要代码:package zengyao.system.dao;imp

13、ort java.sql.*;import mon.Config;public class SqlConnect private static Connection con; private static Config config=Config.getConfig();private static String url=config.getUrl();private static String user=config.getUser();private static String password=config.getPassword();/* * 定义一个得到数据库连接对象方法 getCo

14、nnection() */public static Connection getConnction()/*后台显示数据连接时需要的url以及用户名和密码*/System.out.println("url:"+url+"t"+" user:"+user+"t"+"password:"+password); try /*加载mysql数据库的驱动类*/Class.forName("com.mysql.jdbc.Driver");con=DriverManager.getConn

15、ection(url,user,password); catch (Exception e) System.out.println("SQL Connect Exception:"+e);return con;/*数据库关闭方法 */public static void close()if(con!=null)try con.close(); catch (Exception e) System.out.println(e.getMessage();用户登录查询模块主代码:package zengyao.system.dao;import java.sql.Connecti

16、on;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import zengyao.system.bean.LoginUser;import erfaces.ISqlLoginOperation;public class SqlLoginOperationImp implements ISqlLoginOperationprivate LoginUser user= LoginUser.getLoginUser();private Connect

17、ion con;private ResultSet rs;Override/*通过用户输入的用户名进行查找是否存在 * 对输入的用户名进行简单校验 ,查看输入的用户名是否合理 * 存在则返回true,不存在则false * */public boolean selectById(String userId) con=SqlConnect.getConnction();boolean flag=false;/*定义进行操作的sql语句*/String sql="select * from user where user_id="+userId;try Statement st

18、=con.createStatement();/执行sql语句rs=st.executeQuery(sql);while(rs.next() flag=true; catch (SQLException e) System.out.println(e.getMessage();finallyif(con!=null)SqlConnect.close();return flag;Override/*对用户输入的用户名和密码进行判断 * * 用户名和密码正确返回true否则返回false; * */public boolean select(String id, String password) con=SqlConnect.getConnction();boolean flag=false;/*定义进行操作的sql语句*/Strin

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论