1、软件工程课程设计报告4358611(此文档为word格式,下载后您可任意编辑修改!)计算机虚拟仪器技术实验报告学生姓名: 张铁青 学 院: 机电工程学院 专业及班级: 工业gc1201 学 号: 7 日 期: 2015年1月19日 摘要:本系统通过对LabVIEW软件的应用,设计软件结构,实现网络相册的的基本功能,包括用户创建影集,修改影集名称,用户的注册和登录,用户图片的上传,数据库图片的播放;管理员管理图片和用户。系统利用.Net平台技术进行开发,实现相册的的动态管理,使得对信息的管理更加及时、高效,提高了效率。同时还对系统的开发原理、功能特点和设计方案进行了介绍。目录一.引言 1二、设计
2、正文 11.概述 11.1课题题目 11.2系统的主要目标 11.3 系统的开发环境及运行环境: 12.系统分析 12.1 可行性分析 12.2 需求分析 23.系统总体设计 23.1 设计问题域子系统 2相册系统是实现用户上传照片、用户交流图片以的一个平台,整个电子相册系统有前台和后台两部分,共分为4个模块:用户上传,管理模块,注册登录模块和阅览模块,分别用于完成各自的功能。 2(1)各模块功能 23.2 设计数据管理子系统 3(1)数据库表 3(3)数据库表结构 3相册tb_type的详细数据字段: 3相片tb_photo的详细数据字段: 3用户表 admin的详细数据字段: 33.3 设
3、计人机交互子系统 4(1)用户分类 4本系统的用户可分为三类: 4 管理员用户; 4普通用户; 4(2)用户描述 4管理员用户的描述: 4管理员用户在整个选课系统中起到管理和维护的作用,对普通的信息进行管理和维护。 4普通用户的描述: 4普通用户负责试用系统的各项 44系统流程分析 44.1用户注册流程图 44.2用户上传图片流程图 44.3用户创建相册流程图 45.系统实现 45.1 主要是与数据库连接,提供数据库操作功能,代码如下: 45.2所有系统角色用户的基类,完成用户登录验证功能, 45.3 系统注册页面,代码及运行 55.4 上传读取图片信息 65.5用户创建相册界面代码及运行 8
4、5.6用户图片代码及运行 95.7用户查看代码及运行 10三、课程设计总结或结论 11参考文献 11一.引言通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。具体如下:1. 学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编码和测试方面的知识;2. 熟悉自动化的软件开发工具Rational Rose 2003,并将其运用于软件开发的全过程;3. 进一步加强和提高软件工程文档的编写能力;4. 培养协作能力和团队精神。二、设计正文1.概述1.1课题题目:个人电子相册的设计与实现1.2系统的主要
5、目标:研究LabVIEW编程技术,了解B/S编程技术发展的未来趋势,掌握一种开发平台,编写出具有更高交互性和网络体验的Web应用程序。 1.3 系统的开发环境及运行环境:操作系统: Windows 7 旗舰版建模工具: Rational Rose 2003数据库系统:Access 2007开发工具: Visual Studio 2010Web服务器:IIS+ASP.NET 2.0平台2.系统分析2.1 可行性分析2.1.1 系统总体目标电子相册是互联网络的产物,现在电子相册系统已经层出不穷,而本系统是一个区别于现在国内外已经开发出来的电子相册网站系统,它是一个单用户空间而非网站,主要是一个为用
6、户提供的个人相片展示、存放的个人相册空间。这个电子相册的定位是一群朋友共享照片、交流讨论的开放式的个人空间。本系统可以供自己展示、存放照片,可以让拥有正确口令的浏览者浏览该用户的照片以及发表留言,同时拥有正确口令的浏览者也享有用户所有的权利(上传、删除相片等),它在某种程度上是开放式的、自由式的。因此这是一个相对来说安全、私密、开放的和朋友分享、交流的私人电子相册空间。2.1.2 技术可行性分析这个电子相册是一种基于B/S架构的管理系统,它采用目前最有发展前景的c#语言编写,用到了当今先进的技术如Html,CSS+DIV,JavaScript ,Mysql等关键技术来实现该系统。开发本系统的V
7、isual Studio 2010编程软件、是可以直接在网络上免费下来得来的,其中的Wamp集成环境在Windows平台下集成了Apache、MySQL、PHP服务,无需再另外下载PHP环境和MySQL数据库。这些应用软件是现在常用的网页开发工具,都能够很方便的掌握,并且也学了有关网页开发的课程,实现该电子相册空间的技术能够比较好的实现,所以对于本系统在技术上是可以达到的。2.2 需求分析2.2.1 总体需求该设计系统要具有实用性,功能完善,界面良好。设计该系统的流程如图3所示。流程设计: 程序设计:图2.1 程序设计流程图2.2.2 功能需求本系统应该具有登录验证、修改密码、创建相册、浏览相
8、片、上传相片、删除相册或相片、等功能,详见图4。图2.2 电子相册系统功能结构图3.系统总体设计3.1 设计问题域子系统相册系统是实现用户上传照片、用户交流图片以的一个平台,整个电子相册系统有前台和后台两部分,共分为4个模块:用户上传,管理模块,注册登录模块和阅览模块,分别用于完成各自的功能。(1)各模块功能表2-1 学生选课系统功能模块表功能模块包含子功能模块功能管理模块注册管理子模块填写信息,进行注册相册管理子模块对相册进行管理相片管理子模块对相片进行管理用户上传用户上传自己的图片登录用户用户阅览模块查看已经上传的图片3.2 设计数据管理子系统(1)数据库表表3-2 数据库表序号数据库表数
9、据表存储的内容1tb_photo存储相片的信息2tb_type存储相册的信息3admin存储用户的信息(3)数据库表结构相册tb_type的详细数据字段:表3-3 Student学生用户表序号字段名字段类型说明备注1IDnvarchar(20)not null序号关键字2TypeName文本相册名字相片tb_photo的详细数据字段:表3-4 Teacher教师用户表序号字段名字段类型说明备注1IDnvarchar(20)not null序号关键字2Title文本标题3Type数字所属相册4imgPath文本图片路径5Content备注内容6Creater文本创建者7CreatTime备注创建
10、时间用户表 admin的详细数据字段:表3-7 Users管理员表序号字段名字段类型说明备注1Usernvarchar(20)not null用户名关键字2Pwdnvarchar(20)not nul系统管理员密码3.3 设计人机交互子系统(1)用户分类本系统的用户可分为三类:2 管理员用户;普通用户;(2)用户描述管理员用户的描述:管理员用户在整个选课系统中起到管理和维护的作用,对普通的信息进行管理和维护。普通用户的描述:普通用户负责试用系统的各项4系统流程分析4.1用户注册流程图4.2用户上传图片流程图4.3用户创建相册流程图5.系统实现本系统采用了三层架构来实现,即分为用户界面层(UI)
11、、业务逻辑层(BLL)和数据访问层(DAL),用户界面层是展示给用户的界面,方便用户与系统进行交互;业务逻辑层是对系统业务实体的封装,完成系统业务功能;数据访问层直接与数据库打交道,为业务逻辑层提供底层的数据库操作。5.1 主要是与数据库连接,提供数据库操作功能,代码如下:public static OleDbConnection createNewCon()/创建并打开一个链接 string conStr = Provider=Microsoft.Jet.OleDb.4.0;Data Source= + System.AppDomain.CurrentDomain.BaseDirectory
12、 + App_Dataphoto.mdb; OleDbConnection con = new OleDbConnection(conStr); con.Open(); return con; 5.2所有系统角色用户的基类,完成用户登录验证功能,代码如下:private void LoginCheck() string UserID = txtuser.Text.Trim().ToString(); string pwd = txtpassword.Text.Trim().ToString(); OleDbConnection con = Db.createNewCon(); /con.Ope
13、n(); string Sql =Select user,pwd from admin where user= + UserID + and pwd= + pwd + ; OleDbCommand cmd = new OleDbCommand(Sql.ToString(), con); /开a始?验证 OleDbDataReader read = cmd.ExecuteReader(); if (read.Read() Response.Redirect(Index.aspx); else Response.Write(alert(帐号?或密码?错误!); con.Close(); /登录 p
14、rotected void btnOK_Click(object sender, EventArgs e) LoginCheck(); protected void btnSi_Click(object sender, EventArgs e) Response.Redirect(resign.aspx); 5.3 系统注册页面,代码及运行效果如下: private void Add() string UserID = txtuser.Text.Trim().ToString(); string pwd = txtpassword.Text.Trim().ToString(); OleDbCo
15、nnection con = Db.createNewCon(); string Sql = insert into admin(user,pwd)+ values(); OleDbCommand cmd = new OleDbCommand(Sql.ToString(),con); cmd.Parameters.AddWithValue(user, UserID); cmd.Parameters.AddWithValue(pwd, pwd); int redult = cmd.ExecuteNonQuery(); if (redult 0) Response.Redirect(Login.a
16、spx); protected void btnqd_Click(object sender, EventArgs e) Add(); 5.4 上传读取图片信息代码如下: public int add(string typename) OleDbConnection con = Db.createNewCon(); string sql = insert into tb_type(typeName)+ values(typeName); OleDbCommand cmd = new OleDbCommand(sql); cmd.Connection = con; cmd.Parameters.
17、AddWithValue(typeName, typename); int count = cmd.ExecuteNonQuery(); return count; /新?增?图?片? public int addpic(string Title, int type, string imgPath, string Content, string Creater, string creatTime) OleDbConnection con = Db.createNewCon(); string sql = insert into tb_photo(Title,type,imgPath,Conte
18、nt,Creater,creatTime) + values(); OleDbCommand cmd = new OleDbCommand(sql); cmd.Connection = con; cmd.Parameters.AddWithValue(Title, Title); cmd.Parameters.AddWithValue(type, type); cmd.Parameters.AddWithValue(imgPath, imgPath); cmd.Parameters.AddWithValue(Content, Content); cmd.Parameters.AddWithVa
19、lue(Creater, Creater); cmd.Parameters.AddWithValue(creatTime, creatTime); int count = cmd.ExecuteNonQuery(); return count; /读取?图?片?信?息 public DataSet getAllPic() OleDbConnection con = Db.createNewCon(); OleDbDataAdapter dad = new OleDbDataAdapter(); dad.SelectCommand = new OleDbCommand(select * from
20、 tb_photo order by id DESC, con); DataSet ds = new DataSet(); dad.Fill(ds, tb_photo); con.Close(); return ds; public DataSet getAllPicToN() OleDbConnection con = Db.createNewCon(); OleDbDataAdapter dad = new OleDbDataAdapter(); dad.SelectCommand = new OleDbCommand(select top 10 * from tb_photo order
21、 by id DESC, con); DataSet ds = new DataSet(); dad.Fill(ds, tb_photo); con.Close(); return ds; public DataSet getAllPicType() OleDbConnection con = Db.createNewCon(); OleDbDataAdapter dad = new OleDbDataAdapter(); dad.SelectCommand = new OleDbCommand(select * from tb_type order by id asc, con); Data
22、Set ds = new DataSet(); dad.Fill(ds, tb_type); con.Close(); return ds; public DataSet getAllPicTypeById(int id) OleDbConnection con = Db.createNewCon(); OleDbCommand cmd = new OleDbCommand(select * from tb_type where id=id order by id asc, con); cmd.Parameters.AddWithValue(id,id); OleDbDataAdapter d
23、ad = new OleDbDataAdapter(cmd); DataSet ds = new DataSet(); dad.Fill(ds, tb_type); con.Close(); return ds; public DataSet getAllPicTypeByType(int typeId) OleDbConnection con = Db.createNewCon(); OleDbCommand cmd = new OleDbCommand(select * from tb_photo where type=typeId order by id asc, con); cmd.P
24、arameters.AddWithValue(typeId, typeId); OleDbDataAdapter dad = new OleDbDataAdapter(cmd); DataSet ds = new DataSet(); dad.Fill(ds, tb_photo); con.Close(); return ds; public int GetMaxId() OleDbConnection con = Db.createNewCon(); OleDbCommand cmd = new OleDbCommand(select max(Id) from tb_photo, con);
25、 int count = (int)cmd.ExecuteScalar(); con.Close(); return count; public int GetMinId() OleDbConnection con = Db.createNewCon(); OleDbCommand cmd = new OleDbCommand(select min(Id) from tb_photo, con); int count = (int)cmd.ExecuteScalar(); con.Close(); return count; public DataSet getAllPicById(int i
26、d) OleDbConnection con = Db.createNewCon(); OleDbCommand cmd = new OleDbCommand(select * from tb_photo where id=id order by id asc, con); cmd.Parameters.AddWithValue(id, id); OleDbDataAdapter dad = new OleDbDataAdapter(cmd); DataSet ds = new DataSet(); dad.Fill(ds, tb_photo); con.Close(); return ds;
27、 public int getAllPicCount() OleDbConnection con = Db.createNewCon(); OleDbCommand cmd = new OleDbCommand(); cmd.Connection =con; cmd.CommandText =select count(*) from tb_photo; int count =(int)cmd.ExecuteScalar(); return count; 5.5用户创建相册界面代码及运行效果如下: protected void Page_Load(object sender, EventArgs
28、 e) if(!Page.IsPostBack) DataTable dt = new photo().getAllPicType().Tables0; this.GridView1.DataSource = dt; this.GridView1.DataBind(); protected void btnadd_Click(object sender, EventArgs e) string typename = this.TextBox1.Text.ToString(); int count = new photo().add(typename); if (count 0) Page.Re
29、gisterStartupScript(null, alert(添加成功|!);); else Page.RegisterStartupScript(null, alert(添加失败!);); protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) e.Row.Attributes.Add(onmouseover,currentcolor=this.style.backgroundColor,this.style.backgroundColor=red); e.Row.Attributes.Add(onmouseout, this.style.backgro
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1