实验目的及要求:
- 掌握JavaBean的属性及方法的命名规则。
- 掌握通过JavaBean存取数据的方法。
实验内容:
- 编写一个JSP输入页面,从表单输入本人姓名和二个整数n和k;
- 编写一个JavaBean,保存姓名和n、k,并且能计算从n开始的连续k个质数并计算这些质数的和;
- 编写一个辅助类,用于判断每一个整数是否为质数;
- 编写一个输出页面,从JavaBean中输出姓名和n、k的值,以及k个质数与它们的和。
实验关键代码:
Shiyan6-1.java:
<body>
<form action="shiyan6-2.jsp" method="post">
输入姓名和n和k:
姓名:<Input type=text name="name" value="" size=6>
n:<Input type=text name="n" value="" size=6>
k:<Input type=text name="k" value="" size=6>
<input type="submit" vaule="提交">
</form>
</body>
Shiyan6-2.java:
<body>
<jsp:setProperty name="one" property="*"/>
姓名:<%byte[] b=one.getName().getBytes("iso-8859-1");
String name1=new String(b,"utf-8");
out.print(name1);
%>
<br>n:<jsp:getProperty name="one" property="n"/>
<br>k:<jsp:getProperty name="one" property="k"/>
<br>
<%
for(int i=0;i<one.getK();i++){
out.println("第"+(i+1)+"个质数是");
out.println(one.getNumber()[i]);
out.println("<br>");
}
%>
<br>和是:<jsp:getProperty name="one" property="sum"/>
</body>
Panduan.java:
package test1.jw;
public class Panduan {
private int n = 3;
private int k = 0;
private int sum = 0;
private int x = 0;
private String name;
private int[] number ;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getN() {
return n;
}
public void setN(int n) {
this.n = n;
}
public int getK() {
return k;
}
public void setK(int k) {
this.k = k;
}
public int[] getNumber() {
int y=0;
number=new int[k];
for (int i = n; y < k; i++) {
if (Panduan2.juge(i) == true) {
number[y]=i;
y++;
}
}
return number;
}
public int getSum() {
for (int i = n; x < k; i++) {
if (Panduan2.juge(i) == true) {
sum = sum + i;
x++;
}
}
return sum;
}
}
Panduan2.java:
package test1.jw;
public class Panduan2 {
public static boolean juge(int num) {
boolean flag = true;
for (int i = 2; i < num; i++) {
if (num % i == 0) {
flag = false;
break;
}
}
if (flag) {
return true;
} else {
return false;
}
}
}
实验结果: