基于jsp的bbs论坛-(7)jsp网页的实现

来源:互联网 发布:天津建经软件 编辑:程序博客网 时间:2024/05/08 09:57

JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它[1] 是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(.htm,.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行

将BBS论坛的前台页面分为两类:
1. 用户页面:实现了用户发帖、回帖、查看帖子、修改密码等常见论坛用户功能
2. 管理页面:帖子管理、回帖管理、用户管理、增加管理员等常见论坛管理功能

以下为常用功能代码实现:

一、表单提交

form表单中的action值设为前面定义的servlet即可将表单提交到相应的servlet
例如用户进行登录时,提交表单数据提交给给servlet,通过如下代码:

<form name="form1" method="post" action="Account_loginServlet">                <input type="text" class="text"  name="name" id="username">                <input type="password" name="pass" id="pwd">                <div class="submit">                <input type="submit"  value="Sign in “style="width:90%;">                </div></form>

当点击了Sign in登录按钮时,这个表单提交了名为namepass两个文本内容到Account_loginServlet,这个servlet通过

String name= request.getParameter("name");String pass= request.getParameter("pass");

获得这两个文本内容并进行相应后台处理(见前servlet实现 ),若输入正确则使用
request.getRequestDispatcher("Account_main.jsp").forward(request, response);
跳转至Account_main.jsp页面,若错误输入则通过
request.getRequestDispatcher("Account_login_fail.jsp").forward(request, response);
跳转至Account_login_fail.jsp页面,以及来完成一次登录判断操作

二、显示多条内容

  • 若进行相关查询操作时,查询到的是多条数据,故使用数组(java中的List……)进行存储,以及在网页显示时则应使用循环进行显示
  • 通过使用在servlet中定义的
List<Message> list=messageDao.searchMessageALL2();request.setAttribute("messageList", list);       request.getRequestDispatcher("showMessageList.jsp").forward(request, response);

将所查询出的值传给一个数组list,再传给messageList,则再通过在jsp页面调用messageList来读取相应查询出的数据,以及通过循环来进行多条的显示,如下所示:

<table style="width:100%;">       <tr>    <th>Writer</th>     <th>Post Id</th>      <th>Title</th>     <th>Content</th>    <th>Create Date</th>      <th></th>     </tr>    <c:forEach items="${requestScope.messageList}"  var="message" >    <tr>    <td>${message.message_account_account}</td>    <td>${message.message_id}</td>    <td>${message.message_title}</td>    <td>${message.message_content}</td>    <td>${message.message_data}</td>    <td ><a href="Account_showRevertServlet?uid=${message.message_id}" style="color: #7c8d87;">Read</a></td>    </tr>    </c:forEach></table>

通过上述方法可在网页中循环输出从数据库中查询到的多条值

上面两个方法一个提交,一个显示,基本可以满足BBS的简单交互

三、设置项目初始页面

通过在项目目录的WEB-INF下的lib下的web.xml中的

<welcome-file-list>    <welcome-file>Account_login.jsp</welcome-file></welcome-file-list>

中设置当点击该项目第一个打开页面,即第一显示的页面
- <welcome-file>标签中的即是第一个打开的默认页面

0 0
原创粉丝点击