JSP实验(6) 用javabean制作一个留言板

JSP实验(6) 用javabean制作一个留言板

一、实验题目及要求

实验目的

本实验的目的是练习通过JavaBean实现留言板功能。

实验要求

要求编写两个JSP页面:inputMess.jsp和show.jsp。编写一个名字为board的Javabean,其中board由MessBoard.class类负责创建。

1.inputMess.jsp的具体要求

input.jsp页面提供一个表单。其中表单允许用户输入留言者的姓名、留言标题和留言内容,该表单将用户输入的信息提交给当前页面,当前页面调用名字为board的bean,并使用表单提交的数据设置board的有关属性的值。要求在inputMess.jsp提供一个超链接,以便用户单击这个超链接访问show.jsp页面。

2.show.jsp的具体要求

show.jsp调用名字为board的bean,并显示该bean的allMessage属性的值。

3.MessBoard.java的具体要求

编写的MessBoard.java应当有刻画留言者的姓名、留言标题和留言内容属性,并且有刻画全部留言信息的属性:allMessage。

实验效果

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

二、实验代码

1.inputMess.jsp

代码如下(示例):

<%--
  Created by IntelliJ IDEA.
  User: ruochen
  Date: 2020/11/16
  Time: 14:46
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<jsp:useBean id="messboard" class="tang.ruochen.shuai.messboard" scope="application"/>
<html>
<head>
    <title>留言板</title>
</head>
<body>
<pre>
    <form action="show.jsp" method="post">
        输入你的名字:
        <INPUT type="text" name="name">
        输入你的留言标题:
        <INPUT type="text" name="title">
        输入你的留言内容:
        <TEXTAREA name="content"></TEXTAREA>
        <INPUT type="submit" value="提交">
    </form>

    <a href="show.jsp">看留言板</a>
</pre>
</body>
</html>

2.show.jsp

代码如下(示例):

<%--
  Created by IntelliJ IDEA.
  User: ruochen
  Date: 2020/11/16
  Time: 14:46
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<jsp:useBean id="show" class="tang.ruochen.shuai.messboard" scope="application"/>
<html>
<head>
    <title>留言板信息</title>
</head>
<body>
<%
    request.setCharacterEncoding("UTF-8");
    String name = request.getParameter("name");
    String title = request.getParameter("title");
    String content = request.getParameter("content");

%>


<jsp:setProperty name="show" property="name" value="<%=name%>"/>
<jsp:setProperty name="show" property="title" value="<%=title%>"/>
<jsp:setProperty name="show" property="content" value="<%=content%>"/>
<jsp:getProperty name="show" property="result"/>
<a href="inputmess_2.jsp">去留言</a>
</body>
</html>

3 messbord.java

代码如下(示例):

package tang.ruochen.shuai;

import javax.xml.crypto.Data;
import java.sql.*;
import java.util.*;
import  java.text.SimpleDateFormat;
import java.util.Date;


import static java.sql.ResultSet.CONCUR_READ_ONLY;
import static java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE;

public class messboard {
    String name;
    String title;
    String content;
    String datatime;
    StringBuffer result;


    public void setName(String name) {
        this.name = name;

    }

    public void setTitle(String title) {
        this.title = title;
    }

    public void setContent(String content) {
        this.content = content;
    }




    public messboard()throws Exception {
        result=new StringBuffer();

        Class.forName("com.mysql.cj.jdbc.Driver");
    }


    public String getResult() {
        try {
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            Date now = new Date();
            this.datatime = sdf.format(now);
            //this.datatime = (new Timestamp(new Date().getTime())).toString();
            result.setLength(0);
            String condition="insert into textnote values("+"'"+name+"','"+title+"','"+content+"','"+datatime+"');";
            //String condition="insert into car values("+"'"+name+"','"+title+"','"+content+"');";
            Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1/myjdbc?" + "user=root&password=&characterEncoding=UTF-8&serverTimezone=GMT");
            Statement sql = con.createStatement(TYPE_SCROLL_INSENSITIVE,CONCUR_READ_ONLY);
            ResultSet rs;
            if(!(name==null||title==null||content==null))
                sql.executeUpdate(condition);
            rs=sql.executeQuery("select * from textnote;");

            ResultSetMetaData rsmd = rs.getMetaData();

            int n = rsmd.getColumnCount();

//            rs.last();
//            result.append("目前已登记车辆共"+rs.getRow()+"辆:");
//            rs.beforeFirst();
            result.append("<table border = 1>");

            result.append("<tr>");
            result.append("<th>"+"留言者姓名"+"</th>");
            result.append("<th>"+"留言标题"+"</th>");
            result.append("<th>"+"留言内容"+"</th>");
            result.append("<th>"+"留言时间"+"</th>");
            result.append("</tr>");

            while(rs.next()){
                result.append("<tr>");
                for(int i = 1;i<=n;i++)
                {
                    result.append("<td>"+rs.getString(i)+"</td>");
                }
                result.append("</tr>");
            }

            result.append("</table>");
            con.close();
        }
        catch (SQLException e){
            result.append(e.getMessage());
        }
        return result.toString();

    }
}

效果演示

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

  • 9
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 留言板一个常见的Web应用程序,可以使用JSPJavaBean和Servlet来实现。以下是一个简单的留言板的实现步骤: 1. 创建一个数据库表来存储留言信息,包括留言ID、留言者姓名、留言内容和留言时间等字段。 2. 创建一个JavaBean类来表示留言信息,包括留言ID、留言者姓名、留言内容和留言时间等属性,并提供相应的getter和setter方法。 3. 创建一个Servlet类来处理用户提交的留言信息,包括将留言信息保存到数据库中和显示已有的留言信息。 4. 创建一个JSP页面来显示留言板界面,包括一个表单用于提交留言信息和一个表格用于显示已有的留言信息。 5. 在JSP页面中使用JavaBean来表示留言信息,使用JSTL标签库来遍历留言信息列表并将其显示在表格中。 6. 在JSP页面中使用Servlet来处理用户提交的留言信息,包括将留言信息保存到数据库中并重新加载页面以显示最新的留言信息。 以上是使用JSPJavaBean和Servlet完成一个简单的留言板的基本步骤。当然,具体实现还需要根据具体需求进行调整和完善。 ### 回答2: 留言板的实现需要涉及到前端展示和后台数据存储两个方面。为了实现这一功能,我们可以使用 JSPJavaBean 和 Servlet 三个技术来配合完成。 首先,设计前端界面,包括输入留言、展示留言列表等。然后,将前端界面和后端逻辑代码分离。对于前端,我们可以使用 JSP 技术来实现展示留言板界面,同时编写表单代码,用户可以在表单中输入留言信息。对于后端逻辑,我们使用 Servlet 来处理表单提交,将留言信息保存在数据库中,然后返回前端界面。 JavaBean 主要用于管理数据,我们可以定义一个 Message 对象作为留言数据,其中包含留言 ID、留言内容和留言时间。Servlet 用于处理用户的请求,当用户点击“提交”按钮时,Servlet 触发表单输入信息的提交事件,获取用户的提交信息,然后进行相应的逻辑处理,比如将提交的信息封装成 Message 对象,保存在数据库中。同时,Servlet 也负责读取数据库中的留言信息,将其返回给 JSP 页面进行展示。 在具体实现时,我们可以用 JDBC 技术连接数据库。确保我们已经配置好相应的数据源和驱动程序。为了避免 SQL 注入等安全问题,我们可以使用预编译语句来进行数据库操作。 总之,使用 JSPJavaBean 和 Servlet 可以快速、高效地实现一个简单的留言板。前端界面使用 JSP 技术实现,后端使用 Servlet 和 JavaBean 处理和管理数据。其中 Servlet 负责处理用户请求,JavaBean 负责管理留言数据,JSP 负责展示用户留言,实现了前后端分离的功能。整个项目需要考虑安全、代码复用以及代码结构的设计等问题,这也是一个不错的练手小项目。 ### 回答3: 留言板一个常见的Web应用程序,它允许用户提交评论并将其显示出来。使用JSPJavaBean和Servlet可以轻松地创建一个简单的留言板。 首先,我们需要创建一个数据库表来存储留言。这个表应该包括id、用户名、留言标题、留言内容以及留言时间等字段。然后,我们需要编写一个JavaBean来表示留言,该Bean应该具有相应的属性和方法。 接下来,我们需要编写一个Servlet来处理用户提交的留言。这个Servlet应该从表单中获取数据并将其插入到数据库表中。一旦留言被插入,我们可以重定向到一个JSP页面来显示所有留言。 在JSP页面中,我们可以使用JavaBean来获取所有留言并将它们显示在页面上。我们可以使用JSTL的<c:forEach>标签来遍历留言列表,并将每个留言的信息显示在页面上。 最后,我们还可以在JSP页面上添加一个表单,以便用户可以继续提交留言。当用户提交留言时,Servlet将再次获取和处理表单数据,然后将留言插入到数据库表中。 总而言之,使用JSPJavaBean和Servlet可以非常方便地创建一个简单的留言板。这些技术的组合使得我们可以轻松地处理表单提交和数据库交互,同时也允许我们在页面上显示动态内容。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值