课程设计/生产实习报告
学 校:XX大学                                    系 别:XXXXXX
班 级:XXXXXXXXXXXXXXX                          指导老师:XXX
小组成员:XXX
摘要
BBS论坛系统是采用java语言进行设计实现的,采用Tomcat作为后台服务器,以SQL Server作为数据服务器,使用接口、实现类、实体类、JSP进行逻辑控制,表现层用JSP页面显示,用于在网络上为网民提供一个信息发布、获取的场所.实现了查看、发表、删除帖子功能,论坛帖子版块控制,注册用户可以修改自己的个人信息、增加好友与黑名单,管理员可以对用户、帖子,版块、版块权限和用户组权限进行管理。论文从问题的提出、基本设计思想、数据的流向到具体的设计过程都做出了详细论述。
1系统总体设计
1.1 系统框架/结构
   
1。2 设计开发的技术路线
过程包括:
java和jsp
(1)脚本编写
BBS系统分为前台和后台两个模块。系统的功能模块图如图3-1所示。
前台模块的使用对象包括了所有用户(管理员、用户、游客),提供的功能包括注册帐号、用户登录、用户注销、浏览文章、发表新主题、回复主题、修改个人信息.如图3—2所示。
后台模块的使用对象为管理人员(版主、管理员、超级管理员),提供的功能包括管理用户、管理版块、管理主题、管理用户组、功能权限管理、版块权限管理。后台功能模块如图3-3所示。
(2)数据库与程序设计,根据需要利用相关开发技术使用数据库完成模块的功能设计。
本系统采用的工具有JDK 1.5、Tomcat 6.0、MyEclipse 8.5、SQL Server2005,使用的技术有Java、JSP、JavaScript、JDBC等
(1)Java语言概述
Java编程语言是一种通用、并发、基于类且面向对象的语言。Java编程语言与C和C++相关,但是在组织方式上有差别,Java具有C和C++遗漏的许多优点,同时兼有其他语言包括的一些思想。它旨在成为一种生产语言,而不是一种研究语言,并且正是如此[7]
(2)JSP技术概述
JSP (Java Server Pages)是由Sun 公司倡导,许多公司参与,共同建立人一种动态网页技术标准,JSP技术是在Servlet技术基础上发展起来的.它正在飞速发展中,现在已经成为Java服务器编程的重要组成部分。
(3)JavaScript技术概述
JavaScript是一种基于对象(Object)和事件驱动(Event Driver)并具有安全性能的脚本语言,它所能提供的功能非常强大。
JavaScript是一种简洁的面向对象的描述语言,是专门用来开发Internet客户端和服务器端的应用程序,它可以被轻易的嵌入到HTML文件中,使用JavaScript浏览器可以回应使用者的需求事件而不用通过网络来回传资料,这样,使用者的资料就可以直接被客户端应用程序所处理,它的出现弥补了HTML语言的缺陷,它是Java与HTML折衷的选择[9]
(3)页面(界面)设计与编程。
系统采用JDBC架构,数据库采用SQLServer,其连接数据库的关键代码
1.static{
        try
            Class。forName"com.microsoft.sqlserver。jdbc。SQLServerDriver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
。2。public ResultSet query(String sql,String[] args){
        try
            conn = DriverManager.getConnection”jdbc:sqlserver://localhost:1433;database=bbs”,”sa”,"123456”);
            pstmt = conn。prepareStatement(sql);
            if(null != args)
                for(int i=0;i〈args。length;i++)
                    pstmt。setString(i+1, args[i]);
            return pstmt。executeQuery();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return null
    }
3.public void closed(ResultSet rs){
        if(rs != null){
            try
                rs.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if(pstmt != null){
            try
                pstmt.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        ifconn != null){
            try {
                if(!conn.isClosed())
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
(1)用户注册:新用户在enrol.jsp页面中输入用户名,密码,密码提示问题、提示问题答案,点击提交按钮,数据提交到enrolinfo。jsp中进行处理,在enrolinfo.jsp中,如果用户名已经有人使用则返回注册页面,否则提示用户注册成功,并跳转到登录后的页面index_logined。jsp.enrolinfo。jsp的代码如下:
<%@ page language=”java” import=”java.util。*" pageEncoding="GBK"%>
<%@page import="entity.User"%>
<%@page import="dao.UserDAO”%>
〈%@page import=”dao.impl.UserDAOImpl"%〉
<%
    //post 中文乱码处理
    request.setCharacterEncoding(”GBK");
    User user=new User();
    String UId = Parameter("hui");
    String UPass = Parameter("password”);
    String UNickName = request。getParameter(”Nike");
    String Head = request。getParameter(”SelectAvatar”);
    String Gender = request。getParameter("xing”);
    String uname = Parameter(”zname");
    String UCard = request。getParameter("card”);
    String question = request。getParameter("select”);
    String UKey = Parameter(”da”);
    user。setUId(UId);
    user.setUPass(UPass);
    user。setUNickName(UNickName);
    user.setHead(Head);
    user.setGender(Gender);
    user.setUName(uname);
    user。setUCard(UCard);
    user。setQuestion(question);
    user.setUKey(UKey);
   
    UserDAO dao = new UserDAOImpl();
    boolean bl = dao.addUser(user);
    if(bl)
        {
        response.sendRedirect(”/QNbbs/HTML/success。jsp");
        }else
        {
        response.sendRedirect("/QNbbs/HTML/shibai.jsp”);

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。