1.求1~100之间的偶数的和
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.util.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<%! int sum;
int n;
public int getEvenSum(){
for(int i=1;i<=n;i++){
if(i%2==0){
sum+=i;
}
}
return sum;
}
%>
</head>
<body>
<%
n=100;
sum=0;
%>
1~
<%=n %>内的全部偶数之和是:
<%=getEvenSum(n) %>
</body>
</html>
```bash
错误1:<%=getEvenSum(n) %>报错:
```bash
he method getEvenSum() in the type __2F_hello_2F_src_2F_main_2F_webapp_2F_tim1_2E_jsp is
not applicable for the arguments (int)
原因是:在getEventSum方法设置参数,在使用该方法是使用了参数。
解决方案:给方法加上参数getEventSum(int )。
2.显示当前访问者的序号的页面(计数器)
通过声明变量与方法,同时使用脚本小程序与表达式,实现一个简单的计数器功能。
<%@ 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>
</head>
<body>
<%! int count=0;//声明变量
synchronized void countUser(){//声明方法
count ++;
}%>
<%
countUser();//调用方法
%>
您是第<%= count %>位访问者!
</body>
</html>
运行效果:
知识点1:关键字synchronized的应用方式(浅谈)
- 修饰实例方法,作用于当前实例加锁,进入同步代码前要获得当前实例的锁。
- 修饰静态方法,作用于当前类对象加锁,进入同步代码前要获得当前实例的锁。
- 修饰代码块,指定加锁对象,对给定加锁对象加锁,进入同步代码前要获得给定对象的锁。
知识点2:page指令的使用注意事项
对于import属性,可以使用page指令以指定该属性有多个值,但是其他属性只能使用一次page指令指定属性的唯一一个值。
知识点3:include指令的使用
主要用于设置JSP页面中静态包含一个文件,用于解决重复性页面的问题。