新闻发布|基于JavaWeb实现新闻发布管理系统+论文+PPT(三)

简介: 新闻发布|基于JavaWeb实现新闻发布管理系统+论文+PPT

新闻发布|基于JavaWeb实现新闻发布管理系统+论文+PPT(二)https://developer.aliyun.com/article/1423391


package com.action;
/**
 * 会员注册、修改资料等
 * @author Administrator
 *
 */
import java.io.IOException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.bean.MemberBean;
import com.bean.SystemBean;
import com.util.Constant;
import com.util.Filter;
import com.util.MD5;
public class MemberAction extends HttpServlet {
  /**
   * Constructor of the object.
   */
  public MemberAction() {
    super();
  }
  /**
   * Destruction of the servlet. <br>
   */
  public void destroy() {
    super.destroy(); // Just puts "destroy" string in log
    // Put your code here
  }
  /**
   * The doGet method of the servlet. <br>
   *
   * This method is called when a form has its tag value method equals to get.
   * 
   * @param request the request send by the client to the server
   * @param response the response send by the server to the client
   * @throws ServletException if an error occurred
   * @throws IOException if an error occurred
   */
  public void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    doPost(request,response);
  }
  /**
   * The doPost method of the servlet. <br>
   *
   * This method is called when a form has its tag value method equals to post.
   * 
   * @param request the request send by the client to the server
   * @param response the response send by the server to the client
   * @throws ServletException if an error occurred
   * @throws IOException if an error occurred
   */
  public void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    response.setContentType(Constant.CONTENTTYPE);
    request.setCharacterEncoding(Constant.CHARACTERENCODING);
    HttpSession session = request.getSession();
    MemberBean memberBean = new MemberBean();
    String method = Filter.escapeHTMLTags(request.getParameter("method").trim());
    /*********************************************
     * 会员注册通用(检查用户名 修改密码 reg2.jsp页面跳转)
     *********************************************/
    if(method.equals("reg2")){//会员注册 reg2.jsp
      String username = Filter.escapeHTMLTags(request.getParameter("username").trim());
      String password = Filter.escapeHTMLTags(request.getParameter("password").trim());
      String reg_type = Filter.escapeHTMLTags(request.getParameter("reg_type").trim());
      request.setAttribute("username", username);
      request.setAttribute("password", password);
      request.setAttribute("reg_type", reg_type);
      if(username.trim().equals("admin")){
        request.setAttribute("username", username);
        request.setAttribute("message", "非法的用户名,请重新选择!");
        request.getRequestDispatcher("reg2.jsp").forward(request, response);
      }
      else{
        int flag = memberBean.checkRegName(username);
        if(flag == Constant.SUCCESS){
          if(reg_type.equals("person")){//如果是个人会员
            request.getRequestDispatcher("personreg.jsp").forward(request, response);
          }
          else if(reg_type.equals("co")){//如果是企业会员
            request.getRequestDispatcher("coreg.jsp").forward(request, response);
          }
          else{
            request.getRequestDispatcher("index.jsp").forward(request, response);
          }
        }
        else if(flag == Constant.SAME_NAME){
          request.setAttribute("username", username);
          request.setAttribute("message", "对不起,该用户名已存在,请重新选择!");
          request.getRequestDispatcher("reg2.jsp").forward(request, response);
        }
        else{
          request.setAttribute("message", "系统维护中,请稍后再试!");
          request.getRequestDispatcher("reg2.jsp").forward(request, response);
        }
      }
    }
    else if(method.equals("checksame")){//检查注册名是否可用
      String username = Filter.escapeHTMLTags(request.getParameter("username").trim());
      if(username.trim().equals("admin")){
        request.setAttribute("username", username);
        request.setAttribute("message", "非法的用户名,请重新选择!");
        request.getRequestDispatcher("reg2.jsp").forward(request, response);
      }
      else{
        int flag = memberBean.checkRegName(username);
        if(flag == Constant.SUCCESS){
          request.setAttribute("username", username);
          request.setAttribute("message", "恭喜您,这个名字可以使用!");
          request.getRequestDispatcher("reg2.jsp").forward(request, response);
        }
        else if(flag == Constant.SAME_NAME){
          request.setAttribute("username", username);
          request.setAttribute("message", "对不起,该用户名已存在,请重新选择!");
          request.getRequestDispatcher("reg2.jsp").forward(request, response);
        }
        else{
          request.setAttribute("message", "系统维护中,请稍后再试!");
          request.getRequestDispatcher("reg2.jsp").forward(request, response);
        }
      }
    }
    else if(method.equals("Editpwd")){//会员修改登陆密码
      String member=(String)session.getAttribute("member");
      String type=(String)session.getAttribute("type");
      if(member==null||type==null){
        response.sendRedirect("error.jsp");
      }
      else{
        String oldpwd = MD5.MD5(request.getParameter("oldpwd").trim());
        String newpwd = MD5.MD5(request.getParameter("newpwd").trim());
        int flag = memberBean.editPassword(member, oldpwd, newpwd);
        switch (flag){
          case Constant.SUCCESS:
            request.setAttribute("message", "密码修改成功!");
            request.getRequestDispatcher("member/info/editpwd.jsp").forward(request, response);
            break;
          case Constant.PASSWORD_ERROR:
            request.setAttribute("message", "原始密码错误,请确认权限!");
            request.getRequestDispatcher("member/info/editpwd.jsp").forward(request, response);
            break;
          case Constant.SYSTEM_ERROR:
            request.setAttribute("message", "系统维护中,请稍后再试!");
            request.getRequestDispatcher("member/info/editpwd.jsp").forward(request, response);
            break;
        }
      }
    }
    /*********************************************
     * 个人会员注册、修改资料 
     *********************************************/
    else if(method.equals("PREG")){//个人会员详细资料
      String username = Filter.escapeHTMLTags(request.getParameter("username").trim());
      String password = Filter.escapeHTMLTags(request.getParameter("password").trim());
      String type = "person";
      String realname = Filter.escapeHTMLTags(request.getParameter("realname").trim());
      String sex = Filter.escapeHTMLTags(request.getParameter("sex").trim());
      String sheng = Filter.escapeHTMLTags(request.getParameter("sheng").trim());
      String city = Filter.escapeHTMLTags(request.getParameter("city").trim());
      String bir = Filter.escapeHTMLTags(request.getParameter("bir").trim());
      String telphone = Filter.escapeHTMLTags(request.getParameter("telphone").trim());
      String email = Filter.escapeHTMLTags(request.getParameter("email").trim());
      String question = Filter.escapeHTMLTags(request.getParameter("question").trim());
      String answer = Filter.escapeHTMLTags(request.getParameter("answer").trim());
      String address = Filter.escapeHTMLTags(request.getParameter("address").trim());
      String lastip = request.getRemoteAddr();
      int off = 1;
      int flag = memberBean.personReg(username, password, type, realname, sex, bir,sheng,city, telphone, email, question, answer, lastip, off,address);
      if(flag == Constant.SUCCESS){
          List siteList = new SystemBean().getSiteInfo();
          String sitename = siteList.get(0).toString();
          request.setAttribute("message", "注册成功!恭喜您成为"+sitename+"的注册会员!");
          request.getRequestDispatcher("login.jsp").forward(request, response);
      }
      else{
        request.setAttribute("message", "系统维护中,请稍后再试!");
        request.getRequestDispatcher("personreg.jsp").forward(request, response);
      }
    }
    else if(method.equals("UPREGINFO")){//个人会员修改资料
      String member=(String)session.getAttribute("member");
      String type=(String)session.getAttribute("type");
      if(member==null||type==null){
        response.sendRedirect("error.jsp");
      }
      else{
        String realname = Filter.escapeHTMLTags(request.getParameter("realname").trim());
        String sex = Filter.escapeHTMLTags(request.getParameter("sex").trim());
        String sheng = Filter.escapeHTMLTags(request.getParameter("sheng").trim());
        String city = Filter.escapeHTMLTags(request.getParameter("city").trim());
        String bir = Filter.escapeHTMLTags(request.getParameter("bir").trim());
        String telphone = Filter.escapeHTMLTags(request.getParameter("telphone").trim());
        String email = Filter.escapeHTMLTags(request.getParameter("email").trim());
        String question = Filter.escapeHTMLTags(request.getParameter("question").trim());
        String answer = Filter.escapeHTMLTags(request.getParameter("answer").trim());
        String address = Filter.escapeHTMLTags(request.getParameter("address").trim());
        int flag = memberBean.uppersonReg(member, realname, sex, bir, sheng, city, telphone, email, question, answer,address);
        if(flag == Constant.SUCCESS){         
          request.setAttribute("message", "操作成功!");
          request.getRequestDispatcher("member/info/info.jsp").forward(request, response);
        }
        else{
          request.setAttribute("message", "系统维护中,请稍后再试!");
          request.getRequestDispatcher("member/info/info.jsp").forward(request, response);
        }
      }
    }
    else if(method.equals("lostpwd")){
      String username=request.getParameter("username");
      String question=request.getParameter("question");
      String answer=request.getParameter("answer");
      String reg_type=request.getParameter("reg_type");
      String info=memberBean.returnPwd(username, question, answer, reg_type);
      if(info.trim().equals("error")){
        request.setAttribute("message", "信息错误!");
        request.getRequestDispatcher("login.jsp").forward(request, response);
      }
      else{
        request.setAttribute("message", "您的新密码为"+info+",请登录后修改!");
        request.getRequestDispatcher("login.jsp").forward(request, response);
      }
    }
    else{
      request.getRequestDispatcher("index.jsp").forward(request, response);
    }
  }
  /**
   * Initialization of the servlet. <br>
   *
   * @throws ServletException if an error occure
   */
  public void init() throws ServletException {
    // Put your code here
  }
}

五,项目总结

该系统的优点在于将系统一分为二,分为新闻发布系统前台和后台,分工明确,前台是给用户提供的能是用户更好的浏览新闻,后台界面是管理员管理,更新新闻,管理评论和用户信息等,其中普通用户登录前台新闻发布系统进行新闻的搜索、浏览和留言等操作,管理员登录后台新闻发布系统,进行新闻的发布、编写、修改删除等操作,对用户进行管理,能看到用户评论,对有些评论过激的用户进行删除,能一定程度上减少新闻发布系统前台的访问压力,前后台的分工也更加清楚明了,更利于各种用户的使用。

该系统使用的是MVC架构模式,能对系统的功能进行分离,对系统分成三个层次其中Model是应用程序中用于处理应用程序数据逻辑的部分是系统的模型也是核心层,View应用程序中处理数据显示的部分是系统的视图层,Controller是应用程序中处理用户交互的部分是系统的控制层,用户通过系统对数据的访问通过控制层对数据的控制之后通过模型处理再返回数据给控制层之后反馈给用户就能获取信息。

   通过编写新闻发布系统我能更好的了解编程语言的强大,通过一些设计模式能是我们编写的系统更能更加强大和兼容性更加完美可拓展性更强,一款强大系统应该具有拓展性好,兼容性强,我们进行系统的设计时候多使用一些现在流行的设计模式可以是系统更加完善。

相关文章
|
1月前
|
设计模式 消息中间件 传感器
Java 设计模式之观察者模式:构建松耦合的事件响应系统
观察者模式是Java中常用的行为型设计模式,用于构建松耦合的事件响应系统。当一个对象状态改变时,所有依赖它的观察者将自动收到通知并更新。该模式通过抽象耦合实现发布-订阅机制,广泛应用于GUI事件处理、消息通知、数据监控等场景,具有良好的可扩展性和维护性。
237 8
|
1月前
|
移动开发 监控 小程序
java家政平台源码,家政上门清洁系统源码,数据多端互通,可直接搭建使用
一款基于Java+SpringBoot+Vue+UniApp开发的家政上门系统,支持小程序、APP、H5、公众号多端互通。涵盖用户端、技工端与管理后台,支持多城市、服务分类、在线预约、微信支付、抢单派单、技能认证、钱包提现等功能,源码开源,可直接部署使用。
181 23
|
1月前
|
安全 前端开发 Java
使用Java编写UDP协议的简易群聊系统
通过这个基础框架,你可以进一步增加更多的功能,例如用户认证、消息格式化、更复杂的客户端界面等,来丰富你的群聊系统。
163 11
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
Java与生成式AI:构建内容生成与创意辅助系统
生成式AI正在重塑内容创作、软件开发和创意设计的方式。本文深入探讨如何在Java生态中构建支持文本、图像、代码等多种生成任务的创意辅助系统。我们将完整展示集成大型生成模型(如GPT、Stable Diffusion)、处理生成任务队列、优化生成结果以及构建企业级生成式AI应用的全流程,为Java开发者提供构建下一代创意辅助系统的完整技术方案。
190 10
|
1月前
|
人工智能 监控 Java
Java与AI智能体:构建自主决策与工具调用的智能系统
随着AI智能体技术的快速发展,构建能够自主理解任务、制定计划并执行复杂操作的智能系统已成为新的技术前沿。本文深入探讨如何在Java生态中构建具备工具调用、记忆管理和自主决策能力的AI智能体系统。我们将完整展示从智能体架构设计、工具生态系统、记忆机制到多智能体协作的全流程,为Java开发者提供构建下一代自主智能系统的完整技术方案。
387 4
|
1月前
|
机器学习/深度学习 分布式计算 Java
Java与图神经网络:构建企业级知识图谱与智能推理系统
图神经网络(GNN)作为处理非欧几里得数据的前沿技术,正成为企业知识管理和智能推理的核心引擎。本文深入探讨如何在Java生态中构建基于GNN的知识图谱系统,涵盖从图数据建模、GNN模型集成、分布式图计算到实时推理的全流程。通过具体的代码实现和架构设计,展示如何将先进的图神经网络技术融入传统Java企业应用,为构建下一代智能决策系统提供完整解决方案。
301 0
|
2月前
|
JavaScript Java 大数据
基于JavaWeb的销售管理系统设计系统
本系统基于Java、MySQL、Spring Boot与Vue.js技术,构建高效、可扩展的销售管理平台,实现客户、订单、数据可视化等全流程自动化管理,提升企业运营效率与决策能力。
|
1月前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
153 1
|
1月前
|
JSON 网络协议 安全
【Java基础】(1)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
169 1
|
2月前
|
数据采集 存储 弹性计算
高并发Java爬虫的瓶颈分析与动态线程优化方案
高并发Java爬虫的瓶颈分析与动态线程优化方案