首页 > 其他分享 >开学小测总结(上)

开学小测总结(上)

时间:2023-02-13 19:24:05浏览次数:44  
标签:总结 栏目 开学 String 新闻 request import 小测 public

河北省环保监测中心网络新闻发布系统(卷面成绩40分,占课程过程考核20分)

 

1、项目需求:

河北省环保监测中心网络新闻为搭建公众信息交流平台,决定建立新闻发布平台。新闻发布平台按内容包括中心新闻、企业环保信息发布等若干新闻栏目,新闻撰稿人可登陆平台发布新闻,每个新闻栏目至少有一位新闻栏目管理员,负责审查新闻撰稿人所发的新闻稿件,在审查通过后,对应新闻才可以显示在对应新闻栏目上,一般用户登录后才可以看到,另外还可以删除过时或无用的信息。另外,系统管理员可以对用户进行管理和对新闻栏目进行调整。新闻发布流程如下:

2.系统要求与功能设计

2.1 页面要求

(1)通过浏览器查看,能适应常用分辨率;(1分)

(2)布局合理、结构清晰、页面完整;(1分)

(3)网站页面整体风格统一;(1分)

(4)首页为用户登录页面,不同角色用户登录后,进入相应的功能页,要求密码在数据库中加密;(4分)

(5)新闻撰稿人功能页:在线撰写与修改稿件、查看已写稿件及修改意见;

(6)普通用户功能页:浏览相应栏目新闻、用户评论新闻(可匿名)、浏览其他用户评论;

(7)新闻栏目管理员功能页:浏览与管理本栏目待发与已发新闻;

(8)系统管理功能页:用户注册、用户权限管理、新闻栏目管理;

(9)对每页中的查询结果推荐采用分页显示。

2.2 功能要求

(1)在线撰写新闻稿件:新闻撰稿人在线撰写新闻,选择栏目,正式提交;(2分)

(2)查看修改意见:新闻撰稿人查看新闻栏目管理员提出的修改意见;(1分)

(3)修改新闻稿件:新闻撰稿人根据修改意见可以对新闻进行修改;(1分)

(4)查询已经撰写的新闻:新闻撰稿人可以查看自己已经撰写的新闻;(1分)

(5)浏览新闻:普通用户可以浏览栏目的新闻(按照时间倒排);(1分)

(6)发表评论回复:普通用户可以对新闻进行发表评论,可选择匿名回复;(1分)

(7)按照一定条件查询新闻:栏目管理员可以按照时间段,新闻关键字等条件进行查询;(2分)

(8)管理待发与已发新闻:新闻栏目管理员可以批准新闻发布、删除不合适新闻、给出撰稿人修改意见、对已发的过时新闻进行删除;(2分)

(9)管理新闻评论回复:新闻栏目管理员可以查看、删除、禁止新闻的回复;(2分)

(10)管理新闻栏目:新开新闻栏目、删除新闻栏目、合并新闻栏目、更改新闻栏目的基本信息;(2分)

(11)用户管理:管理员可以查询用户、批准新用户、暂停用户、为用户赋予角色,普通用户可以修改用户资料。(2分)

2.1,2.2 评分标准:以上各项分值为页面要求和功能要求,各项分值合计(24分);除此以外设计出合理的数据库和数据表(3分),数据库连接正常(2分),设计出用户权限管理(6分)。

2.3 网站发布

(1)网站制作完成后需指定一台机器作为服务器发布。

(2)在其他主机上可正常浏览。

评分标准:能够在Tomcat服务器中正确部署(3分),其它主机可正常浏览(2分);

首先为基础类:

package passage;

public class XinWen {
private String lanmu;
private String zhengwen;
private String timu;
public String getLanmu() {
    return lanmu;
}
public void setLanmu(String lanmu) {
    this.lanmu = lanmu;
}
public String getZhengwen() {
    return zhengwen;
}
public void setZhengwen(String zhengwen) {
    this.zhengwen = zhengwen;
}
public String getTimu() {
    return timu;
}
public void setTimu(String timu) {
    this.timu = timu;
}
public XinWen(String lanmu, String zhengwen, String timu) {
    super();
    this.lanmu = lanmu;
    this.zhengwen = zhengwen;
    this.timu = timu;
}

}

 

链接数据库的代码:

package tool;
import java.sql.*;
public class Tool {
private static Connection connection;
private static String url="jdbc:mysql://localhost:3306/teach?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC";
private static String user="root";
private static String pass="020907";
static {
    try {
        Class.forName("com.mysql.cj.jdbc.Driver");
    }catch(ClassNotFoundException e){
        e.printStackTrace();
    }
}
public static Connection getConnection() {
    try {
        connection=DriverManager.getConnection(url,user,pass);
    }catch(SQLException e) {
        e.printStackTrace();
    }
    return connection;
}
public static void release(Connection connection,Statement statement,ResultSet resultSet) {
    try {
        if(connection!=null) {
            connection.close();
        }
        if(statement!=null) {
            statement.close();
        }
        if(resultSet!=null) {
            resultSet.close();
        }
    }
    catch(SQLException e) {
        e.printStackTrace();
    }
}
}

 

首先是登陆的书写:

index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset="UTF-8">
<title>登录界面</title>
</head>
<body>
<form action="denglu" method="post"> 
<center>
<p>
<select name="shenfen">
              <option value="新闻撰稿人">新闻撰稿人</option>
              <option value="普通用户" >普通用户</option>
              <option value="新闻栏目管理员">新闻栏目管理员</option>
              <option value="系统管理员">系统管理员</option>
            </select>
    </p>
    <p>账户
              <input type="text" name="hao"/>
              </p>
              <p>密码
              <input type="password" name="password" />
              </p>
              <p>
              <input type="submit" value="登录">
        </p>
    </center>
            </form>
</body>
</html>

denglu.java

package denglu;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import tool.Tool;
public class Denglu {
    public String find(String zhang) {
        Connection conn=Tool.getConnection();
        PreparedStatement pre=null;
        ResultSet res=null;
        String password=null;
        String sql="SELECT *FROM yonghu where hao= ? ";
        try {
        pre=conn.prepareStatement(sql);
        pre.setString(1, zhang);
        res=pre.executeQuery();
        while(res.next()) {
            String hao=res.getString("hao");
            String passwords=res.getString("password");
            String s=res.getString("shenfen");
            password=passwords;
        }
        }
    catch(SQLException e) {
            
            e.printStackTrace();
        }finally{
            Tool.release(conn, pre, res);
        }
        return password;
    }
}

Sev.java

package denglu;
import java.io.IOException;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
@WebServlet("/denglu")
public class Sev extends HttpServlet{
    @Override
    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
        String z = request.getParameter("hao");
        String password=request.getParameter("password");
        String shenfen =request.getParameter("shenfen");
        switch(shenfen) {
        case "新闻撰稿人":
            Denglu d=new Denglu();
        String p=d.find(z);
        if(p.equals(password)) {
            request.setAttribute("test", z);
            request.getRequestDispatcher("xinwenset.jsp").forward(request, response);
        }else {
            request.setAttribute("test", "密码错误");
            request.getRequestDispatcher("tishi.jsp").forward(request, response);
        }
        break;
        case "系统管理功能":
            Denglu d1=new Denglu();
            String p1=d1.find(z);
            if(p1.equals(password)) {
                request.setAttribute("test", z);
                request.getRequestDispatcher("xitong.jsp").forward(request, response);
            }else {
                request.setAttribute("test", "密码错误");
                request.getRequestDispatcher("tishi.jsp").forward(request, response);
            }
            break;
        case "普通用户":
            Denglu d2=new Denglu();
            String p2=d2.find(z);
            if(p2.equals(password)) {
                request.setAttribute("test", z);
                request.getRequestDispatcher("yonghu.jsp").forward(request, response);
            }else {
                request.setAttribute("test", "密码错误");
                request.getRequestDispatcher("tishi.jsp").forward(request, response);
            }
            break;
        case "新闻栏目管理员":
            Denglu d3=new Denglu();
            String p3=d3.find(z);
            if(p3.equals(password)) {
                request.setAttribute("test", z);
                request.getRequestDispatcher("xinwengl.jsp").forward(request, response);
            }else {
                request.setAttribute("test", "密码错误");
                request.getRequestDispatcher("tishi.jsp").forward(request, response);
            }
            break;
        }
}
    @Override
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
        doPost(request,response);
}
}

之后就是各种用户的界面设计,随后就是基本的增删改查的功能实现:

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>
<title>Insert title here</title>
</head>
<body>
 <form action="xw" method="post">
<center>
栏目:
<select name="lanmu">
              <option value="政治">政治</option>
              <option value="人文" >人文</option>
              <option value="自然">自然</option>
            </select>
            
             <p>题目
               <input type="text" name="tm"/>
              </p>
 <p>正文
               <input type="text" name="word"/>
              </p>
              
              <input type="hidden" name="method" value="add"/>
              <p>
        <input type="submit" value="提交">
        </p>
</center>
</form>
</body>
</html>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<form action="xw" method="post">
    栏目: <input type="text" name="lanmu" value="${test.lanmu}" readonly/><br/>
    标题:<input type="text" name="timu" value="${test.timu}"readonly/><br/>
    正文:<input type="text" name="zhengwen" value="${test.zhengwen}"/><br/>
    <input type="hidden" name="method" value="up"/>
    <input type="submit" value="修改"/>
</form>
</body>
</html>

以上是界面的大部分代码。

标签:总结,栏目,开学,String,新闻,request,import,小测,public
From: https://www.cnblogs.com/syhxx/p/17117463.html

相关文章

  • 开学测试三小时的总结
    三小时没干多少事情,主要是上学期就没怎么学,寒假出了假期考试没碰java,所以生疏了很多很多。简单写了写增删改查,也写的不完整,不过把王老师要求的连接数据库是连接上了。下面......
  • 开学初软件工程第一次课进行课前测试,要求实现一个完整MIs系统的开发流程
    本次测试经历了三个小时,这次测试使沉醉在假期的我惊醒,我意识到我仍是一名学生,我还有许多的东西要去学习。我先去复习上学期的增删改查,连接数据库之类的知识,之后开始写代码,......
  • 大二下学期第一次考试总结
    这次考试,老师要求的是进行一个简单的MIS系统的编程,在这三个小时的编程中,我首先遍观整个题目,之后连接数据库,编写servlet,用mysql数据库保存数据,实现数据之间的增删改查,一系列......
  • 大二下开学考试
    河北省环保监测中心网络新闻发布系统1、项目需求:河北省环保监测中心网络新闻为搭建公众信息交流平台,决定建立新闻发布平台。新闻发布平台按内容包括中心新闻、企业环保信......
  • 开学考试
    大二下学期开学第一次考试,考试成绩非常不理想。因为疫情和自己的心态原因,自己在放假期间并没有学习JAVA和其他内容,在假期里因为疫情放开的缘故,只顾着玩耍,并没有进行学习......
  • 大二下学期开学测试课后总结
    今天下午进行了开学测试,发现了许多的不足。这次的测验是河北省环保监测中心网络新闻发布系统。这个系统主要进行的是多个角色的增删改查,任务量大,需要写的东西非常多,难度不......
  • 开学测试
    二月十三日下午进行了开学第一次测试,测试的题目是河北省环保监测中心网络新闻发布系统。测试的内容量比较大,但总的来说,最基本的还是数据库的连接、增删改查外加不同用户之......
  • 2022.2.13 大二下开学考试总结
    今天是开学第一天周一的下午按照建民老师一贯的作风今天是惯例的开学考试 题目如下     2021级《软件工程》课前测试试卷(180分钟) 河北省环保监测中心网络......
  • 2.13开学考试
    河北省环保监测中心网络新闻发布系统(卷面成绩40分,占课程过程考核20分) 1、项目需求:河北省环保监测中心网络新闻为搭建公众信息交流平台,决定建立新闻发布平台。新闻发布......
  • 大二开学考试自我总结
    由于寒假过于怠惰,导致本次开学考试成绩并不理想刚拿到将将及格的24分,与留言评论相关的功能还没有来得及做考试就结束了。一是自己技术不够精进,其次是长时间没有对javaw......