当前位置: 首页 > news >正文

如何创建一个软件免费关键词优化工具

如何创建一个软件,免费关键词优化工具,mvc做的网站如何发布访问,网页设计公司济南兴田德润优惠吗Servlet处理请求过程 B/S请求响应模型 Servlet介绍 JSP是Servlet的一个成功应用,其子集。 JSP页面负责前台用户界面,JavaBean负责后台数据处理,一般的Web应用采用JSPJavaBean就可以设计得很好了。 JSPServletJavaBean是MVC Servlet的核心…

 Servlet处理请求过程

B/S请求响应模型

 Servlet介绍

JSP是Servlet的一个成功应用,其子集。

JSP页面负责前台用户界面,JavaBean负责后台数据处理,一般的Web应用采用JSP+JavaBean就可以设计得很好了。

JSP+Servlet+JavaBean是MVC

Servlet的核心思想:在服务器端创建能响应用户请求的对象,即Servlet对象。

Servlet类:属于javax.servlet.http包中的HttpServlet类的子类。

Servlet 与 JSP 内置对象

获得内置对象的方法

获得 out 对象

JSP 中的 out 对象,一般可以使用 doXXX 方法中的 response 参数获得

默认情况下,out 对象是无法打印中文

解决方法:response.setContentType("text/html;charset=gb2312");

获得 request 和 response 对象

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

//将 request 参数当成 request 对象使用

//将 response 参数当成 response 对象使用

获得 application 对象

   ServletContext application = this.get ServletContext();

//将 application 当成 application 对象来使用

配置环境

使用servlet的步骤:

1.配置 servlet-api.jar

2.编码 *.java

3.编译生成字节码文件 *.class

4.部署

5.调用

JDK 内置包中不包含编译servlet源文件需要HttpServlet、HttpServletRequest等类,因此,需要在环境变量中包含 servlet.jar,这个 jar 文件在 TOMCAT 安装目录的 common\lib 文件下,如果没有可以网上下载。

编辑 classpath,加入%CATALINA_HOME%\lib\servlet-api.jar

将servlet.jar文件拷贝到jdk安装目录的jdk\jre\lib\ext中

部署Servlet

Hello.java

package china.dalian;

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 request, HttpServletResponse response)  throws IOException

    {  response.setContentType(“text/html;charset=gb2312”);

       PrintWriter out = reponse.getWriter();

       out.println(“<html><body>”);

       out.println(“<h2>欢迎学习servlet</h2>”);

       out.println(“</body></html>”);

    }

将生成的字节码文件如 Hello.class 保存在Tomcat服务器 WEB-INF\classes 目录下对应包名文件中,包名为  pakage china.dalian 在具体的目录为

WEB-INF\classes\china\dalian

在Web根目录下编辑 web.xml 文件,对 Servlet 文件进行配置

servlet 节:如何生成该servlet

servlet-mapping节:如何调用该servlet

Servlet与JSP的区别

       Servlet是使用Java Servlet接口(API)运行在Web应用服务器上Java程序,其功能十分强大,它不但可以处理Http请求中的业务逻辑,而且还可以输出HTML代码来显示指定页面。

       JSP是一种在Servlet规范之上的动态网页技术,在JSP页面之中,同样可以编写业务逻辑处理Http请求,也可以通过HTML代码来编辑页面,在实现功能上,ServletJSP貌似相同,实质存在一定的区别,表现在以下方面:

1、角色不同

2、编程方法不同

3Servlet需要编译后运行

4、速度不同

Servlet技术特点

       Servlet使用Java语言编写,它不仅继承了Java语言中的优点,而且Servlet还对Web的相关应用进行了封装,同时Servlet容器还提供了对应用的相关扩展,无论是在功能、性能、安全等方面都十分优秀,其技术特点表现在以下方面。

1、功能强大

2、可移植

3、性能高效

4、安全性高

5、可扩展

Servlet代码结构

       在Java中,通常所说的Servlet是指HttpServlet对象,在声明一个对象为Servlet时,需要继承HttpServlet类。

        HttpServlet类是Servlet接口的一个实现类,继承此类后,可以重写HttpServlet类中的方法对HTTP请求进行处理。 Servlet 工作原理-生命周期 

Servlet 工作原理-对象模型  Servlet 工作原理

n init 方法

public void init ( ServletConfig config ) throws ServletException

n service 方法

public void service ( HttpServletRequest request HttpServletResponse response ) throw ServletException, IOException

n destroy 方法

public destroy ( )n

init方法

<web-app>

  …

  <servlet> 

      <servlet-name>InitExample</servlet-name>

      <servlet-class>ServletInit</servlet-class>

  <init-param>

        <param-name>login</param-name>

        <param-value>snoopy</param-value>

      </init-param>

    </servlet>

            …

</web-app>

      对于web.xml中定义的param变量,可以通getInitParameter()  方法来获得。具体格式为:

String str = getInitParameter(“xxx”);

n service方法
n destroy 方法
n

     Servlet类可以直接继承这个方法,一般不需要重写。

         

            public destroy()

 共享变量

        Servlet中声明的某些成员变量,会被所有请求该servlet的用户共享。

  servlet共享变量来计算pi的值。

     PI/4 = 1 - 1/3 + 1/5 - 1/7 + 1/9 - 1/11 ……

  doGetdoPost方法

        服务器接收到用户请求后,调用service方法检查http的请求类型(如getpost),并在service方法中根据用户的请求方式,对应地调用doGetdoPost方法。

         因此,不必重写service方法,可直接继承service方法,在servlet类中重写doPostdoGet方法达到同样的效果。

 重定向与转发

 重定向

        HttpServletResponse类中通过方法

void sendRedirect(java.lang.String location) 可实现页面的跳转。

      response.sendRedirect (“xxx.jsp”);

注意:该方法跳转后的页面,不能获得之前页面用户提交的数据。

 转发

        RequestDispatcher对象可以把用户对当前的JSP页面或servlet的请求转发给另一个JSP页面或servlet,并且将请求对象和相应对象传递给目标页面。

第一步:得到RequestDispatcher对象:

RequestDispatcher  rd = request.getRequestDispatcher(“xxx.jsp”);

第二步:转发:

    rd.forward( request, response);

转发 vs 重定向

m 默认情况下 , SendRedirect 不会保留请求对象中参数;需要保存请求的相关信息时要用 请求转发
m SendRedirect 会在客户端呈现跳转后的 URL 地址 请求转发 完全是在服务器上进行,浏览器地址栏中的地址保持不变
m 请求转发 不能将请求发到其他的 web 应用上 SendRedirect 可以
使用session

        HttpServletRequest对象可以调用getSession方法获取用户的session对象。该session对象即第四章中的session对象。

格式:

HttpSession session = request.getSession(true);

       可以在servlet中使用session对象及其方法,实现对同一用户的确认。

Servlet API编程常用接口和类

Servlet接口

方    法    说    明
public void init(ServletConfig config)    Servlet实例化后,Servlet容器调用此方法来完成初始化工作
public void service(ServletRequest request,ServletResponse response)    此方法用于处理客户端的请求
public void destroy()    当Servlet对象应该从Servlet容器中移除时,容器调用此方法,以便释放资源
public ServletConfig getServletConfig()    此方法用于获取Servlet对象的配置信息,返回ServletConfig对象
public String getServletInfo()    此方法返回有关Servlet的信息,它是纯文本格式的字符串,如作者、版本等

m 创建一个 servlet ,实现向客户端输出一个字符串

ServletConfig接口

方    法    说    明
public String getInitParameter(String name)    此方法返回String类型名称为name的初始化参数值
public Enumeration getInitParameterNames()    获取所有初始化参数名的枚举集合
public ServletContext getServletContext()    用于获取Servlet上下文对象
public String getServletName()    返回Servlet对象的实例名

HttpServletRequest接口

方    法    说    明
public String getContextPath()    返回请求的上下文路径,此路径以“/”开关
public Cookie[] getCookies()    返回请求中发送的所有cookie对象,返回值为cookie数组
public String getMethod()    返回请求所使用的HTTP类型,如get、post等
public String getQueryString()    返回请求中参数的字符串形式,如请求MyServlet?username=mr,则返回username=mr
public String getRequestURI()    返回主机名到请求参数之间部分的字符串形式
public StringBuffer getRequestURL()    返回请求的URL,此URL中不包含请求的参数。注意此方法返回的数据类型为StringBuffer
public String getServletPath()    返回请求URI中的Servlet路径的字符串,不包含请求中的参数信息
public HttpSession getSession()    返回与请求关联的HttpSession对象

HttpServletResponse接口

方    法    说    明
public void addCookie(Cookie cookie)    向客户端写入cookie信息
public void sendError(int sc)    发送一个错误状态码为sc的错误响应到客户端
public void sendError(int sc, String msg)    发送一个包含错误状态码及错误信息的响应到客户端,参数sc为错误状态码,参数msg为错误信息
public void sendRedirect(String location)    使用客户端重定向到新的URL,参数location为新的地址

HttpServlet类

      GenericServlet类实现了javax.servlet.Servlet接口,为程序的开发提供了方便;但在实际开发过程中,大多数的应用都是使用Servlet处理HTTP协议的请求,并对请求作出响应,所以通过继承GenericServlet类仍然不是很方便。javax.servlet.http.HttpServlet类对GenericServlet类进行了扩展,为HTTP请求的处理提供了灵活的方法。

     public abstract class HttpServlet

  extends GenericServlet implements Serializable

GenericServlet

       Servlet创建

      在编写一个Servlet对象时,必须实现javax.servlet.Servlet接口,但在Servlet接口中包含5个方法,也就是说创建一个Servlet对象要实现这5个方法,这样操作非常不方便。javax.servlet.GenericServlet类简化了此操作,实现了Servlet接口。

       public abstract class GenericServlet

  extends Object

  implements Servlet, ServletConfig,   Serializable        

      Servlet的创建十分简单,主要有两种创建方法。第一种方法为创建一个普通的Java类,使这个类继承HttpServlet类,再通过手动配置web.xml文件注册Servlet对象。此方法操作比较繁琐,在快速开发中通常不被采纳,而是使用第二种方法——直接通过IDE集成开发工具进行创建。

     使用集成开发工具创建Servlet非常方便,下面以Eclipse为例介绍Servlet的创建过程,其他开发工具大同小异。

Servlet配置

       要使Servlet对象正常地运行,需要进行适当的配置,以告知Web容器哪一个请求调用哪一个Servlet对象处理,对Servlet起到一个注册的作用。Servlet的配置包含在web.xml文件中,主要通过以下两步进行设置。

            (1)声明Servlet对象

            2)映射Servlet

m    创建名为 MyServlet 对象,继承了 HTTPServlet 类,重写 doGet()方法
总结概括 Servlet的生命周期
m 1 . 客户端向服务器 发出请求 ,服务器根据客户端的请求,找到相应的 Servlet
m 2. 判断该 Servlet 是否在内存中加载?若未加载,创建该 Servlet 实例,调用 init() 方法完成 初始化操作 若已经加载,转 3
m 3. 调用 service() 方法对客户端进行 响应 。等待下一次请求 Servlet 生命周期中, service() 方法是其中的核心。每当客户端向 Servlet 发出一个请求时,该方法就会被调用 , 对用户的请求进行处理,并返回响应。
m 4. 结束,调用 destroy() 方法 当服务器端不再需要该 Servlet 的时候,服务器调用 destroy() 方法卸载 Servlet ,释放 Servlet 运行时占用的资源。
http://www.zhongyajixie.com/news/60941.html

相关文章:

  • 唐山网站专业制作深圳全网信息流推广公司
  • 基于jsp的社团组织网站建设百度seo收录软件
  • 做外贸方面的网站抖音营销
  • 行业门户网站程序seo网站推广多少钱
  • 辽宁省住房和城乡建设委员会网站百度seo排名优化联系方式
  • 分析网站建设google搜索引擎
  • 如何做淘客网站青岛关键词排名哪家好
  • 提供信息门户网站建设哪些网站有友情链接
  • 网站建设公司专业网站开发制作品牌网站建设
  • 门户网站 费用深圳网络营销推广外包
  • 个人公众号做电影网站吗站长工具备案查询
  • 单页面网站好优化吗长沙seo搜索
  • ic商城网站建设网络广告投放网站
  • 什么网站可以在图上做日历百度关键词点击器
  • 用v9做的网站上传服务器教育培训机构排名前十
  • 一个web网站开发的整个流程网络营销案例具体分析
  • 网站怎样做货到付款seo报名在线咨询
  • 杭州 企业门户网站建设正规赚佣金的平台
  • 用html做的生日祝福网站seo怎么做排名
  • 学校网站建设重要性游戏搜索风云榜
  • 到那个网站做翻译接单seo搜索引擎优化实训总结
  • 国内十大网站建设公司公司网站搭建
  • wordpress怎么修改网页百度seo推广计划类型包含
  • 济南做html5网站建设广州网站运营专业乐云seo
  • 东莞高端做网站抖音广告推广
  • 凡科做的网站可以在百度搜到吗山东疫情最新消息
  • 网络营销推广方法包括哪些优化 英语
  • 网页截图快捷键东莞seo网络优化
  • 域名网站建设网站搜索关键词优化
  • 大型网站解决方案设计seo专家是什么意思