ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:24.04KB ,
资源ID:3645727      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3645727.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(综合实训报告测试版.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

综合实训报告测试版.docx

1、综合实训报告测试版综合实训报告写作框架一、综合实训报告写作框架正文第一章实训的目的、要求1、基本信息实训时间(18周)共计学时实训指导教师:王现君实训地点:软件学院实训中心实训题目:部门相册管理2、.NET平台开发综合实训实训目的1、总体目标 通过本门课程的学习,使学生具有较强的团队意识和协作精神,具有明确的职业目标,.NET综合实训是软件技术专业的核心专业课程。采用东软.NET综合实训平台一体化教学,即:实现理论教学与实践教学相互融合,边听边学、边学边练,寓教于学、寓教与做,同时将素质教育融于整个人才培养活动中,重点培养学生的综合职业素质和学生的操作能力与技术服务能力。实训要求掌握项目开发流

2、程,进行需求分析,画出需求分析图示使学生了解系统概要设计的格式内容和撰写方法掌握数据库设计的一般方法,设计系统数据库使学生掌握系统登录界面及其它界面的设计方法根据系统设计进行各部分代码的实现(本阶段与UI设计同步进行)主要实训软件1)东软实训平台2) 操作系统:Windows 2000,XP;Windows vaster/73) 平台:.NET FrameWork3.0,Visual Studio 20054) 数据库:SQL Server 2005第二章 实训内容1、需求分析完成时间:2011-2-26主要内容:1 系统特性概述系统特性名称系统特性描述优先级登录输入密码进行登录退出退出软件模

3、糊查询可以根据时间 名称 关键字等进行查询并删除或修改照片备注相册管理可以对相册或照片进行增 删 改 查并对照片添加备注修改密码可以对密码进行修改2需求规格2.1 登录用例概述描述了用户登录的完整过程。基本流程1. 打开系统登录页 2. 输入用户名和密码 3. 点击登录按钮 4. 登录成功,显示个人首页 备选流程1、(基3)用户未找到,提示用户不存在 2、(基3)用户密码不匹配,提示密码错误 3、(基3)离职用户登录,提示用户已经离职,不能登录 4、(基3)用户登录前访问某受限页面,登录成功后直接转向受限页面 5、(备4)登录前受限页面,登录后用户权限不足,转向权限不足提示页面 2.2 退出用

4、例概述描述了用户退出系统的完整过程。基本流程1、点击退出按钮 2、系统进行退出处理,并转到登录页面 备选流程2.3修改密码用例概述描述了用户修改密码的完整过程。基本流程1. 1、选择修改密码功能 2. 2、输入原密码、新密码和确认密码 3. 3、点击确定按钮 4. 4、修改密码成功,系统显示成功页面 备选流程5. (基3)用户输入的原密码不正确,提示原密码不正确,修改失败 6. (基3)用户输入的新密码和确认密码不一致,提示两次输入的新密码不一致2.4模糊查询用例概述用户可以根据时间 名称 关键字等进行查询。基本流程1、点击时间2、进行查询3、点击名称 关键字等4、进行查询5、点击删除或修改照

5、片备注6、点击完成备选流程2.5相册管理用例概述用户可以新建相册,删除相册,上传照片包括对相片的增删改查,并对照片添加备注。基本流程1、 点击相册管理备选流程2.51新建相册用例概述用户可以新建相册基本流程1、 新建相册2、 输入相册名称3、 点击新建备选流程2.52删除相册用例概述用户可以删除相册基本流程1、 删除相册2、选择相册3、点击“删除”备选流程2.53上传照片用例概述用户可以上传照片基本流程2、 点击上传相片3、 选择相册4、 选择上传的照片5、 添加备注(可空)备选流程2、系统设计完成时间:2011-3-05主要内容:1系统公用代码设计1.1页面设置1.1.1功能描述对页面及操作

6、进行代码设计。1.1.2方法描述using Edu.Sovo.OACF;using System.Text;public partial class result_report : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (SessionConstants.EXECUTE_RESULT != null) /有返回结果 OperationResult or = (OperationResult)SessionConstants.EXECUTE_RESULT; if (or.IsSucce

7、ss) /如果是成功情况 /增加自动返回地址 HtmlMeta meta = new HtmlMeta(); meta.HttpEquiv = refresh; meta.Content = 4;url= + Request.ApplicationPath + or.UrlValue0; this.Header.Controls.Add(meta); /设置页面样式 tdTitle.Style.Add(HtmlTextWriterStyle.Color, red); tdTitle.Style.Add(HtmlTextWriterStyle.TextAlign, center); tdTitl

8、e.InnerText = 操作成功; /设置操作说明 tdMsg.Style.Add(HtmlTextWriterStyle.Padding, 10px); tdMsg.Style.Add(HtmlTextWriterStyle.BackgroundColor, #FFFFCC); tdMsg.Style.Add(HtmlTextWriterStyle.BorderWidth, 1px); tdMsg.Style.Add(HtmlTextWriterStyle.BorderStyle, solid); tdMsg.Style.Add(HtmlTextWriterStyle.BorderCol

9、or, black); StringBuilder sb = new StringBuilder(); foreach (String msg in or.ResultMsg) sb.Append( + msg + ); ulMsg.InnerHtml = sb.ToString(); /设置返回地址 StringBuilder sb1 = new StringBuilder(); for(int i = 0; i or.UrlName.Count;i+) String value = or.UrlValuei; String htmlStr = + or.UrlNamei + | ; sb1

10、.Append(htmlStr); /sb1.Remove(sb.Length-1, 1); /去掉最后的| divReturnURL.InnerHtml = sb1.ToString().Substring(0,sb1.Length - 2); 。3、系统实施完成时间:2011-4-03主要内容:1)数据库的设计与实现PHOTO_USERS:用户表字段名 字段类型 是否可为空 默认值 字段含义 注释 USERID NUMBER(10) NOT NULL 用户编号 主键 USERNAME VARCHAR2(50) NOT NULL 用户名 PASSWORD VARCHAR2(100) NOT

11、NULL 密码 REALNAME VARCHAR2(50) 真实姓名 PHOTO_PHOTOS:照片表字段名 字段类型 是否可为空 默认值 字段含义 注释 PHOTOID NUMBER(10) NOT NULL 流水号,照片编号 主键 PHOTONAME VARCHAR2(100) NOT NULL 照片名称 ALBUMID NUMBER(10) NOT NULL 所属相册 外键,引用PHOTO_ALBUMS表 SCREENDATE DATE NOT NULL SYSDATE 拍摄时间 DESCRIPTION VARCHAR2(600) 照片描述 PHOTOTYPE VARCHAR2(100)

12、 NOT NULL 照片类型 PHOTO_ALBUMS:相册表字段名 字段类型 是否可为空 默认值 字段含义 注释 ALBUMID INT NOT NULL 流水号,相册编号 主键 ALBUMNAME NVARCHAR(50) NOT NULL 相册名称 DESCRIPTION NVARCHAR(MAX) 相册描述 BUILDDATE DATETIME NOT NULL SYSDATE 创建时间 2)数据层的设计与应用(详述企业库与OACF)1.企业库简介有Microsoft设计的协助开发人员处理企业开发常见问题的应用程序块的集合企业库提供的程序块缓存应用程序块(Caching)允许开发人员在

13、其他应用程序中集成本地缓存.加密应用程序块(Cryptography)允许开发人员在其应用程序中包含机密和哈希功能数据访问应用程序块(Data Access)允许开发人员在其应用程序中集成标准的数据库功能异常处理应用程序块(Exception Handling)允许开发人员和决策人员针对发生在企业库应用程序体系结构层的异常处理创建一致的策略日志和规范应用程序块(Logging Handling)允许开发人员在其应用程序中集成标准的日志和规范功能。安全应用程序块(Security Application)允许开发人员在其应用程序中集成安全功能。应用程序可以在多种情况下使用应用程序块,例如,根据数

14、据库验证和授权用户、检索角色和配置文件信息,以及缓存用户配置文件信息等。使用步骤使用Data Access Application Block(DAAB)访问数据库的一般步骤(1).创建连接字符串(2).添加Application Block的引用(3).添加命名空间(4).创建Database对象(5).创建DbCommand对象(6).执行数据库操作(7).处理结果2.OACFOACF是对企业库进行一个类的封装以便于开发人员的应用3)逻辑层的设计与实现1.相册管理类using Microsoft.Practices.EnterpriseLibrary.Data;using Microsof

15、t.Practices.EnterpriseLibrary.Common.Configuration;using System.Data;using Edu.Sovo.OACF;namespace Services.AlbumBll public class AlbumService public AlbumService() private static String SQL_Get_IsAlbumName = select * from PHOTO_ALBUMS where ALBUMNAME=ALBUMNAME; public static bool albumNameExist(str

16、ing albumName) Dictionary nameValueParams = new Dictionary(); nameValueParams.Add(ALBUMNAME, albumName); bool result = DataAccess.IsExisted(SQL_Get_IsAlbumName, nameValueParams); return result; private static String SQL_AlbumName = select ALBUMID from PHOTO_ALBUMS where ALBUMNAME=ALBUMNAME; public s

17、tatic bool ifCanEdit(string AlbumID, string albumName) string StrAlbumeID_Old = ; object ObjAlbumeID_Old = DataAccess.ExecuteScalar(SQL_AlbumName, ALBUMNAME, albumName); if (ObjAlbumeID_Old != null) StrAlbumeID_Old = ObjAlbumeID_Old.ToString(); if (StrAlbumeID_Old = AlbumID) return true; else return

18、 false; else return false; public static DataSet getAlbums() string getalbumlist = select distinct al.ALBUMNAME,al.ALBUMID, al.BUILDDATE,count(ph.PHOTOID)AS PHOTONUM from PHOTO_ALBUMS al LEFT outer join PHOTO_PHOTOS ph on al.ALBUMID=ph.ALBUMID group by al.ALBUMID,al.ALBUMNAME, al.BUILDDATE order by

19、al.BUILDDATE desc; DataSet ds = DataAccess.ExecuteToDataSet(getalbumlist); return ds; private static String SQL_DEL_BY_ALBUMID = delete from PHOTO_ALBUMS where ALBUMID=ALBUMID; public static void deleteAlbum(long albumId) bool boresult = DataAccess.ExecuteNonQuery(SQL_DEL_BY_ALBUMID, ALBUMID, Conver

20、t.ToString(albumId); private static String SQL_INSERT_ALBUM = insert into PHOTO_ALBUMS(ALBUMNAME,DESCRIPTION,BUILDDATE) values (ALBUMNAME,DESCRIPTION,BUILDDATE); public static bool insertAlbum(Dictionary AlbumInfo) bool result = DataAccess.ExecuteNonQuery(SQL_INSERT_ALBUM, AlbumInfo, CommandType.Tex

21、t); return result; private static String SQL_UPDA_BY_ALBUMID = update PHOTO_ALBUMS set ALBUMNAME=ALBUMNAME, DESCRIPTION=DESCRIPTION where ALBUMID=ALBUMID; public static bool updateAlbum(Dictionary NewAlbumInfo) return DataAccess.ExecuteNonQuery(SQL_UPDA_BY_ALBUMID, NewAlbumInfo); private static Stri

22、ng SQL_ALBUM_BY_ALBUMID = select distinct ALBUMNAME, DESCRIPTION from PHOTO_ALBUMS where ALBUMID=ALBUMID order by ALBUMNAME; public static Dictionary getAlbum(string albumId) return DataAccess.ExecuteToSet(SQL_ALBUM_BY_ALBUMID, ALBUMID, albumId); 2.照片管理类using System.Data;using Edu.Sovo.OACF;namespac

23、e Services.PhotoBll public class PhotoService public static DataSet searchPhoto(string PHOTONAME, string ALBUMNAME, string DESCRIPTION, string ALBUMID, string StartTime, string EndTime) string SQL_SearchPhoto = select distinct ph.PHOTOID,ph.PHOTONAME,ph.DESCRIPTION, ph.SCREENDATE from PHOTO_PHOTOS p

24、h inner join PHOTO_ALBUMS al on al.ALBUMID=ph.ALBUMID; QueryHelper qh = new QueryHelper(SQL_SearchPhoto, order by ph.SCREENDATE desc); qh.setParam(QueryHelper.IsNotBlank(PHOTONAME), PHOTONAME like %+PHOTONAME+%, PHOTONAME, PHOTONAME); qh.setParam(QueryHelper.IsNotBlank(ALBUMNAME), al.ALBUMNAME=ALBUM

25、NAME, ALBUMNAME, ALBUMNAME); qh.setParam(QueryHelper.IsNotBlank(DESCRIPTION), ph.DESCRIPTION=DESCRIPTION, DESCRIPTION, DESCRIPTION); qh.setParam(QueryHelper.IsNotBlank(ALBUMID), al.ALBUMID=ALBUMID, ALBUMID, ALBUMID); qh.setParam(QueryHelper.IsNotBlank(StartTime), datediff(day,Convert(DateTime,StartT

26、ime),ph.SCREENDATE)=0, StartTime, StartTime); qh.setParam(QueryHelper.IsNotBlank(EndTime), datediff(day,Convert(DateTime,EndTime),ph.SCREENDATE)=0, EndTime, EndTime); return DataAccess.ExecuteToDataSet(qh.getQuerySql(), qh.getParams(); = public static DataSet getStatByMonth() string PhotoStaticStr =

27、 select convert(varchar(4),datepart(yy,SCREENDATE)+-+convert(varchar(4),datepart(mm,SCREENDATE)as TIME,count(*) as COUNT from PHOTO_PHOTOS group by convert(varchar(4),datepart(yy,SCREENDATE),convert(varchar(4),datepart(mm,SCREENDATE) order by TIME desc; DataSet ds = DataAccess.ExecuteToDataSet(Photo

28、StaticStr); return ds; public static DataSet getAllAlbums() string PhotoStaticStr = select albumname from PHOTO_ALBUMS order by BUILDDATE desc; DataSet ds = DataAccess.ExecuteToDataSet(PhotoStaticStr); return ds; public static bool deletePhoto(string photoId) string deleteStr = delete from PHOTO_PHOTOS where PHOTOID= + photoId; TransHelper trans = new TransHelper(); trans.AddCommand(deleteStr, null, null); bool result = trans.Execute(); return result; private static String SQL_PHOTO_BY_PHOTOID = select distinct PHOTONAME, DESCRIPTION from PHOT

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1