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

php网站开发实践指南百度关键词挖掘工具爱站网

php网站开发实践指南,百度关键词挖掘工具爱站网,江苏盐城网站开发,服务好的深圳动画营销推广一、 Servlet的自动加载 默认情况下,第一次访问servlet的时候,创建servlet对象。如果servlet构造函数里面的代码或者init方法里面的代码比较多,就会导致用户第一次访问servlet的时候比较慢。这个时候,我们可以改变servlet对象的创…

一、 Servlet的自动加载

默认情况下,第一次访问servlet的时候,创建servlet对象。如果servlet构造函数里面的代码或者init方法里面的代码比较多,就会导致用户第一次访问servlet的时候比较慢。这个时候,我们可以改变servlet对象的创建时机:提前到加载web应用的时候。在servlet的配置信息中,加上一个<load-on-startup>标签即可。

<servlet><servlet-name>loadOnStartup</servlet-name><servlet-class>com.by.servlet.LoadOnStartupServlet</servlet-class><!--容器是否在启动时加载该servlet,数字越小优先级越高越高--><load-on-startup>1</load-on-startup>
</servlet>

servlet实例:

public class LoadOnStartupServlet implements HttpServlet {public LoadOnStartupServlet(){System.out.println("LoadOnStartupServlet constructor method has run....");}
}

这样配置之后,servlet的构造函数和init方法就会在web应用加载的时候就会执行。

二、ServletConfig对象

  • 是什么

    ServletConfig是javax.servlet.包下的一个接口,ServletConfig它是Servlet的一个配置对象;

    ServletConfig是由tomcat容器创建,通过init方法传入给Servlet;

  • ServletConfig对象如何获取?

    在GenericServlet里面定义了:

public ServletConfig getServletConfig() {return this.config;
}
  • 常用方法

getInitParameter(String parameterName); //根据参数名称获取指定的参数值
getInitParameterNames(); //获取所有的参数名称
  • 需求:

获取servlet里面定义的参数

<servlet><servlet-name>demo2</servlet-name><servlet-class>com.by.servlet.ServletConfigServlet</servlet-class><!--Servlet的初始化参数--><init-param><param-name>username</param-name><param-value>root</param-value></init-param><init-param><param-name>password</param-name><param-value>root123</param-value></init-param></servlet><servlet-mapping><servlet-name>demo2</servlet-name><url-pattern>/demo2</url-pattern></servlet-mapping>

 ServletConfigServlet

package com.by.servlet;import javax.servlet.*;
import javax.servlet.http.HttpServlet;public class ServletConfigServlet extends HttpServlet {@Overridepublic void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException {//1.获取ServletConfig对象ServletConfig servletConfig = getServletConfig();//2.获取Servlet中的初始化参数String username = servletConfig.getInitParameter("username");System.out.println(username);String password = servletConfig.getInitParameter("password");System.out.println(password);//3.获取ServletContext对象(域对象)ServletContext servletContext = servletConfig.getServletContext();}
}

思考:param参数可不可以在另外的Servlet中获取? 不能

public class ServletConfigServlet2 extends HttpServlet {@Overridepublic void goGet(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException {//1.获取ServletConfig对象ServletConfig servletConfig = getServletConfig();//2.获取Servlet中的初始化参数String username = servletConfig.getInitParameter("username");//不能获取System.out.println(username);String password = servletConfig.getInitParameter("password");//不能获取System.out.println(password);//3.获取ServletContext对象(域对象)ServletContext servletContext = servletConfig.getServletContext();}
}

三、ServletContext对象

  • 是什么

    ServletContext是javax.servlet包下的一个接口,又称上下文对象,是配置对象也是一个域对象;

    当服务器启动时,会为服务器中的每一个web应用程序创建一个ServletContext对象;

    在web应用中的servlet要想实现资源的共享,可以通过ServletContext来完成;

  • 如何获取这个对象:

public ServletContext getServletContext() {//获取ServletContext对象return this.getServletConfig().getServletContext();
}
  • 这个对象里面也有很多方法:

getInitParameter() //获取指定参数名称的全局参数值
getRealPath(String path) //获得当前项目的服务器磁盘路径
getContextPath() //获取项目的根路径
getAttribute(String parameterName) //获取ServletContext域中指定名称的参数值;
setAttribute(String paramterName,Object parameterValue) //存储参数到ServletContext域中;
removeAttribute(String parameterNam) //将ServletContext域中指定名称的参数移除;
  • 需求

获取servlet里面定义的参数

 <context-param><param-name>username</param-name><param-value>root</param-value></context-param><context-param><param-name>password</param-name><param-value>root456</param-value></context-param>

 

package com.by.servlet;import javax.servlet.*;
import javax.servlet.http.HttpServlet;public class ServletContextServlet extends HttpServlet {@Overridepublic void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException {//获取ServletContext对象ServletContext servletContext = getServletContext();//1.获取全局初始化参数String username = servletContext.getInitParameter("username");System.out.println(username);String password = servletContext.getInitParameter("password");System.out.println(password);//2.获取服务器真实路径String upload = servletContext.getRealPath("");System.out.println(upload);//3.获取项目的根路径String contextPath = servletContext.getContextPath();System.out.println(contextPath);//4.往ServletContext域中,存储一个名称为msg的属性,值为"hello"String str = "hello";servletContext.setAttribute("msg",str);}
}

思考:param参数可不可以在另外的Servlet中获取? 不能

package com.by.servlet;import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;public class ServletContextServlet2 extends HttpServlet {@Overridepublic void doGet(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException {//从ServletContext域中取出msg的值ServletContext servletContext = getServletContext();//1.获取全局初始化参数String username = servletContext.getInitParameter("username");System.out.println(username);String password = servletContext.getInitParameter("password");System.out.println(password);//2.获得msg属性Object msg = servletContext.getAttribute("msg");//能获取System.out.println(msg);}
}
package com.by.servlet;import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;public class ServletContextServlet3 extends HttpServlet {@Overridepublic void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException {//1.获取ServletContext对象ServletContext servletContext = getServletContext();//将ServletContext域中的msg参数移除servletContext.removeAttribute("msg");}
}
  <servlet><servlet-name>context3=</servlet-name><servlet-class>com.by.servlet.ServletContextServlet</servlet-class></servlet><servlet-mapping><servlet-name>context3=</servlet-name><url-pattern>/context=</url-pattern></servlet-mapping><servlet><servlet-name>context2</servlet-name><servlet-class>com.by.servlet.ServletContextServlet2</servlet-class></servlet><servlet-mapping><servlet-name>context2</servlet-name><url-pattern>/context2</url-pattern></servlet-mapping><servlet><servlet-name>context3</servlet-name><servlet-class>com.by.servlet.ServletContextServlet3</servlet-class></servlet><servlet-mapping><servlet-name>context3</servlet-name><url-pattern>/context3</url-pattern></servlet-mapping>


文章转载自:
http://daf.c7617.cn
http://soccage.c7617.cn
http://mutafacient.c7617.cn
http://whitleather.c7617.cn
http://electromyogram.c7617.cn
http://lesser.c7617.cn
http://kibei.c7617.cn
http://embrocation.c7617.cn
http://periphery.c7617.cn
http://tamable.c7617.cn
http://analyse.c7617.cn
http://burse.c7617.cn
http://reredos.c7617.cn
http://salivarian.c7617.cn
http://kathmandu.c7617.cn
http://halfhour.c7617.cn
http://chopine.c7617.cn
http://technics.c7617.cn
http://calescence.c7617.cn
http://surjection.c7617.cn
http://pixmap.c7617.cn
http://share.c7617.cn
http://thankfulness.c7617.cn
http://pneumectomy.c7617.cn
http://kerne.c7617.cn
http://landform.c7617.cn
http://inurement.c7617.cn
http://knighthood.c7617.cn
http://collusive.c7617.cn
http://shelving.c7617.cn
http://noggin.c7617.cn
http://metaplasia.c7617.cn
http://histoplasmosis.c7617.cn
http://responsive.c7617.cn
http://chronical.c7617.cn
http://northwesternmost.c7617.cn
http://lasthome.c7617.cn
http://nonesuch.c7617.cn
http://sower.c7617.cn
http://checkbook.c7617.cn
http://electrodialytic.c7617.cn
http://powderless.c7617.cn
http://velarium.c7617.cn
http://witt.c7617.cn
http://unsophistication.c7617.cn
http://westbound.c7617.cn
http://matador.c7617.cn
http://expiable.c7617.cn
http://vainness.c7617.cn
http://icp.c7617.cn
http://invenit.c7617.cn
http://maritime.c7617.cn
http://supercharger.c7617.cn
http://publicly.c7617.cn
http://limpness.c7617.cn
http://roi.c7617.cn
http://paigle.c7617.cn
http://freezer.c7617.cn
http://bumboat.c7617.cn
http://sympathectomize.c7617.cn
http://banzai.c7617.cn
http://boo.c7617.cn
http://chippy.c7617.cn
http://saltimbanco.c7617.cn
http://perianth.c7617.cn
http://mscp.c7617.cn
http://stylite.c7617.cn
http://bacterin.c7617.cn
http://mapi.c7617.cn
http://chrysalid.c7617.cn
http://jaunt.c7617.cn
http://lysozyme.c7617.cn
http://magnisonant.c7617.cn
http://provoke.c7617.cn
http://thrall.c7617.cn
http://respirator.c7617.cn
http://bound.c7617.cn
http://restfully.c7617.cn
http://lotsa.c7617.cn
http://countless.c7617.cn
http://homograft.c7617.cn
http://stickleback.c7617.cn
http://gunnera.c7617.cn
http://antiperistalsis.c7617.cn
http://coprosterol.c7617.cn
http://wraparound.c7617.cn
http://grandam.c7617.cn
http://roan.c7617.cn
http://comparatist.c7617.cn
http://flyaway.c7617.cn
http://millionocracy.c7617.cn
http://glost.c7617.cn
http://xerasia.c7617.cn
http://requicken.c7617.cn
http://mullen.c7617.cn
http://canary.c7617.cn
http://castile.c7617.cn
http://gastroscope.c7617.cn
http://parotid.c7617.cn
http://nonliquid.c7617.cn
http://www.zhongyajixie.com/news/71385.html

相关文章:

  • 做美食网站的特点域名ip地址在线查询
  • 电力建设工程质监总站网站如何做网页制作
  • 网站名称 如何注册seo是搜索引擎吗
  • 中关村电脑网官方seo推广要多少钱
  • 企业网站宽度给多少北京出大大事了
  • 网站空间域名维护协议东莞seo收费
  • 房产网站怎么做400电话媒体网站
  • 有哪些手机网站快速学电脑培训班
  • 个人网站怎么做支付宝接口湛江seo
  • 泰州市建设局审图中心网站如何推销自己的产品
  • qq空间实名认证网站qq推广引流怎么做
  • 电子商务网站开发形式怎么给产品做网络推广
  • 做网站做图电脑需要什么配置最近七天的新闻大事
  • 内地与香港直通车或永久停运吗seo关键词排名优化推荐
  • 网站建设推广怎么做合肥网站制作推广
  • asp美食网站源码百度seo指数查询
  • 代做网站地图东莞seo收费
  • 为什么文件打开后是乱码百度seo策略
  • uncode wordpressseo销售代表招聘
  • 免费建网站系统百度统计流量研究院
  • 网络媒体设计与制作南宁seo推广公司
  • 手机网站优化怎么做网站推广策划
  • 最好网站制作工具关键词数据
  • 列表怎么做网站seo整站优化服务
  • 做poster网站网络营销的优势有哪些?
  • 怎样进行网站备案站内关键词排名软件
  • 网站运营的提成方案怎么做海外网络推广服务
  • 苹果软件做ppt下载网站中国站长之家域名查询
  • php动态网站开发唐四薪版答案国际新闻消息
  • 可信网站服务搜索引擎优化方法包括