- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网络相册的设计和部分实现
网络相册的设计与部分实现 信息科学与技术学院 吴 涛 1、基本需求分析 由可以在电脑上观赏的区别于CD/VCD的静止图片组成的特殊文档,其内容不局限于摄影照片,也可以包括各种艺术创作图片。 电子相册具有传统相册无法比拟的优越性:图、文、声、像并茂的表现手法,随意修改编辑的功能,快速的检索方式,永不褪色的恒久保存特性,以及廉价复制分发的优越手段。 网络相册是网站为用户提供的个人相片展示、存放的平台;一般的网络相册可以选择“公开”或者“私人”的属性,如果您的相册是设为公开属性,其他用户可以查看、分享。 在网络相册网站中,用户可以上传图片,建立分类相册,设定相册隐私权限,也可以观看、评论其他人的相册与照片。 有些相册也支持照片外链,方便用户在其他网站、社区、讨论区分享他们的照片。 国外的网络相册主要有PICASA、 Flickr、Photobucket。 国内的网络相册主要有POCO网络相册、16相册、网易相册、百度相册、有照片等。 请有兴趣者课后注册并查阅相关产品。 2、总体设计 首页 照片缩略图查看、照片详细图浏览 照片管理(添加、删除、修改等) 照片分类、分享、评论 照片特效(放大、缩小、边框、滤镜、场景渲染等) 用户管理(注册、修改、删除、更新等) 照片高级功能(以图搜图、自动抠图等) 3、数据库设计 (1)、用户表 用户ID 用户昵称 用户密码 可以用用户ID登陆页可以用昵称登陆 ID是英文IDentity的缩写,标识号的意思。也称为序列号或帐号,是某个体系中相对唯一的编码,相当于是一种“身份证”。 在某一具体的事物中,ID号一般是不变的,至于用什么来标识该事物,则由设计者自己制定的规则来确定。 一般而言,这个规则根据具体的使用环境在设计上有一定的主观性。 如:“员工工号”、“身份证号码”“计算机网址”等。 (解释来源:百度百科) (2)、照片表(图像表) 图像ID 图像拍摄信息 (相机、时间等从图像自动读取) 图像类别ID 图像作者 (如果不填写,就默认根据类别ID获取用户ID作为作者) 图像内容 图像注释说明 图像缩略图 (3)、图像类别表 图像类别ID 用户ID 图像类别信息 是否公开(加锁) 4、大图浏览功能的实现 打开对应图像,显示图像,以及相关的详细信息,如图像作者、拍摄时间、采用相机等。 在该功能模块的基础上扩展(课后) (a)照片分类、分享、评论 (b)照片特效(放大、缩小、边框、滤镜、场景渲染等) //(1)连接数据库 SqlConnection con = new SqlConnection(); con.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings[ImgConnectionString].ToString(); con.Open(); //(2)实例化命令对象 int imgid = int.Parse(Request.QueryString[imgid]); string SqlString = select * from ImgTable where ImgID = + imgid; SqlCommand com = new SqlCommand(SqlString, con); //(3)读取二进制流对象并输出 SqlDataReader sdr = com.ExecuteReader(); if (sdr.Read()) { Response.BinaryWrite((byte[])sdr[ImgBinary]); } Response.End(); //response.flush() Command对象,也称为数据库命令对象,主要执行包括添加、删除、修改及查询数据的操作的命令,也可以用来执行存储过程。 一个CommandType 属性:用于执行存储过程时为CommandType.StoredProcedure,默认情况下为CommandType.Text,表示执行的是普通SQL语句。 Command主要有三个方法: ExecuteNonQuery () :执行一个SQL语句,返回受影响的行数,这个方法主要用于执行对数据库执行增加、更新、删除操作,注意查询的时候不是调用这个方法。ExecuteReader ():执行一个查询的SQL语句,返回一个DataReader对象。ExecuteScalar ():从数据库检索单个值,这个方法主要用于统计操作。 //(4)关闭相关对象 sdr.Close(); con.Close(); //(5)出错处理 try {……………….} catch
文档评论(0)