jsp homework(*)

3.编写一个JSP程序实现手表的功能,显示当前时间(时:分:秒),并不停地自动刷新时间。

方法一【scriptlet】

<%@ page language="java" import="java.util.*,java.text.SimpleDateFormat" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head> 
    <title>work01</title>
    <meta http-equiv="refresh" content="1">
  </head>
  <body>
    <%
     Date d=new Date();
     SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
     String time=sdf.format(d);
    %>
    <h1><%=time %></h1>
  </body>
</html>

 方法二【js】

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<html>
<head>
    <title>work1</title>
    <script>
    function run()
    {
        var d =new Date();
        document.getElementById("clock").innerHTML=d.toLocaleString();
        setTimeout("run();",1000);
    }
    </script>
</head>
<body onload="run()">
<span id ="clock"></span>
</body>
</html>

4,编写一个JAVA类和一个JSP页面,把下列信息封装到3个Student对象里,再把每一个对象放到一个ArrayList对象里,再利用ArrayList对象在JSP页面的表格中显示所示的信息

package songyan;
public class Student {
    private String id;
    private String name;
    private String sex;
    private String classes;
    private double grade;
    
    public Student()
    {
        
    }
    
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    public String getClasses() {
        return classes;
    }
    public void setClasses(String classes) {
        this.classes = classes;
    }
    public double getGrade() {
        return grade;
    }
    public void setGrade(double grade) {
        this.grade = grade;
    }
    
    
    
}
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="songyan.Student" %>
<%@ page import="java.util.*" %>
<%
    Student s4=new Student();
        Student s2=new Student();
        Student s3=new Student();
        
        s4.setId("004");
        s4.setClasses("04");
        s4.setName("李白");
        s4.setSex("男");
        s4.setGrade(723.0);
        
        s2.setId("002");
        s2.setClasses("02");
        s2.setName("孟浩然");
        s2.setSex("男");
        s2.setGrade(689.0);
        
        s3.setId("003");
        s3.setClasses("03");
        s3.setName("杨玉环");
        s3.setSex("女");
        s3.setGrade(600.0);
        
        ArrayList<Student> al=new ArrayList<Student>();
        al.add( s4);
        al.add( s2);
        al.add( s3);

%>
<html>
<head>
<title>work2</title>
</head>
<body>
<%
    String[] title= new String[]{"学号","姓名","性别","班级","成绩"};
%> 
<table width="780px" border="4px" cellpading="0">
<tr>
<td><%=title[0] %></td>
<td><%=title[4] %></td>
<td><%=title[2] %></td>
<td><%=title[3] %></td>
<td><%=title[4] %></td>
</tr>
<tr>
<td><%=s4.getId() %></td>
<td><%=s4.getName() %></td>
<td><%=s4.getSex() %></td>
<td><%=s4.getClasses() %></td>
<td><%=s4.getGrade() %></td>
</tr>
<tr>
<td><%=s2.getId() %></td>
<td><%=s2.getName() %></td>
<td><%=s2.getSex() %></td>
<td><%=s2.getClasses() %></td>
<td><%=s2.getGrade() %></td>
</tr>
<tr>
<td><%=s3.getId() %></td>
<td><%=s3.getName() %></td>
<td><%=s3.getSex() %></td>
<td><%=s3.getClasses() %></td>
<td><%=s3.getGrade() %></td>
</tr>
</table>
</body>
</html>

5,编写一个JSP程序,使用JSP Script显示网页上的不同颜色的颜色条,暂显示如下颜色的颜色条:绿色、蓝绿色、黑色、红色、黄色以及粉红(对应的颜色为:Green、Cyan、Black、Red、Yellow、Pink)

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
  <head>
    <title>work02</title>
  </head>
  <body>
    <%
        String[] colors={"Green","Cyan","Black","Red","Yellow","Pink"};
        for(int i=0;i<colors.length;i++)
        {
    %>
    <hr color="<%=colors[i] %>" ></hr>
            
    <%  }%>  
  
  </body>
</html>

1,编写两个文档,一个是JSP文档命名为myjsp.jsp,另一个是普通的HTML文档,命名为myphoto.html。

要求:在myphoto.html插入自己的照片,在myjsp.jsp中嵌入<jsp:include>操作指令,当在IE中运行myjsp.jsp时能够将myphoto.html中的照片显示出来。

<!DOCTYPE html>
<html>
  <head>
    <title>myphoto.html</title>
  </head>
  <body>
   <image src="image/3.jpg" width="400px"></image>
  </body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    import="java.util.*,java.text.*,songyan.bean.*"%>
<html>
<head>
<title>title</title>
<%@include file="photo.html" %>
</head>
<body>
</body>
</html>

2,编写一个JSP页面,实现根据一个人的18位身份证显示出生日的功能来,要求把表达式声明和Scriptlet全部用到,并把结果显示在表格中,如下表

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<html>
  <head>      
    <title>index.jsp</title>
  </head>  
  <body>
  <%!
      String[] ids={"373325199611234322","373325199301214322"};
  %>
   <form action="result.jsp" method="get">
           <table border="1">
               <tr>
                   <td >身份证</td>
                   <td>生日</td>
               </tr>
               <tr>
                   <td name="id1"><%=ids[0] %></td>
                   <td name="date1"><%=ids[0].substring(6, 10)+"-"+ids[0].substring(11, 12)+"-"+ids[0].substring(13, 14) %></td>
               </tr>
               <tr>
                   <td name="id2"><%=ids[1] %></td>
                   <td name="date2"><%=ids[1].substring(6, 10)+"-"+ids[1].substring(11, 12)+"-"+ids[1].substring(13, 14) %></td>
               </tr>
           </table>
           
   </form>
  </body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
  <head>  
    <title>My JSP 'result.jsp' starting page</title>   
  </head>  
  <body>
    <%
           String id1=request.getParameter("id1");
          String id2=request.getParameter("id2");
          System.out.print("jj");
   %>
  </body>
</html>

3.编写一个jsp页面,利用Scriptlet编写一段计算代码,要求用0做除数,并使用page指令将该错误信息显示在另一个jsp页面上,产生的错误信息为“错误,不能用0做除数!”。

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page errorPage="error.jsp" %>
<html>
  <head>      
    <title>index.jsp</title>
  </head>  
  <body>
   <%=8/0 %>  
  </body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
  <head>      
    <title>My JSP 'MyJsp.jsp' starting page</title>
  </head>  
  <body>
错误,0不能做除数!
  </body>
</html>

4.超女音乐吧用户需求注册,请为此编写jsp页面来实现注册,注册信息包括用户名、密码、性别、年龄、电话和E-mail。用户名不能重复,如果用户名已经存在要提示用户;用户名、性别、密码和E-mail必须输入;密码需要输入两次,并前后一致;E-mail要求进行合法性检验。

1.请编写JSP程序实现如图所示的简易计算器。要求:输入“第一个参数”,选择运算类型(+-*/),输入 “第二个参数”后,按计算按钮,结果将显示在结果”文本框中。

要求:程序需要对输入参数是否合法进行判断,

例如参数是否为数字,除法时,除数不为0的判断。

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>index.jsp</title>
<script>
    function getresult()
    {
        var num1=document.getElementById("num1").value;
        var sig=document.getElementById("sig").value;
        var num2=document.getElementById("num2").value;
        n1 = parseFloat(num1);
        n2 = parseFloat(num2);
         if(sig=="/"&& num2=="0")
        {
                document.write("除数不能为零");
            
        }
        else
        {
            
     switch (sig) {
            case "+":
                document.getElementById("result").value = n1+n2;
                break;
            case "-":
                document.getElementById("result").value =n1-n2;
                break;
            case "*":
                document.getElementById("result").value =n1*n2;
                break;
            case "/":
                document.getElementById("result").value =n1/n2;
                break;

            } 
        }

    }
</script>
</head>
<body>
      <h1>计算器</h1>
      <hr color="red">
      请输入第一个数:<input type="text" name="num1" id="num1"><br><br>
      <select name="sig" id="sig">
          <option value="+">+</option>
          <option value="-">-</option>
          <option value="*">*</option>
          <option value="/">/</option>
      </select><br><br>
      请输入第二个数:<input type="text" name="num2" id="num2"><br><br>
      <input type="submit" value="submit" onclick="getresult()">
      <input type="reset" value="reset"><br><br>
      <input type="text" name="result"  id="result"/>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!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>calculator.jsp</title>
</head>
<body>
    <jsp:useBean id="calcBean" class="songyan.day03.Calculator"></jsp:useBean>
    <jsp:setProperty property="*" name="calcBean" />
    <%
        calcBean.calculate();
    %>
    <hr>
    计算结果是:
    <jsp:getProperty property="firstnum" name="calcBean" />
    <jsp:getProperty property="operator" name="calcBean" />
    <jsp:getProperty property="secondnum" name="calcBean" />
    =<jsp:getProperty property="result" name="calcBean" />
    <hr>
    <form action="/jsp/day03/calculator.jsp" method="post">
        <table style="text-align: center;">
            <tr>
                <td colspan="2">简单的计算器</td>
            </tr>
            <tr>
                <td>第一个参数</td>
                <td><input type="text" name="firstnum" /></td>
            </tr>
            <tr>
                <td><select name="operator">
                        <option value="+">+</option>
                        <option value="-">-</option>
                        <option value="*">*</option>
                        <option value="/">/</option>
                </select></td>
            </tr>
            <tr>
                <td>第二个数</td>
                <td><input type="text" name="secondnum" /></td>
            </tr>
            <tr>
                <td>
                    <button name="calc" type="submit">计算</button>
                </td>
            </tr>
        </table>
    </form>
</body>
</html>

编写一个JSP页面,将用户名和密码存放到会话中(假设用户名为“孤独求败”,密码为“123456”),再重新定向到另一个JSP页面,将会话中存放的用户名和密码显示出来。(提示:使用response对象的sendRedirect()方法进行重定向。)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>jsp计算器</title>
</head>
<body>

<%
HttpSession ses =request.getSession();
ses.setAttribute("username", "孤独求败");
ses.setAttribute("password", "123456");
response.sendRedirect("response.jsp");
%>

</body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
  <head>
    <title>My JSP 'response.jsp' starting page</title>
  </head>
  <body>
   用户名:<%=request.getSession().getAttribute("username") %>
密码 :<%=request.getSession().getAttribute("password") %>
  </body>
</html>

编写一个JSP登录页面,可输入用户名和密码,提交请求到另一个JSP页面,该JSP页面获取请求的相关数据并显示出来。请求的相关数据包括用户输入的请求数据和请求本身的一些信息(比如请求使用的协议getProtocol() 、请求的URI request.getServletPath() 、请求方法request.getMethod() 、远程地址request.getRemoteAddr())。 

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>index.jsp</title>
</head>
<body>
<!--       编写一个JSP登录页面,可输入用户名和密码,提交请求到另一个JSP页面,
      该JSP页面获取请求的相关数据并显示出来。请求的相关数据包括用户输入
      的请求数据和请求本身的一些信息(比如请求使用的协议getProtocol()
       、请求的URI request.getServletPath() 、请求方法request.getMethod() 
       、远程地址request.getRemoteAddr()等)。 -->
       
       <form action="result.jsp">
           用户名:<input type="text" name="userName"><br><br>
           密码:<input type="text" name="password"><br><br>
           <input type="submit" value="登陆">
       </form>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>result.jsp</title>
</head>
<body>
<!--       编写一个JSP登录页面,可输入用户名和密码,提交请求到另一个JSP页面,
      该JSP页面获取请求的相关数据并显示出来。请求的相关数据包括用户输入
      的请求数据和请求本身的一些信息(比如请求使用的协议getProtocol()
       、请求的URI request.getServletPath() 、请求方法request.getMethod() 
       、远程地址request.getRemoteAddr()等)。 -->
       用户名:<%=request.getParameter("userName") %><br><br>
       密码:<%=request.getParameter("password") %><br><br>
       请求使用的协议:<%=request.getProtocol() %><br><br>
       请求的URI:<%=request.getServletPath() %><br><br>
       请求方法:<%=request.getMethod() %><br><br>
       远程地址:<%=request.getRemoteAddr()%><br><br>
       
</body>
</html>

利用隐式对象为某一网站编写一个JSP程序,统计该网站的访问次数。

一种情况是:按照客户进行统计(按照浏览器进行统计,一个浏览器如果访问网站的话,就算一次访问,换句话说如果这个浏览器刷新多次网站的话,也算是一次访问);

另一种情况:刷新一次页面,就算是一次访问。

要求用隐式对象去实现。 

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>jsp计算器</title>
</head>
<body>
    <%
        if (pageContext.getAttribute("pageCount") == null) {
            pageContext.setAttribute("pageCount", new Integer(0));
        }
        if (session.getAttribute("sessionCount") == null) {
            session.setAttribute("sessionCount", new Integer(0));
        }

        Integer count = (Integer) pageContext.getAttribute("pageCount");
        pageContext.setAttribute("pageCount", new Integer(
                count.intValue() + 1));
        Integer count2 = (Integer) session.getAttribute("sessionCount");
        session.setAttribute("sessionCount", new Integer(
                count2.intValue() + 1));
    %>
    页面计数:<%=pageContext.getAttribute("pageCount")%>
    <br />
    浏览器计数<%=session.getAttribute("sessionCount")%>
    <br />
</body>
</html>
原文地址:https://www.cnblogs.com/excellencesy/p/8511655.html