⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄

📁 清华版的jsp基础程序 对新手很有用
💻
📖 第 1 页 / 共 2 页
字号:
第9章 Java  Servlet

例子1
servlet源文件
Hello.java:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Hello extends HttpServlet
{  public void init(ServletConfig config) throws ServletException
    {super.init(config);
    }
  public void service(HttpServletRequest reqest,HttpServletResponse response) throws IOException
    { //获得一个向客户发送数据的输出流:
       PrintWriter out=response.getWriter();
       response.setContentType("text/html;charset=GB2312");//设置响应的MIME类型。
       out.println("<HTML> <BODY>");
       out.println("Simple servlet");
       out.println("</body> </html>");
    } 
}

例子2
调用servlet的页面(该页面存放在web服务的根目录Root中)
givenumber.jsp(效果如图9.5所示)
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<BODY bgcolor=cyan><Font size=1>
<P>输入一个数,servlet求这个数的平方根:
<FORM action="examples/servlet/Sqrt" method=get>
  <Input Type=text name=number>
  <Input Type=submit value="提交">
</FORM>
</BODY>
</HTML>

servlet源文件(效果如图9.6所示)
Sqrt.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Sqrt extends HttpServlet
{   public void init(ServletConfig config) throws ServletException
    {super.init(config);
    }
  public void service(HttpServletRequest request,HttpServletResponse response) throws IOException
    { //获得一个向客户发送数据的输出流:
       PrintWriter out=response.getWriter();
       response.setContentType("text/html;charset=GB2312");//设置响应的MIME类型。
       out.println("<HTML> <BODY>");
       String number=request.getParameter("number");     //获取客户提交的信息。
       double n=0;
        try{ n=Double.parseDouble(number);
             out.print("<BR>"+Math.sqrt(n));
           }
        catch(NumberFormatException e)
           { out.print("<H1>input number letter please! </H1>");
           }       
       out.println("</body> </html>");
    } 
}

例子3
connection.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<BODY bgcolor=cyan><Font size=1>
<A Href="/servlet/Hello" >加载servlet<A>
</BODY>
</HTML>

例子4(效果如图9.7所示)
Count.java:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Count extends HttpServlet
{ int count;
  public void init(ServletConfig config) throws ServletException
    {super.init(config);
     count=0; 
    }
  public synchronized void service(HttpServletRequest request,HttpServletResponse response) 
                             throws IOException
    { //获得一个向客户发送数据的输出流:
       PrintWriter out=response.getWriter();
       response.setContentType("text/html;charset=GB2312");//设置响应的MIME类型。
       out.println("<HTML> <BODY>");
        count++;                         //增加计数。
       out.println("you are "+count+"th"+" people");
       out.println("</body> </html>");
    } 
}

例子5(效果如图9.8所示)
JSP页面
Example9_5.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<BODY bgcolor=cyan>
<A Href="examples/servlet/ComputerPI" >查看PI的值<A>
</BODY>
</HTML>

servlet源文件
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class ComputerPI extends HttpServlet
{ double sum=0,i=1,j=1;
  int number=0;
  public void init(ServletConfig config) throws ServletException
    {super.init(config);
    }
  public synchronized void  service(HttpServletRequest request,HttpServletResponse response) 
                        throws IOException
    { //获得一个向客户发送数据的输出流:
       PrintWriter out=response.getWriter();
       response.setContentType("text/plain");//设置响应的MIME类型为纯文本。
         number++;
         sum=sum+i/j;
         j=j+2;
         i=-i;  
       out.println("You are "+number+"th People coming to here");
       out.println("Now PI= "+4*sum);
    } 
}

例子6(效果如图9.9所示)
提交正数的JSP页面
Example9_6.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<BODY bgcolor=cyan><Font size=1>
<P>输入一个数,提交给servlet(Post方式):
<FORM action="examples/servlet/ComputerFactor" method=post>
  <Input Type=text name=number>
  <Input Type=submit value="提交">
</FORM>
<P>输入一个数,提交给servlet(Get方式):
<FORM action="examples/servlet/ComputerFactor" method=get>
  <Input Type=text name=number>
  <Input Type=submit value="提交">
</FORM>
</BODY>
</HTML>
sevlet源文件
ComputerFacor.java:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class ComputerFactor extends HttpServlet
{  
  public void init(ServletConfig config) throws ServletException
    {super.init(config);
    }
  public  void  doPost(HttpServletRequest request,HttpServletResponse response) 
                        throws ServletException,IOException
    {  //获得一个向客户发送数据的输出流:
       PrintWriter out=response.getWriter();
       response.setContentType("text/html;charset=GB2312");//设置响应的MIME类型。
       out.println("<HTML>"); 
       out.println("<BODY>");

       String number=request.getParameter("number");  //获取客户提交的信息。
       double n=0;
        try{ n=Double.parseDouble(number);
             out.println("<H1> factors of "+n+" :</H1>");
             //求n的全部因数:
             for(int i=1;i<=n;i++)
                 { if(n%i==0)
                   out.println(i);
                 }
           }
        catch(NumberFormatException e)
           { out.print("<H1>input number letter please! </H1>");
           } 
    }
  public  void  doGet(HttpServletRequest request,HttpServletResponse response) 
                        throws ServletException,IOException
    {
       doPost(request,response);
    }
}

例子7(效果如图9.10所示)
提交正数的JSP页面
Example9_7.jsp:
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<BODY bgcolor=cyan><Font size=1>
<P>输入一个数,提交给servlet(Post方式):
<FORM action="examples/servlet/ComputerFactorandPrimNumber" method=post>
  <Input Type=text name=number>
  <Input Type=submit value="提交">
</FORM>
<P>输入一个数,提交给servlet(Get方式):
<FORM action="examples/servlet/ComputerFactorandPrimNumber" method=get>
  <Input Type=text name=number>
  <Input Type=submit value="提交">
</FORM>
</BODY>
</HTML>

sevlet源文件
ComputerFacorandPrimNumber.java:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class ComputerFactorandPrimNumber  extends HttpServlet
{  
  public void init(ServletConfig config) throws ServletException
    {super.init(config);
    }
  public  void  doPost(HttpServletRequest request,HttpServletResponse response) 
                        throws ServletException,IOException
    {  //获得一个向客户发送数据的输出流:
       PrintWriter out=response.getWriter();
       response.setContentType("text/html;charset=GB2312");//设置响应的MIME类型。
       out.println("<HTML>"); 
       out.println("<BODY>");

       String number=request.getParameter("number");  //获取客户提交的信息。
       double n=0;
        try{ n=Double.parseDouble(number);
             out.println("<H1> factors of "+n+" :</H1>");
             //求n的全部因数:
             for(int i=1;i<=n;i++)
                 { if(n%i==0)
                   out.println(i);
                 }
           }
        catch(NumberFormatException e)
           { out.print("<H1>input number letter please! </H1>");
           } 
    }
  public  void  doGet(HttpServletRequest request,HttpServletResponse response) 
                        throws ServletException,IOException
    {  PrintWriter out=response.getWriter();
       response.setContentType("text/html;charset=GB2312");//设置响应的MIME类型。
       out.println("<HTML>"); 
       out.println("<BODY>");

       String number=request.getParameter("number");  //获取客户提交的信息。
       double n=0;
        try{ n=Double.parseDouble(number);
             out.println("<H1> Primnumbers less "+n+" :</H1>");
             //求小于n的全部素数:
             int j=1;
             for(int i=1;i<n;i++)
                 { for(j=2;j<i;j++)
                    {if(i%j==0)
                        break;
                    }
                   if(j>=i)
                    { out.println(i);
                    }
                 }
           }
        catch(NumberFormatException e)
           { out.print("<H1>input number letter please! </H1>");
           } 
      
    }
}

例子8
提交信息的JSP页面
Example9_8.jsp:
<HTML>
<BODY bgcolor=cyan><FONT size=1>
<%@ page contentType="text/html;charset=GB2312" %>
   <FORM action="examples/servlet/GetMessages" method=post name=form>
       <INPUT type="text" name="boy"> 
       <INPUT TYPE="submit" value="enter" name="submit">
   </FORM> 
</FONT>
</BODY>
</HTML>

处理HTTP请求头的sevlet源文件
GetMessages.java:
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class GetMessages  extends HttpServlet
{  
  public void init(ServletConfig config) throws ServletException
    {super.init(config);
    }
  public  void  doPost(HttpServletRequest request,HttpServletResponse response) 
                        throws ServletException,IOException
    {  //获得一个向客户发送数据的输出流:
       PrintWriter out=response.getWriter();
       response.setContentType("text/html;charset=GB2312");//设置响应的MIME类型。
       out.println("<HTML>"); 
       out.println("<BODY>");
       // 客户使用的协议是:
        out.println("<BR>Protocol:");
        String protocol=request.getProtocol();
        out.println(protocol);
        //获取接受客户提交信息的servlet:
        out.println("<BR>Accept servlet:");
        String path=request.getServletPath();
        out.println(path);
        //客户提交的信息的长度:
        out.println("<BR>message Length:");
        int length=request.getContentLength();
        out.println(length);
       // 客户提交信息的方式:
        out.print("<BR> Method:");
        String method=request.getMethod();
        out.println(method);
        //获取HTTP头文件中User-Agent的值:
        out.println("<BR> User-Agent:");
        String header1=request.getHeader("User-Agent");
        out.println(header1);
       //获取HTTP头文件中accept的值:
         out.println("<BR> accept:");
        String header2=request.getHeader("accept");
        out.println(header2);
       // 获取HTTP头文件中Host的值:
         out.println("<BR> Host:");
        String header3=request.getHeader("Host");
        out.println(header3);
       //获取HTTP头文件中accept-encoding的值:
        out.println("<BR> accept-encoding:");
        String header4=request.getHeader("accept-encoding");
        out.println(header4);
      //获取客户的IP地址:
        out.println("<BR> client IP:");
        String  IP=request.getRemoteAddr();
        out.println(IP);
      // 获取客户机的名称:
        out.println("<BR> client name:");
        String clientName=request.getRemoteHost();
        out.println(clientName);
      // 获取服务器的名称:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -