您的位置:首页 > Web前端 > JavaScript

jsp知识点汇总

2010-07-29 12:23 260 查看
jsp=html+java片段+jsp标签+javascript(css)->比较综合

jsp功能强大时因为可以与javabean结合使用(jsp做前台,javabean做后台)

jsp基本语法:

1.Jsp声明语句

它以<%!开始,以%>结束,其语法格式为:<%!声明语句%>。使用声明语句声明的变量为全局变量。用户共享此变量。

2.Jsp Scriptlets

它以<%开始,以%>结束,其语法格式为:<%Java代码%>。

3.Jsp表达式

它以<%=开始,以%>结束,其语法格式为:<%=Java代码%>。Jsp表达式中的代码会首先执行,然后转换成字符串并显示到网页。

4.Jsp注释

分为两类:一类为可以在客户端显示的注释(Html注释),一类为不能在客户端显示的注释(Jsp注释)。

Html注释使用<!--开始,以-->结束。能从查看源代码中看到。

Jsp注释使用<%--开始,以--%>结束。

jsp的脚本元素:

1.scriplet <%java代码%>

2.表达式   <%=java表达式%> <%=rs.getString(1)%>

3.declaration表达式

  <%!变量声明%>

  <%!函数声明%>

jsp常用的动作元素:

1.<jsp:useBean>//创建一个javabean实例

2.<jsp:setProperty>//给一个javabean实例设置初始化

3.<jsp:param>  //给一个jsp设置参数,常常与<jsp:include>结合使用

   <jsp:include file="info.jsp">

      <jsp:param name="parameter1" value="parameterValue"/>

      <jsp:param name="parameter2" value="parameterValue"/>

   </jsp:include>

4.<jsp:getProperty>//取得一个javaBean实例的成员变量

5.<jsp:include>//引入其他文件

6.<jsp:plugin>//使用插件

7.<jsp:forward>//转发

8.<jsp:fallback>//

jsp的9大内置对象

1.out   //向客户端输出数据,字节流

  out.println("");

2.request  //接收客户端的http请求

   getParameter(String name);//name 表示表单的参数名

   getParameterValues(String name);//使用得到是string[]

   setAttribute(String name,Object obj);//设置名称是name的obj,值为obj

   getAttribute(String name);//返回由name指定的属性值,如果不存在就返回null

   getCookie();

3.response//封装jsp的产生的回应

  addCookie(Cookie cookie);

  sendRedirect("/welcome.jsp");

4.session //用于保存用户的信息,跟踪用户的行为

  setAttribute(String name,Object obj);

  getAttribute(String name);

5.application //多个用户共享该对象,可以做计数器

6.pageContext//代表jsp上下文

7.exception//代表运行时的一个异常

  getMessage();

8.page//代表jsp这个实例本身

9.config //代表jsp对应得servlet的配置,可以得到web.xml中的参数

jsp页面的执行分成两个阶段,一个是转译阶段,一个是请求阶段。

转译阶段:JSP页面转换成Servlet类。

请求阶段:Servlet类执行,将响应结果发送到客户端。

运行过程详细介绍:

1.用户访问响应的JSP页面,如http://localhost:8080/Testjsp/HelloWorld.jsp

2.服务器找到相应的JSP页面。

3.服务器将JSP转译成Servlet的源代码(转译后的文件放在:Apache Software Foundation/Tomcat 6.0/work/Catalina/localhost/自己定义的文件夹/org/apache/jsp/)。

4.服务器将Servlet源代码编译为class文件。

5.服务器将class文件加载到内存并执行。

6.服务器将class文件执行后生成HTML代码发送给客户机,客户机浏览器根据响应的HTML代码进行显示。

jsp与servlet的关系:

1.jsp和servlet是对应关系。

2.jsp是以servlet为基础的。

1.如何接受jsp页提交的数据,并处理

2.jsp中如何使用java片段

3.jsp中如何使用javascript完成对数据合法性的校验.(在<head></head>中添加javascript代码)

例子:一个简单的计算器

<%@ page contentType="text/html;charset=gb2312"%>

<html>

  <h1>我的计算器</h1>

  <hr>

  <head>

  <!-- 在jsp中添加js代码,防止用户提交空 -->

   <script language="javascript">

    <!--

   

     //建立一个函数,用于校验接受的数据是否合法

     function checkNum(){

       //判断num1是不是空

       if(form1.num1.value==""){

            window.alert("num1,不能为空!!!");

         

          //返回false阻止发生

          return false;

       }

       //判断num1,是不是一个数

       if(Math.round(form1.num1.value)!=form1.num1.value){

         window.alert("num1,不是一个数!!!");

         return false;

       }

      

       //判断num2是不是空

        if(form1.num2.value==""){

            window.alert("num2,不能为空!!!");

         

          //返回false阻止发生

          return false;

       }

       //判断num1,是不是一个数

       if(Math.round(form1.num2.value)!=form1.num2.value){

         window.alert("num2,不是一个数!!!");

         return false;

       }

    

     }

     -->

 

   </script>

  </head>

  <body>

  <%

     //接受第一个数

     String s_num1=request.getParameter("num1");

     //接收第二个数

     String s_num2=request.getParameter("num2");

     //接受运算符号

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

    

     int num1=0;

     int num2=0;

     int result=0;

     //String->int

    

     //为了防止异常的发生,此处要处理

     if(s_num1!=null&&s_num2!=null&&flag!=null){

    

      num1=Integer.parseInt(s_num1);

      num2=Integer.parseInt(s_num2);

      //计算

      if(flag.equals("+")){

        //加

        result=num1+num2;

      }else if(flag.equals("-")){

        //减

        result=num1-num2;

      }else if(flag.equals("*")){

        //乘

        result=num1*num2;

      }else{

        //除

        result=num1/num2;

      }

     }

    

    

  %>

  <form name="form1" action="jsq.jsp">

  <!--

  value用来让数据保留在方框中

  maxlength="6"代表可以输入的数据的最大长度

   size为输入框大小

   -->

  请输入第一个数:<input type="text" size="6" maxlength="6" name="num1" value="<%=num1%>"><br>

  <select name="flag">

  <option value=+>+</option>

  <option value=->-</option>

  <option value=*>*</option>

  <option value=/>/</option>

  </select><br>

  请输入第二个数:<input type="text" size="6" maxlength="6" name="num2" value="<%=num2%>"><br>

  <!-- onclick时调用函数checkNum() -->

  <input type="submit" value="计算" onclick="return checkNum();">

  </form><br>

  <hr>

  计算结果是<%=result%>

  </body>

</html>

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息