yznu课程:JSP实验报告2

一、实验目的及要求:

  1. 掌握表单信息提交方法。
  2. 掌握request内置对象的getParameter()、getParameterValues()等获取表单多种元素值的方法。
  3. 掌握foreword运作标志使用方法。
  4. 掌握out对象的print()等方法的使用。
  5. 掌握汉字乱码的处理方法。

二、实验内容:

1.编写research.jsp页面用于提交用户的信息(参考下图,具体内容可自行决定),编写 view.jsp文件用于获取前一页面提交过来的信息,并显示在页面上。

要求对姓名(名字长度2~4个汉字)使用正则表达式进行判断,如果不符合要求,则提示输入正确的值。

2.编写index.jsp用request.setAttribute()方法来存放学生的基本信息(姓名、学号、性别、专业、年级),并转发于second.jsp页面,在second.jsp页面利用request.getAttribute()方法获取相应的信息并用out.print()方法输出。

三、主要代码:(10号字,宋体,单倍行距)

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Insert title here</title>

<script>

    function yan(){

        var ab=document.getElementById("peopleName").value;

        var reg= /^[\u4e00-\u9fa5]{2,4}$/;

        if(reg.test(ab)){

            alert("true");

        }else{

            alert("名字不正确");

        }

    }

</script>

</head>

<body>

    <%

        out.print("<font size=8>");

        out.print("个人信息调查表(*为必填)");

        out.print("</font>");

    %>

<form action="second.jsp" method="post" name="form">

   姓名:<input  type="text" name="peopleName" onClick="yan()" required>*

   <br>年龄:<input  type="text"  name="title" required>*

   <br>学历:    <select name="www">

                    <option>本科</option>

                    <option>研究生</option>

                    <option>博士</option>

                </select>

   <br>Email<input  type="text"  name="email" required>*<br>

   爱好:

    <input type="checkbox" name="item" value="计算机">计算机

    <input type="checkbox" name="item" value="数据结构">数据结构

    <input type="checkbox" name="item" value="计算机网络">计算机网络

    <input type="checkbox" name="item" value="体育课">体育课

    <input type="checkbox" name="item" value="英语">英语

    <input type="checkbox" name="item" value="课外活动">课外活动

    <br>

    对本站的评价:

    <input type="radio" name="aaa" value="好" checked="default">

    <input type="radio" name="aaa" value="一般">一般

    <input type="radio" name="aaa" value="差"><br>

   留言:<br> <textArea name="messages" rows="10" cols=36

                   wrap="physical"></textArea>

   <br><input type="submit" value="提交" name="submit">

   <input type="reset" value="重置">

</form>

</body>

</html>

页面二:

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<%@ page import="java.util.*" %>

<%request.setCharacterEncoding("UTF-8"); %>

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Insert title here</title>

</head>

<body>

        <%! Vector v=new Vector();

            int i=0;

            ServletContext  application;

            synchronized void leaveWord(String s){

                application=getServletContext();;

                i++;

                v.add(s);

                application.setAttribute("Mess",v);

            }

        %>

     <% String name=request.getParameter("peopleName");

        String title=request.getParameter("title");

        String www=request.getParameter("www");

        String email=request.getParameter("email");

        String item=request.getParameter("item");

        String aaa=request.getParameter("aaa");

        String messages=request.getParameter("messages");

          if(name==null||name.equals(""))

          name="guest"+(int)(Math.random()*10000);

           if(title==null||title.equals(""))

              title="无标题";

           if(messages==null||messages.equals(""))

              messages="无信息";

           String s=name+"#"+title+"#"+www+"#"+email+"#"+item+"#"+aaa+"#"+messages;

           leaveWord(s);

     %>

     <% Vector v=(Vector)application.getAttribute("Mess");

     for(int i=0;i<v.size();i++) {

        String message=(String)v.elementAt(i);

        String []a =message.split("#");

        out.print("<br>");

        out.print("留言人:"+a[0]+"<br>");

        out.print("年龄:"+a[1]+"<br>");

        out.print("学历:"+a[2]+"<br>");

        out.print("Emial:"+a[3]+"<br>");

        out.print("爱好:"+a[4]+"<br>");

        out.print("对本站的评价:"+a[5]+"<br>");

        out.print("留言内容:<br>"+a[6]);

        out.print("<br>--------------<br>");

     }

  %>

</body>

</html>

四、实验结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值