基于Java的在线投稿系统设计与实现(源码齐全可用)

2023-12-19

项目描述

临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。你想解决的问题,今天给大家介绍一篇基于Java的在线投稿系统设计与实现。

功能需求

本基于Java的在线投稿系统通过分析和确定系统的角色和功能划分,按照业务合理区分为不同的菜单功能模块。从用户角度出发,对每个功能的需求实现点进行人性化详细的构思。对每个功能的细节点进行分析设计整合完成整个系统的设计。这两类的主要功能如下:
(1)作者用户:
1、登录注册
2、首页信息
3、稿件信息
4、稿件添加
5、稿件审核查询
6、退出系统
7、个人中心
(2)管理员
1、登录
2、管理员账号管理
3、作者管理
4、审稿方管理
5、稿件信息管理
6、退出系统
(3)审稿方用户
1、登录
2、首页信息
3、稿件信息查询
4、稿件审核
5、个人中心
6、退出系统

部分效果图

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

部分代码

   // 前台登录代码
        if (ac.equals("login")) {
            // 获取前台填写得账号
            String username = request.getParameter("username");
            // 获取前台填写得密码
            String password = request.getParameter("pwd");
            // 判断页面上选择的权限
            String utype = request.getParameter("cx");
            // 获取填写得验证码
            String pagerandom = request.getParameter("pagerandom") == null ? "" : request.getParameter("pagerandom");
            // 获取生成验证码时保存在session 中得验证码
            String random = (String) request.getSession().getAttribute("random");
            // 对比验证码是否正确、不正确则输出验证码错误
            if (!pagerandom.equals(random) && request.getParameter("a") != null) {
                request.setAttribute("error", "验证码错误");
                go("index.jsp", request, response);
            } else {
                String sql1 = "";
                if (utype.equals("作者")) {
                    sql1 = "select * from zuozhe where zhanghao='" + username + "' and mima='" + password + "' ";
                }
                if (utype.equals("审稿方")) {
                    sql1 = "select * from shengaofang where zhanghao='" + username + "' and mima='" + password + "' and issh='是'";
                }

                // 查询数据库中得信息判断账号密码得正确性
                Map map = dao.find(sql1);
                // map 不为空则是登录成功
                if (!map.isEmpty()) {
                    // 获取数据循环
                    Iterator iter = map.keySet().iterator();
                    // 设置session
                    request.getSession().setAttribute("username", username);
                    request.getSession().setAttribute("login", utype);
                    request.getSession().setAttribute("cx", utype);

                    while (iter.hasNext()) {
                        // 这个循环设置用户得信息进session 中
                        String key = (String) iter.next();
                        String val = (String) map.get(key);
                        request.getSession().setAttribute(key, val);
                    }
                    // 跳转到index.jsp
                    gor("index.jsp", request, response);
                } else {
                    // 否则提示账号或密码错误
                    request.setAttribute("error", "账号或密码错误");
                    go("index.jsp", request, response);
                }
            }
        }
        // 后台登录
        if (ac.equals("adminlogin")) {
            // 后台管理员登录
            // 获取前台填写得账号
            String username = request.getParameter("username");
            // 获取前台填写得密码
            String password = request.getParameter("pwd");
            // 判断页面上选择的权限
            String utype = request.getParameter("cx");
            // 获取填写得验证码
            String pagerandom = request.getParameter("pagerandom") == null ? "" : request.getParameter("pagerandom");
            // 获取生成验证码时保存在session 中得验证码
            String random = (String) request.getSession().getAttribute("random");
            // 对比验证码是否正确、不正确则输出验证码错误
            if (!pagerandom.equals(random) && request.getParameter("a") != null) {
                request.setAttribute("error", "验证码错误");
                go("login.jsp", request, response);
            } else {
                String sql1 = "";

                if (utype.equals("管理员")) {
                    sql1 = "select * from admins where username='" + username + "' and pwd='" + password + "' ";
                }
                if (utype.equals("作者")) {
                    sql1 = "select * from zuozhe where zhanghao='" + username + "' and mima='" + password + "' ";
                }
                if (utype.equals("审稿方")) {
                    sql1 = "select * from shengaofang where zhanghao='" + username + "' and mima='" + password + "' and issh='是'";
                }

                // 查询数据库中得信息判断账号密码得正确性
                Map map = dao.find(sql1);
                // map 不为空则是登录成功
                if (!map.isEmpty()) {
                    // 获取数据循环
                    Iterator iter = map.keySet().iterator();
                    // 设置session
                    request.getSession().setAttribute("username", username);
                    request.getSession().setAttribute("cx", utype);
                    request.getSession().setAttribute("login", utype);
                    while (iter.hasNext()) {
                        // 这个循环设置用户得信息进session 中
                        String key = (String) iter.next();
                        String val = (String) map.get(key);
                        request.getSession().setAttribute(key, val);
                    }
                    // 跳转到main.jsp
                    gor("main.jsp", request, response);
                } else {
                    // 否则提示账号或密码错误
                    request.setAttribute("error", "账号或密码错误");
                    go("login.jsp", request, response);
                }
            }
        }

安装部署需求

Eclipse运行启动

系统部署

系统开发后,在生产环境配置项目运行环境,具体步骤如下:
安装linux或者windows10操作系统;
安装JDK1.8并配置环境变量;
安装MySQL5.7版本以上版本数据库,创建数据库并执行脚本创建表;
在Eclipse中一键运行启动;

本项目用到的技术和框架

1.开发语言:Java
2.开发模式:B/S
3.数据库:MySQL5.7
4.框架:Servlet+jsp

本项目中的关键点

此系统的开发采用java语言开发,基于B/S结构,这些开发环境使系统更加完善。使用到的工具和技术都是开源免费的。

环境工具

开发工具 Eclipse
语言 JDK1.8、Java语言
硬件:笔记本电脑;
软件:Tomcat8.0 Web服务器、Navicat数据库客户端、MySQL;
操作系统:Windows 10;
其它软件:截图工具、常用浏览器;
以上是本系统的部分功能展示,如果你的选题正好相符,那么可以做毕业设计或课程设计使用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于Java的在线投稿系统设计与实现(源码齐全可用) 的相关文章

随机推荐

  • 漏洞复现-某友CRM系统某接口存在任意文件读取(附漏洞检测脚本)

    免责声明 文章中涉及的漏洞均已修复 敏感信息 均已做打码处理 文章仅做 经验分享 用途 切勿当真 未授权的攻击属于非法行为 文章中 敏感信息 均已做多层打马处理 传播 利用本文章所提供的信息而造成的任何直接或者间接的后果及损失 均由使用者本
  • 为啥都说信息安全缺人,但招聘时招安全的却不多?

    为什么会形成这样一个扭曲的状况 因为我们现在说 信息安全缺人 一般是指 缺口 很大 而不是指 需求 很大 比如某小型 云服务 供应商 一共也就大概几百台物理机器 每隔四五个月才喊人来手动升级一下系统 打打补丁 要是补丁打得不及时导致用户被黑
  • Python 如何在测试中使用 Mock

    Mock概念 mock 的意思是模拟 也就是模拟接口返回的信息 用已有的信息替换它需要返回的信息 从实现对所依赖的模块的测试 一般有两种场景 前端对后端接口的 mock 后端服务之间的测试中涉及的mock 常常发生在单元测试的时候 前端mo
  • 漏侧是能力问题?

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读1 9k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 聊聊Compose框架在UI测试自动化中的优点及示例

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读1 9k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • Python的元编程之动态类创建和修改

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读1 9k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 企业电子招投标采购系统源码之鸿鹄电子招投标系统+电子招投标的组成

    招投标管理系统是一款适用于招标代理 政府采购 企业采购和工程交易等领域的企业级应用平台 该平台以项目为主线 从项目立项到项目归档 实现了全流程的高效沟通和协作 通过该平台 用户可以实时共享项目数据信息 实现规范化管理和有效监控 协同工作网络
  • 【实战详解】如何快速搭建接口自动化测试框架?Python + Requests

    摘要 本文主要介绍如何使用Python语言和Requests库进行接口自动化测试 并提供详细的代码示例和操作步骤 希望能对读者有所启发和帮助 前言 随着移动互联网的快速发展 越来越多的应用程序采用Web API 也称为RESTful API
  • 车载测试ADAS-常用场景仿真软件

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读1 9k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • Web自动化测试流程:从入门到精通,帮你成为测试专家

    摘要 Web应用程序在今天的软件开发中占据着越来越重要的地位 保证Web应用程序的质量和稳定性是非常必要的 而自动化测试是一种有效的方法 本文将介绍Web自动化测试流程 并提供代码示例 步骤一 选取测试工具 选择适合自己团队的自动化测试工具
  • 计算智能 | 蚁群算法——旅行商问题(TSP)python

    目录 一 求解TSP city31 问题的python代码 二 python运行结果 一 求解TSP city31 问题的python代码 import numpy as np import random import matplotlib
  • ArrayList 扩容机制

    2023 12 18 ArrayList的构造函数 ArrayList 默认创建长度为0的数组 ArrayList int initialCapacity 创建指定容量的数组 ArrayList Collection
  • 企业电子招标采购系统源码Spring Cloud + Spring Boot + 前后端分离 + 二次开发

    项目说明 随着公司的快速发展 企业人员和经营规模不断壮大 公司对内部招采管理的提升提出了更高的要求 在企业里建立一个公平 公开 公正的采购环境 最大限度控制采购成本至关重要 符合国家电子招投标法律法规及相关规范 以及审计监督要求 通过电子化
  • 求你了!别再问我怎么学 Python 了

    很多小伙伴问如何学习 Python 哪里可以找到实战的 Python 项目 有没有爬虫案例等等 今天给大家分享一份我整理的 Python 项目大全学习资料 文末有获取方式 话不多说 直接上干货 首先 全部资料目录压缩 由于内容较多 这里也仅
  • 去除微信小程序里button的边框

    去除微信小程序里面的button边框 方法一 通过button after button after border none 方法二 给button按钮加上plain属性 属性值为true
  • 【光伏预测】基于遗传优化注意力机制的长短时记忆神经网络GA-attention-LSTM实现数据回归预测附matlab代码

    作者简介 热爱科研的Matlab仿真开发者 修心和技术同步精进 代码获取 论文复现及科研仿真合作可私信 个人主页 Matlab科研工作室 个人信条 格物致知 更多Matlab完整代码及仿真定制内容点击 智能优化算法 神经网络预测 雷达通信
  • 一文弄懂事件Event与Kafka的区别

    事件 Event 和 Apache Kafka 是两个概念层面上有所不同的东西 它们在应用程序中的作用和使用场景也有很大的差异 1 概念和定义 事件 Event 事件是 系统内发生 的特定事情或状态变化的表示 在编程和软件设计中 事件通常被
  • GLAB | CCNP+CCNP(厂商融合课)-12月23日开课啦

    敲重点 12月23日 CCNP HCIP 周六开课啦 CCNP Cisco Certified Network Professional 思科认证网络专业人员 CCNP专业人员表示通过认证的人员具有丰富的网络知识 获得CCNP认证的专业人员
  • 美创“四大能力”为工业企业数据安全构筑韧性防线

    12月14日 数据与网络安全创新 赋能工业企业数字化转型 主题沙龙在杭州举行 本次活动由浙江省工业软件产业技术联盟 浙江省网络空间安全创新研究中心 浙江省图灵互联网研究院主办 浙江省网络空间安全协会数据安全治理专委会 杭州市计算机学会 长三
  • 基于Java的在线投稿系统设计与实现(源码齐全可用)

    项目描述 临近学期结束 还是毕业设计 你还在做java程序网络编程 期末作业 老师的作业要求觉得大了吗 不知道毕业设计该怎么办 网页功能的数量是否太多 没有合适的类型或系统 等等 你想解决的问题 今天给大家介绍一篇基于Java的在线投稿系统