web课程项目报告.doc_第1页
web课程项目报告.doc_第2页
web课程项目报告.doc_第3页
web课程项目报告.doc_第4页
web课程项目报告.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

课程项目报告书课程名称: Web系统和技术 _项目题目: 博客系统课程设计 学 院: 现代科技学院 专业班级: 计算机13-4 姓 名: 高 爱 学 号: 2013101714 指导教师: 马 垚 2016年6月21日一、项目介绍(包括选题思路、开发环境、技术方案等)博客(英语:Blog,为Web Log的混成词),台湾译作网志、部落格,港澳译作网志,马新译作部落格、博客、网志,是一种由个人管理、不定期张贴新的文章、图片或影片的网页或联机日记,用来抒发情感或分享信息。博客上的文章通常根据张贴时间(Chronological Order),以倒序方式由新到旧排列。多博客作者专注评论特定的课题或新闻,其他则作为个人日记。一个典型的博客结合了文字、图像、其他博客或网站的超链接、及其它与主题相关的媒体。此项目通过运用java web的基础知识和其中的MVC+DAO模式在eclipse和tomcat环境以及结合oracale实现了一个比较全面的博客注册登录界面。二、功能设计(包括项目包含主要模块及其功能介绍等)任何一个网页设计中一套完善健全的注册登录功能至关重要。本项目整体设计运用了MVC和DAO两种模式进行,首先通过运用HTML标签编写设计登录和注册界面,然后通过运用DAO ,javaBean 和servlet实现与数据库的链接以及一系列的对数据库的操作,从而实现对注册登录功能的验证,其中还用了filter来解决乱码问题,最后参考资料运用css技术实现对主页的样式设计。三、数据库设计(包括所有表的表结构及ER图等)数据库中注册用户user_table表的设计如下:注册成功后存到数据库中的部分数据四、详细设计(包括主要界面截图和业务逻辑实现代码等)1.业务逻辑实现代码:(1)dao接口类package com.tyut.dao;import com.tyut.bean.RegisterBean;public interface DBDao public void save(RegisterBean register);public void delete(RegisterBean register);public void update(RegisterBean register);public RegisterBean searchById(int id);public RegisterBean searchByNP(RegisterBean register);(2)dao实现类package com.tyut.dao.impl;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import com.tyut.bean.RegisterBean;import com.tyut.dao.DBDao;import com.tyut.tool.DBConnection;public class DBDaoImpl implements DBDaoOverridepublic void save(RegisterBean register) Connection con = null;String sql = INSERT INTO USER_TABLE(USERNAME,USERPWD,SEX,USEREMAIL,USERINFO)VALUES(?,?,?,?,?);try con = DBConnection.getConnection();PreparedStatement ps = con.prepareStatement(sql);ps.setString(1, register.getUsername();ps.setString(2, register.getUserpwd();ps.setString(3, register.getSex();ps.setString(4, register.getUseremail();ps.setString(5, register.getUserinfo();ps.executeUpdate();ps.close();con.close(); catch (SQLException e) e.printStackTrace();Overridepublic void delete(RegisterBean register) String sql = DELETE FROM USER_TABLE WHERE id = ?;Connection con = null;try con = DBConnection.getConnection();PreparedStatement ps = con.prepareStatement(sql);ps.setInt(1, register.getId();ps.executeUpdate();ps.close();con.close(); catch (SQLException e) e.printStackTrace();Overridepublic void update(RegisterBean register) String sql = UPDATE USER_TABLE SET USERNAME = ?,USERPWD = ?,SEX = ?,USEREMAIL = ?,USERINFO = ? WHERE ID = ?;Connection con = null;try con = DBConnection.getConnection();PreparedStatement ps = con.prepareStatement(sql);ps.setString(1, register.getUsername();ps.setString(2, register.getUserpwd();ps.setString(3, register.getSex();ps.setString(4, register.getUseremail();ps.setString(5, register.getUserinfo();ps.setInt(6, register.getId();ps.executeUpdate();ps.close();con.close(); catch (SQLException e) e.printStackTrace();Overridepublic RegisterBean searchById(int id) String sql = SELECT * FROM USER_TABLE WHERE ID = ?;Connection con = null;RegisterBean register = new RegisterBean();try con = DBConnection.getConnection();PreparedStatement ps = con.prepareStatement(sql);ps.setInt(1, register.getId();ResultSet rs = ps.executeQuery();if(rs!=null)rs.first();/register.setId(rs.getInt(ID);register.setUsername(rs.getString(USERNAME);register.setUserpwd(rs.getString(USERPWD);register.setSex(rs.getString(SEX);register.setUserinfo(rs.getString(USERINFO);register.setUseremail(rs.getString(USEREMAIL);rs.close();con.close(); catch (SQLException e) e.printStackTrace();return register;public RegisterBean searchByNP(RegisterBean register) String sql = SELECT * FROM USER_TABLE WHERE USERNAME=? AND USERPWD=?;Connection con = null;RegisterBean register2 = new RegisterBean();try con = DBConnection.getConnection();PreparedStatement ps = con.prepareStatement(sql);ps.setString(1, register.getUsername();ps.setString(2, register.getUserpwd();ResultSet rs = ps.executeQuery();while(rs.next()register2.setUsername(rs.getString(USERNAME);register2.setUserpwd(rs.getString(USERPWD);register2.setSex(rs.getString(SEX);register2.setUserinfo(rs.getString(USERINFO);register2.setUseremail(rs.getString(USEREMAIL);rs.close();ps.close();con.close(); catch (SQLException e) e.printStackTrace();return register2;(3)dao工厂package com.tyut.factory;import com.tyut.dao.DBDao;import com.tyut.dao.impl.DBDaoImpl;public class DAOFactory public static DBDao getDBDAOInstance()return new DBDaoImpl();4.javaBeanpackage com.tyut.bean;public class RegisterBean private int id;private String username;private String userpwd;private String sex;private String useremail;private String userinfo;public String getUsername() return username;public String getUseremail() return useremail;public void setUseremail(String useremail) this.useremail = useremail;public String getUserinfo() return userinfo;public void setUserinfo(String userinfo) this.userinfo = userinfo;public void setUsername(String username) this.username = username;public String getUserpwd() return userpwd;public void setUserpwd(String userpwd) this.userpwd = userpwd;public String getSex() return sex;public void setSex(String sex) this.sex = sex;public int getId() return id;public void setId(int id) this.id = id;2.用户登录界面截图和实现代码:登录窗口.loginbackground:url(images/a.jpg) 0px 0px;height:760px;.dwidth:500px;margin:0px auto;padding-top:150px; form name=form method=post action=/LonginYZServlet11 用户登录 用户: 密码:   3.登录系统验证的实现代码:package com.tyut.servlet;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.RequestDispatcher;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import org.apache.tomcat.util.http.Cookies;import com.tyut.bean.RegisterBean;import com.tyut.dao.DBDao;import com.tyut.factory.DAOFactory;/* * Servlet implementation class LonginServlet */WebServlet(/LonginServlet)public class LonginYZServlet extends HttpServlet private static final long serialVersionUID = 1L; public LonginYZServlet() super(); public void init(ServletConfig config) throws ServletException protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException System.out.println(services);doGet(request, response);protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException String userName = request.getParameter(username);String userPwd = request.getParameter(userpwd);RegisterBean register = new RegisterBean();register.setUsername(userName);register.setUserpwd(userPwd);System.out.println(userName+userPwd);System.out.println(register.getUsername();/在数据库中查询register返回结果放在user中DBDao b = DAOFactory.getDBDAOInstance();RegisterBean user = null;user = b.searchByNP(register);System.out.println(user.getUsername()+user.getUserpwd();PrintWriter out = response.getWriter();/判断user中是否有值,有值验证通过,否则跳出用户名或密码错误if(user.getUsername()!=null&user.getUserpwd()!=null) request.getRequestDispatcher(/index.jsp).include(request, response);return;response.sendRedirect(request.getContextPath()+/fail.jsp);protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException / TODO Auto-generated method stubdoGet(request, response);4.登录系统失败出现的界面与实现代码:验证页面.failbackground:url(images/a.jpg) 0px 0px;height:760px; 登录失败a href=/login.jsp返回登录页面5.新用户注册界面截图与实现代码:注册窗口.registerbackground:url(images/a.jpg) 0px 0px;height:760px; form method=post action=/RegisterServlet11 填写账户信息 用户名: 密 码: 确认密码: 性 别: 男 女 邮件地址: 基本情况: 我已仔细阅读并接受用户使用协议   6.用户注册界面的验证代码:package com.tyut.servlet;import java.io.IOException;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.SQLException;import java.sql.Statement;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.tyut.bean.RegisterBean;import com.tyut.dao.DBDao;import com.tyut.dao.impl.DBDaoImpl;import com.tyut.factory.DAOFactory;import com.tyut.tool.DBConnection;/* * Servlet implementation class RegisterServlet */WebServlet(name = RegisterServlet1, urlPatterns = /RegisterServlet1 )public class RegisterServlet extends HttpServlet private static final long serialVersionUID = 1L; public RegisterServlet() super(); public void init(ServletConfig config) throws ServletException protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException String username = request.getParameter(username);String userpwd = request.getParameter(userpwd);String userpwd1 = request.getParameter(userpwd1);String usersex = request.getParameter(usersex);String useremail=request.getParameter(useremail);String userbasicinfo=request.getParameter(userinfo);System.out.println(username);RegisterBean registerBean = new RegisterBean();registerBean.setUsername(username);registerBean.setUserpwd(userpwd);registerBean.setSex(usersex);registerBean.setUseremail(useremail);registerBean.setUserinfo(userbasicinfo);DBDao a = DAOFactory.getDBDAOInstance();a.save(registerBean);response.sendRedirect(request.getContextPath()+/tiaozhuan.jsp);protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException doGet(request, response);7.注册成功后的界面及实现代码:Insert title here.tiaozhuanbackground:url(images/a.jpg) 0px 0px;height:760px;var t = 5;function countDown(secs,surl) var jumpTo = document.getElementById(jumpTo); jumpTo.innerHTML=secs; if(-secs0) setTimeout(countDown(+secs+,+surl+),1000); else location.href=surl; 5秒后自动跳转到登录页面 countDown(5,/aibaobao/login.jsp); 8.注册成功后的用户登录之后的界面及代码实现:(1)YSL博客 首页目录相册注销管理关于爱宝宝博客-欢迎123用户珍惜2016年4月13日,大学的另一番景象从那天开始:时光清浅,繁华几度。心悦一份相知,珍惜一场懂得。将最美的遇见,用阳光的格调,布局在生命的每一个间隙。依着温度,我在生命的素笺上,刻下今生无悔!因为懂得,所以珍惜,穿行,飞度的光阴,所有的花开,都有温馨的理由,所有的叶落,都写着浓郁的牵挂。别问,情在哪端,别叹,爱有几分,淡一点,才会长久一点,情致谈不上唯美,幸福却不溢于言表,故不挣扎,不奢念,只写祝福与牵念,此生,此情。此景,淡淡,暖暖,又远远。生活中,值得珍惜的人很多,懂得珍惜的人也不少。有些人,因为不懂得珍惜而渐行渐远,有些事,因为无关轻重而逐渐淡忘;有些人,因为真诚相待而更加珍惜,有些事,因为相互感动而更加美好。生活,需要珍惜拥有的,欣赏经过的,忘记无缘的。不管生活中的动与静,不偏激,不忧虑,动静相宜,才是生活的尺度,心中有田园,眼中有世界。最好的感情是随意,却又彼此在意;是惬意,却又彼此珍惜。各自独立,而心在一起;各自呼吸,而爱不分离。两个人在一起,最重要的感觉就是舒服。即使默默不语;也是一种默契;纵然两两相望,也是一种欣喜。人生也是一个得与失,遇见与错过,珍惜与拥有的过程。茫茫人海相遇,温暖彼此传递。若知己,那轻轻的话语给彼此带来无形的力量和帮助,给心灵慰藉和快乐,这样的缘,美好而永恒。缘,奇妙可遇不可求,任何时候遇见都不晚,每一刻小小的感动都会润泽心灵,洗涤灵魂。Copyright © 2016-2017 BIGC YSL, ALL Rights Reserved高爱版权所有(2)CSS技术bodyfont-size:12px;margin:0px;text-align:center;#containerwidth:1000px;height:700px;margin:0 auto;background-color:#c0c0c0;afont-size:12px;text-decoration:none;color:#000088;display:block;height:40px;a:hovercolor:#0000ff;background:#c0c0c0;input,select,tdfont-size:12px;#topbackground:url(./images/a.jpg);#headerheight:75px;background-image:url(./images/header.jpg); background-repeat: repeat; #bannerdisplay:block;height:200px;background:url(./images/banner.jpg) 0px 5px no-repeat;#pagebodymin-height:400px;margin-top:2px;margin-bottom:8px;pad

温馨提示

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

评论

0/150

提交评论