Eclipse创建JSP程序

  JSP程序应该是每本Java Web入门书籍的首要介绍的内容,本文参考指导书中的示例,记录JSP的基本知识。

程序功能

  编写一个简单的留言簿,用户登录后可以在线留言,留言提交后可以显示留言内容。用户登录失败,会提示错误信息,并重新跳转到登录界面。

涉及的JSP技术

  1、JSP表达式:<%= 表达式 %>
  2、JSP代码片段:<% Java代码或脚本代码%>
  3、请求转发表示<jsp:forward>
  4、request对象:获取客户端HTTP请求中的各项参数;
  5、response对象:响应请求,向客户端输出信息;
  6、Application对象:保存所有应用程序中的共有数据,本文中拿来保存留言。

项目开发过程

  准备创建四个JSP文件:login.jsp,用于用户登录;deal.jsp用于判断是否合法用户;error.jsp显示非法用户信息;MessageBoard.jsp用于显示和提交留言。
  新建JSP项目,命名为MyMessageBoard,如下图所示:
在这里插入图片描述
  新建login.jsp文件,并编写简单的HTML用于输入用户名和密码。
在这里插入图片描述

<div align="center">用户登录<br>
<hr width="30%" size="3" style="background-color:rgb(64,0,0);">
<br>
<form action="deal.jsp" method="post" name="login">
	<p>用户名:<input type="text" size="15" name="userName"/></p>
	<p>密码:<input type="password" size="15" name="userPassword"/><br></p>
	<p><input type="submit" value="确定" name="submit"/></p>
</form>
</div>

在这里插入图片描述

  接着新建deal.jsp,用于判断用户名和密码是否正确,这里因为没涉及数据库,所以就先写死一个用户名和密码,如何用户名和密码正确就跳转到留言簿页面,如果不正确就跳转到报错界面。
在这里插入图片描述

<body>
<%
	String userName=request.getParameter("userName");
	String userPassword=request.getParameter("userPassword");
	
	if(userName.equals("gc_2299") && userPassword.equals("123456"))
	{
		request.getRequestDispatcher("messageboard.jsp").forward(request,response);
	}
	else
	{
		response.sendRedirect("error.jsp");
	}
%>
</body>

  然后新建error.jsp,用于显示用户名密码错误信息,然后定时跳转到登录页面。
在这里插入图片描述
  response那句代码可以实现定时跳转。

<title>用户名密码错误</title>
</head>
<body>
你输入的用户名或密码有误,2秒后将跳转回登录页面!
<% response.setHeader("refresh", "2;URL=login.jsp");%>
</body>

在这里插入图片描述
  最后创建留言簿页面,由于水平有限,就弄了一个特别简陋的页面。
在这里插入图片描述  JSP代码逻辑如下所示,最上方显示当前用户和IP(直接从request中取的,每次刷新页面值就变成null了),在application中存每次的留言(就是一直拼字符串),最下方是写留言的地方,写完后提交给当前页面自己处理。

<div>
<%
	String userName=request.getParameter("userName");
	String userIP=request.getRemoteAddr();
	String msg=request.getParameter("msg");
	String allMsgs="";
	
	if(msg!=null)
	{
		allMsgs=(String)application.getAttribute("messages");
		if(allMsgs==null)
		{
			allMsgs=msg;
		}
		else
		{			
			allMsgs+="<br>"+msg;
		}
		
		application.setAttribute("messages", allMsgs);
	}
%>
当前用户:<%=userName %>;IP:<%=userIP %>
</div>
<div>
已有留言:<br>
<%=allMsgs %>
</div>
<div>
请输入留言:
<form action="messageboard.jsp" method="post" name="mb">
<input type="text" name="msg">
<p><input type="submit" value="留言" name="submit"/></p>
</form>
</div>

  下面是登录成功的效果。
在这里插入图片描述
  下面是输了很多次之后的效果,application生存期很长,我提交的内容一直都在里面留着,刷新了页面也没有丢。
在这里插入图片描述
  本文就到这里了,上面的代码主要是为了示意功能,里面的问题很多,就不去完善了。后续会接着写java bean 和servlet的文章,也会抽时间接着学习swing。

参考文章:
[1]Java Web设计使用教程
[2]Java Web从入门到精通

  • 5
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值