用JSP+JavaBean+Servlet编写一个简单的用户留言板(不用数据库)
先整一个Message.jsp文件,把表单什么的都弄好
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.util.*" %>
<%@page import="java.text.SimpleDateFormat"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="MessageServlet" method="post">
标题:<input type="text" name="title" ><br><br>
作者:<input type="text" name="author" ><br><br>
内容:<textarea rows="20" cols="20" name="content">
</textarea><br><br>
<input type="submit" value="提交">
</form>
</body>
</html>
运行上述代码会出现下面这个图片的效果(虽然有点丑,但是丝毫不影响哈哈~~~~)
然后封装一个javaBean,建一个文件叫Message.java,把上述的三个属性(标题,作者,内容)封装一下,这个不用讲了,代码:
package com.bean;
public class Message {
private String title;
private String autor;
private String context;
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getAutor() {
return autor;
}
public void setAutor(String autor) {
this.autor = autor;
}
public String getContext() {
return context;
}
public void setContext(String context) {
this.context = context;
}
}
漂亮很,下面就是关键了,要用Servlet了,定义一个MessageServlet.jsp这个页面,在doGet();方法中添加代码如下所示:
//解决中文乱码
response.setContentType("text/html; charset=UTF-8");
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
//获取属性
String title=request.getParameter("title");
String autor=request.getParameter("author");
String context=request.getParameter("content");
//实例化Message的对象
Message message=new Message();
message.setTitle(title);
message.setAutor(autor);
message.setContext(context);
//定义一个集合,用application内置对象保存留言后存入list集合中,如果为空直接实例化,然后重定向到显示页面
ServletContext application=request.getServletContext();
List<Message> mlist=(List<Message>)application.getAttribute("mlist");
if(mlist==null){
mlist=new ArrayList<>();
}
mlist.add(message);
application.setAttribute("mlist", mlist);
response.sendRedirect("MessageShow.jsp");
最后呢建立一个MessageShow.jsp显示结果:
<%
//获得list集合中的信息,输出
List<Message> mlist =(List<Message>)application.getAttribute("mlist");
for(Message m:mlist){%>
标题:<%=m.getTitle()%><br>
作者:<%=m.getAutor()%><br>
内容:<%=m.getContext()%><br>
<%out.print("*****************************************************"); %><br>
<%} %>
最后随便操作操作,实现页面如下:
虽然简单,但是蕴含的思想很丰富啊!