这是一个用JSP开发第一个动态网站的例子.
在这个例子中,我们实现的是在第一个页面,让用户输入自己的昵称,然后在第二个页面中显示第一个页面输入的昵称。通过这个例子,基本了解jsp通过表单传递和接受参数。
这个项目的目录结构是:
DynamicSite
|-----page1.jsp
|-----page2.jsp
|-----WEB-INF
|---classes
|----lib
|----web.xml
这个例子的下载:附件中有. 好了,开始。
既然要动态网站,肯定少不了服务器和JAVA虚拟机。入门级别的,肯定首选Tomcat. 下载地址
http://java.sun.com/javase/downloads/index.jsp
http://tomcat.apache.org/download-60.cgi
下载后解压得到一个目录,里面有一个bin文件夹,有一个tomcat6文件,双击开启tomcat服务器。
将刚才的项目目录放到tomcat的这个路径下: Tomcat 6.0\webapps
接下去是编写jsp页面了。
page1.jsp
- <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
- <html>
- <head>
- <title>这是我的第一个Jsp页面</title>
- </head>
- <body>
- <form name="firstForm" action="page2.jsp" method="post">
- <input type="text" name="username" />
- <input type="submit" value="提交" />
- </form>
- </body>
- </html>
上面首先写上一个jsp的头,<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
然后页面中有一个表单,用来让你填写,其中,主要是一个 action="page2.jsp"
表明了提交的去向。
再是page2.jsp
- <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
- <html>
- <head>
- <title>这是第一个动态显示信息的页面</title>
- </head>
- <body>
- <%
- String _username = request.getParameter("username" );
- %>
- 你输入的用户名是<%=_username %>
- </body>
- </html>
在这个页面中,可以看出,第一个页面提交过来的其实是一个request对象,在这个页面中通过
String _username = request.getParameter("username" );
获取了request中的值,也就是表单中name属性为username的表单域的值。
好了,看一下效果吧: http://localhost:8080/DynamicSite/page1.jsp
第二个页面如何?ni掌柜为何变成了乱码?
这是因为在jsp表单提交中包含了中文,我们要对request中的编码进行设置.如下:
- <%
- request.setCharacterEncoding("UTF-8");
- String _username = request.getParameter("username" );
- %>
好了,现在都正常了的.