现在的位置: 首页 > 综合 > 正文

JSP基础_0900_Action

2017年04月16日 ⁄ 综合 ⁄ 共 3228字 ⁄ 字号 评论关闭

Action(动作指令):在运行期间的指令
  常见的四种:

1.jsp:UserBean

jsp:setProperty

jsp:getProperty

2.jsp:include[以后常用,必须掌握]     请查看include/index.jsp

3.jsp:forward[企业常考和sendRedirect的区别]    请查看forward/index.jsp

jsp:param

4.jsp:plugin[用于嵌入applet程序,一般不用了]

a.jsp:include基本用法:

实验一:

//include/index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>Action</title>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
  </head>
  
 <body>
您需要进行的运算:
<form id="form1" name="form1" method="post" action="include/compute.jsp">
  <p>
    <input name="compute" type="radio" id="radio" value="division" checked="checked" />
  除法 
  <input type="radio" name="compute" id="radio2" value="multiply" />
乘法</p>
  <p>请输入您的数:被除数(乘数):
    <input type="text" name="value1" id="value1" />
    除数(乘数):
    <input type="text" name="value2" id="value2" />
  </p>
  <p>
    <input type="submit" name="button" id="button" value="提交" />
  </p>
</form>
</body>

</html>

//include/compute.jsp

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

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transit\ional//EN">
<html>
  <head>
    <title>结果页面</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
   <%
   String oper = request.getParameter("compute");
   if(oper!=null&&oper.equals("division")){
	   String v1 = request.getParameter("value1");
	   String v2 = request.getParameter("value2");%>
	   <jsp:include page="division.jsp" flush="true">
	   		<jsp:param value="<%=v1 %>" name="v1"/>
	   		<jsp:param value="<%=v2 %>" name="v2"/>
	   </jsp:include>
	   <%   
   }else{%>
   <%@ include file="mutiply.jsp" %>
   <%}%>
  </body>
</html>

//include/division.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
String v1 = request.getParameter("v1");
String v2 = request.getParameter("v2");
if(v1!=null&&v2!=null){
	double d1 = Double.parseDouble(v1);
	double d2 = Double.parseDouble(v2);
	if(d2==0.0){
		out.println("除数不能为0");
	}else{
		double result = d1/d2;
		out.println("除法结果:result="+result);	
	}
}else{
	out.println("请输入数字!");
}
%>

//include/multiply.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
String v1 = request.getParameter("value1");
String v2 = request.getParameter("value2");
if(v1!=null&&v2!=null){
	double d1 = Double.parseDouble(v1);
	double d2 = Double.parseDouble(v2);
	double result = d1*d2;
	out.println("乘积:result="+result);	
	
}else{
	out.println("请输入数字!");
}
%>

总结:如果不需要传入参数,直接使用Direction的include指令比较好,这样效率比较高;但需要传入参数时,必须使用Action指令

抱歉!评论已关闭.