1.编写两个页面a.jsp和b.jsp,在a.jsp中输入矩形的两个边长,然后提交给b.jsp,b.jsp调用一个bean计算矩形的面积。
a.jsp
a.jsp请输入矩形的长:
请输入矩形的宽:
b.jsp
pageEncoding="GBK"%>
b.jsp矩形的长:
矩形的宽:
矩形的面积为:
NewRectangle.java
package big.dog;
public class NewRectangle {
double length,width,area;
public double getLength(){
return length;
}
public void setLength(double length){
this.length=length;
}
public double getWidth(){
return width;
}
public void setWidth(double width){
this.width=width;
}
public double getArea(){
return length*width;
}
}
2.编写一个JSP页面prime.jsp判断并输出一个正整数是否为素数。
要求:1页面中定义一个方法boolean is Prime(int n )来判断是否为素数.2当使用http://localhost:8080/EX1/PRIME.jsp?num=99的形式访问页面时,页面中获取参数值并调用isPrime方法,然后输出结果.3假设参数num的值一定是合法的正整数
prime.jsp
pageEncoding="GBK"%>
prime.jsppublic boolean isPrime(int n){
if(n<2){
return false;
}
else if(n==2||n==3){
return true;
}
else if(n%2==0){
return false;
}
else{
for(int i=3;i<=Math.sqrt(n)+1;i+=2){
if(n%i==0){
return false;
}
}
return true;
}
}
%>
String s = request.getParameter("num");
int n = Integer.parseInt(s);
out.print(n+"是不是素数?"+isPrime(n));
%>
基于MVC模式设计一个Web应用,该应用提供两个JSP页面,一个页面输入三角形的三条边的长度,另一个页面显示三条边的长度和三角形的面积。
web.xml
ControllerServlet
servlet.ControllerServlet
ControllerServlet
/isTriangle
Triangle.java
package bean;
public class Triangle {
double sideA,sideB,sideC,area;
public double getsideA(){
return sideA;
}
public void setsideA(double a){
this.sideA=a;
}
public double getsideB(){
return sideB;
}
public void setsideB(double b){
this.sideB=b;
}
public double getsideC(){
return sideC;
}
public void setsideC(double c){
this.sideC=c;
}
public double getArea(){
double p = (sideA+sideB+sideC)/2;
area = Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC));
return area;
}
}
Triangle.jsp
pageEncoding="GBK"%>
Triangle.jsp请输入三角形各边长度:
a边:
b边:
c边:
showTriangle.jsp
pageEncoding="GBK"%>
showTriangle.jsp边A:
边B:
边C:
三角形面积:
ControllerServlet.java
package servlet;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import bean.Triangle;
public class ControllerServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Triangle tri = new Triangle();
double a=Double.parseDouble(request.getParameter("sideA"));
double b=Double.parseDouble(request.getParameter("sideB"));
double c=Double.parseDouble(request.getParameter("sideC"));
tri.setsideA(a);
tri.setsideB(b);
tri.setsideC(c);
tri.getArea();
request.setAttribute("triangle",tri);
RequestDispatcherdis=request.getRequestDispatcher("showTriangle.jsp");
dis.forward(request,response);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request,response);
}
}
编写一个JSP页面useMySQL.jsp,在该页面的Java程序片中连接MySQL数据库databaseone,并从表employee中查询工资小于3000的雇员信息(employee表中的字段为:empNo,name,salary)。
数据库操作:
打开Mysql,启动navicat
Create database mydatabase
Use mydatabate
Create table empolyee{
empNo varchar(10) not null,
name varchar(30),
Salary float not null,
Primary key (empNo)
};
添加数据
useMySQL.jsp
pageEncoding="GBK"%>
useMySQLConnection con=null;
Statement st=null;
ResultSet rs=null;
try{
Class.forName("com.mysql.jdbc.Driver");
}catch(ClassNotFoundException e){
e.printStackTrace();
}
try{
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","");
st=con.createStatement();
rs=st.executeQuery("select * from empolyee where salary<3000");out.print("
out.print("
");out.print("
雇员编号");out.print("
雇员姓名");out.print("
工资");out.print("
");while(rs.next()){
out.print("
");out.print("
"+rs.getString(1)+"");out.print("
"+rs.getString(2)+"");out.print("
"+rs.getString(3)+"");out.print("
");}
out.print("
");}catch(SQLException e){
e.printStackTrace();
}finally{
try{
if(rs!=null){
rs.close();
}
if(st!=null){
st.close();
}
if(con!=null){
con.close();
}
}catch(SQLException e){
e.printStackTrace();
}
}
%>
5.编写一个Servlet类VerificationCode.java实现生成验证码功能.
要求:1验证码只使用0~9这10个数字2验证码以4位数字构成的字符串方式输出到浏览器页面3对GET和POST请求都可以响应4Servlet置于pkg包中
VerificationCode.java
package pkg;
import java.io.*;
import javax.servlet.*;
import javax.servlet.*;
public class VerificationCode {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String result = "";
for(int i=0;i<4;i++){
int n=(int)(Math.random()*10);
result += n;
}
PrintWriter out=response.getWriter();
out.append(result);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request,response);
}
}