1、在线相册管理系统综述广东海洋大学学生实习总结报告环节名称Web 开发技术课程实习学院信息学院所 在 系计算机指导教师甘元驹学生姓名杨汛专业名称计算机科学与技术班级计科1111班起止时间2014年5 月 26 日至2014年 6月20日第一章 绪论1.1 课程设计题目在线相册管理系统 1.2课程设计任务首页分页显示所有用户的图片,上传的用户和上传日期 用户能够注册用户登录后,进行相册管理:上传新图片、对本人上传的图片进行 修改、删除(注意:修改图片的时候,要注意对原上传图片文件的 删除,防止图片越来越多的情况出现)用户信息的修改,可增加的 功能:图片栏目,图片分类存放,示例:QQ相册中的“相册”
2、相片的评论功能1.3系统采用的相关技术 本系统主要采用jsp技术和sql 技术结合,用到的工具有Myeclipse 10和sql server 2005,其中使用用jsp建立图形界面、用sql 建立数据库。第2章 系统需求分析和总体设计2.1需求分析面对传统的相册难于管理,图片多,耗费空间,也有时候自己忘了存放位置,难于查找等问题。基于个人的照片,开发在线相册管理系统来帮助大家管理自己心爱的图片,以便方便查看。2.2功能模块照片管理模块:该模块对所有用户都可以使用,普通用户只能查看、浏览照片,管理员可以实现查看、删除、评论、上传照片等功能。用户管理模块:该模块可以实现用户注册成为管理员,然后管
3、理自己的个人相册,同个用户名只能注册一次。2.3系统总体模块功能图总体模块功能图2.4数据库设计2.4.1数据库逻辑设计在线相册管理系统用户表(dbo.tb_userInfo)结构,如下所示序号字段描述类型1username用户名varchar(50)2password密码varchar(50)3realname真实姓名varchar(50)4email邮件地址varchar(50)5question密保问题varchar(50)6result答案varchar(50)在线相册管理系统照片基本信息表(dbo.tb_photo)结构,如下所示序号字段描述类型1photoName照片名称varch
4、ar(50)2photoSize照片大小varchar(50)3photoType照片类型varchar(50)4photoTime照片上传时间varchar(50)5photoAddress照片保存地址varchar(50)6username上传者varchar(50)7printAddress照片浏览地址varchar(50)8smallPhoto封面小照片varchar(50)2.4.2连接数据库的实现import java.sql.*;public class JDBConnection private final String dbDriver = com.microsoft.sql
5、server.jdbc.SQLServerDriver; / 设置SQL / Server2005数据库驱动名称 private final String url = jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=db_photo; / 设置连接SQL / Servlet2005的utl地址 private final String userName = sa; / 设置登录数据库的用户 private final String password = 111; / 设置登录用户的密码 private Connection con = null; / 设
6、置连接对象,并赋值为null / 通过构造方法加载数据库驱动 public JDBConnection() try Class.forName(dbDriver).newInstance(); / 通过Java反射机制进行加载数据库驱动操作 catch (Exception ex) System.out.println(数据库加载失败); / 创建数据库连接 public boolean creatConnection() try con = DriverManager.getConnection(url, userName, password); / 根据用户名,url地址以及密码进行数据连
7、接操作 con.setAutoCommit(true); / 设置系统的自动连接操作 return true; catch (SQLException e) System.out.println(e.getMessage(); System.out.println(creatConnectionError!); return false; / 对数据库的增加、修改和删除的操作 public boolean executeUpdate(String sql) if (con = null) / 当con对象为空,进行creatConnection()方法,实现数据库连接操作 creatConne
8、ction(); try Statement stmt = con.createStatement(); int iCount = stmt.executeUpdate(sql); / 执行参数SQL语句 System.out.println(操作成功,所影响的记录数为 + String.valueOf(iCount); / 在控制台中显示执行的结果 return true; / 如果SQL语句执行成功,返回true catch (SQLException e) System.out.println(e.getMessage(); return false; / 如果SQL语句执行失败,返回f
9、alse / 对数据库的查询操作 public ResultSet executeQuery(String sql) ResultSet rs; / 设置ResultSet结果集对象rs try if (con = null) / 当con对象为null,取得数据库连接操作 creatConnection(); Statement stmt = con.createStatement( ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); try rs = stmt.executeQuery(sql); / 执行参数中的
10、SQL语句 catch (SQLException e) System.out.println(e.getMessage(); return null; catch (SQLException e) System.out.println(e.getMessage(); System.out.println(executeQueryError!); return null; return rs; / 将查询的结果通过return关键字进行返回 / 关闭数据库的操作 public void closeConnection() if (con != null) try con.close(); ca
11、tch (SQLException e) e.printStackTrace(); System.out.println(Failed to close connection!); finally con = null; 2.5系统实现的主要功能 登录操作用户在登录界面填写完用户名、密码及验证码后,单击确定按钮,不是所有的用户名和密码都能进入,输入的用户名和密码需与数据库中的用户表内的记录一致,需进行判断。注册操作如果想使用相册管理系统,可是又没有用户名和密码的,可以单击用户登录界面的注册一项,这样可以自己定义用户名和密码,这样就可以对自己相册进行操作。上传操作用户在进入系统后可以进行相应操作
12、,其中包括上传照片,删除照片,评论照片等,新上传的照片需要把输入的信息添加到数据库中,照片才可以上传成功。2.6主要功能的实现算法照片的查看和浏览,滚动浏览图片或者幻灯片浏览。var sImgArr=new Array();var plImg = new Image();var gIndex = 0;function SlideImg(index) gIndex = index; if (Microsoft Internet Explorer = navigator.appName) document.imagesslideImg.filters.item(0).Apply(); docume
13、nt.imagesslideImg.src = sImgArrindex; if (Microsoft Internet Explorer = navigator.appName) document.imagesslideImg.filters.item(0).play(); function NextImg() /显示下一张图片 gIndex = (gIndex+1)=sImgArr.length?0:(gIndex+1); SlideImg(gIndex);function PrevImg() /显示前一张图片 gIndex = (gIndex-1)0?(sImgArr.length-1)
14、:(gIndex-1); SlideImg(gIndex); var sid;function inislide() /设置自动运行 if(sid=null) sid = setInterval(NextImg(), 3000); 用户密码加密public class Encrypt / 该方法将密码进行MD5的加密,这个方法为静态方法,可以通过类名进行直接访问 public static String encode(String str) if (str = null) / 当参数str为空,直接通过return关键字进行返回 return null; StringBuilder sb =
15、new StringBuilder(); try MessageDigest code = MessageDigest.getInstance(MD5); code.update(str.getBytes(); byte bs = code.digest(); for (int i = 0; i bs.length; i+) int v = bsi & 0xFF; if (v 16) sb.append(0); sb.append(Integer.toHexString(v); catch (NoSuchAlgorithmException e) e.printStackTrace(); re
16、turn sb.toString().toUpperCase(); / 该方法返回的系统的时间,也是静态方法 public static String currentlyTime() Date date = new Date(); DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL); return dateFormat.format(date); / 该方法将参数内容进行转码,也是静态方法 public static String toChinese(String strvalue) try if (strva
17、lue = null) return ; else strvalue = new String(strvalue.getBytes(ISO8859_1), GBK); return strvalue; catch (Exception e) return ; 第3章 系统详细设计与实现3.1界面设计3.1.1新用户注册界面3.1.2登录界面 3.1.3整体界面3.1.4我的相册界面3.1.5照片上传界面2.1.6照片浏览界面3.1.7照片详细信息界面3.2系统测试与实现系统测试是系统开发周期中的一个十分重要的阶段,其重要性体现在它是保证系统质量和可靠性的最后关键,是对整个系统开发过程包括系统分
18、析、系统设计和系统实施的最终审查。虽然本系统在测试之前已经经过了系统分析、需求分析、概要分析、详细分析等阶段严格的技术审查,但是错误和疏漏的存在还是无法避免的。如果没有再投入运行前的系统测试阶段被发现并纠正,问题迟早会在进行中暴露出来,到那时要纠正错误将会付出更大的代价,甚至会造成不堪设想的后果。因此我在整个开发过程中不断检测,不断发现系统的出错,以便及时更正。第5章 总结经过了半个月的努力与实践,基于JavaWeb技术的在线相册项目的设计与开发基本完成。在这十几天的运行调试中,连接数据库一度出现过现错误,经过请教同学和上网查询,错误点全部清除,现在系统可以按着设计思路和需求功能正常运行。 通
19、过开发这个在线相册管理系统,不但熟练掌握了软件集成开发环境Myeclipse 10.0的使用,还学会了Tomcat 6.0服务器、sql server 2005数据库级相关组件的使用,培养和锻炼了独立从事开发项目系统的能力,而且通过对在线相册系统的管理的操作,加深了对管理信息系统的原理、技术、方法、工具、步骤和有关理论知识的理解和认识,为今后在工作岗位上更好的利用jsp技术开发网站打下良好的基础。课程设计下来,感受最深的就是疲惫,还有就是知识极大程度的不够用。好多问题都得去请教老师和同学才得以解决。所以我认为自己在动手方面和知识的储备方面还不够,同时,就是在遇到问题的时候,有点手忙脚乱。针对在
20、这次课程设计中暴露的问题,以后的学习中我会更加努力,提高了自己的动手能力,争取下一次做得更好。第6章 参考文献【1】邱加永JSP基础与案例开发详解,清华大学出版社,2009.【2】温尚书Java Web编程入门与实战,人民邮电出版社,2010.附录 系统主要代码实现相册首页 photoIndex.jsp杨汛相册首页 相册首页 | 我的相册 我的相册 %List list1=(List)request.getAttribute(list);int a=0;for(Photo photo1:list1)% a href=photoServlet?info=q
21、ueryPhotoList&type=更多 % List list2=dao.photo_queryList(photoType=+photo1.getPhotoType()+); int b=0; for(Photo photo2:list2) % a href=photoServlet?info=queryOnePhoto&id=img src= class=cannelBorder % b+; if(b=3) break; if(list2.size()3) for(int i=0;i 无 其他类别相册 校园风光 宿舍概况 a href=photoServlet?info=queryPhotoList&t
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1