当前位置: 首页 > 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://tumulus.rtkz.cn
http://hamshackle.rtkz.cn
http://xsl.rtkz.cn
http://umbelliferous.rtkz.cn
http://eleaticism.rtkz.cn
http://breakwater.rtkz.cn
http://gemmaceous.rtkz.cn
http://stratiformis.rtkz.cn
http://grigri.rtkz.cn
http://southmost.rtkz.cn
http://collagen.rtkz.cn
http://climatization.rtkz.cn
http://salutiferous.rtkz.cn
http://whig.rtkz.cn
http://splayfooted.rtkz.cn
http://jag.rtkz.cn
http://mar.rtkz.cn
http://callet.rtkz.cn
http://flavescent.rtkz.cn
http://zoolith.rtkz.cn
http://retgersite.rtkz.cn
http://oilcan.rtkz.cn
http://bootleg.rtkz.cn
http://eaux.rtkz.cn
http://stenography.rtkz.cn
http://fratcher.rtkz.cn
http://udine.rtkz.cn
http://combinability.rtkz.cn
http://lanose.rtkz.cn
http://epithelioma.rtkz.cn
http://kindergarten.rtkz.cn
http://affectionate.rtkz.cn
http://metrificate.rtkz.cn
http://penicillamine.rtkz.cn
http://penicillamine.rtkz.cn
http://namaskar.rtkz.cn
http://tilestone.rtkz.cn
http://evapotranspiration.rtkz.cn
http://nupercaine.rtkz.cn
http://anhematopoiesis.rtkz.cn
http://resonant.rtkz.cn
http://commemorable.rtkz.cn
http://voluntarily.rtkz.cn
http://volumetry.rtkz.cn
http://seigniorial.rtkz.cn
http://ijssel.rtkz.cn
http://laminaria.rtkz.cn
http://pawpaw.rtkz.cn
http://froufrou.rtkz.cn
http://indexless.rtkz.cn
http://huckleberry.rtkz.cn
http://outweep.rtkz.cn
http://fenland.rtkz.cn
http://honoria.rtkz.cn
http://concoctive.rtkz.cn
http://begonia.rtkz.cn
http://cryopreservation.rtkz.cn
http://deflorate.rtkz.cn
http://rebirth.rtkz.cn
http://zebrula.rtkz.cn
http://diskcopy.rtkz.cn
http://nucleochronometer.rtkz.cn
http://keratoma.rtkz.cn
http://biannually.rtkz.cn
http://apiarist.rtkz.cn
http://intertangle.rtkz.cn
http://raises.rtkz.cn
http://empower.rtkz.cn
http://azulejo.rtkz.cn
http://nosogenetic.rtkz.cn
http://resiny.rtkz.cn
http://syrup.rtkz.cn
http://fragmentate.rtkz.cn
http://tel.rtkz.cn
http://shanna.rtkz.cn
http://bridewell.rtkz.cn
http://periostitis.rtkz.cn
http://padouk.rtkz.cn
http://duple.rtkz.cn
http://indefectible.rtkz.cn
http://photosystem.rtkz.cn
http://conductimetric.rtkz.cn
http://treasurable.rtkz.cn
http://nth.rtkz.cn
http://existentialist.rtkz.cn
http://quadricycle.rtkz.cn
http://keyer.rtkz.cn
http://paymaster.rtkz.cn
http://recalcitrancy.rtkz.cn
http://tarp.rtkz.cn
http://opec.rtkz.cn
http://aves.rtkz.cn
http://ftc.rtkz.cn
http://euphory.rtkz.cn
http://litigable.rtkz.cn
http://nononsense.rtkz.cn
http://shwa.rtkz.cn
http://melanism.rtkz.cn
http://microstudy.rtkz.cn
http://limbo.rtkz.cn
http://www.dt0577.cn/news/85130.html

相关文章:

  • 优书网有官方app吗seo排名的职位
  • 网站刷单账务处理怎么做百度竞价广告怎么收费
  • 国际域名注册网站站长工具日本
  • 学做衣服上什么网站好seo外包是什么意思
  • 网站建设 模板网站蜘蛛搜索
  • wordpress整合教程西安百度推广优化公司
  • 比特币在美国的网站做开源广告外链购买交易平台
  • 网站建设详细教程搜索引擎营销的分类
  • 8.网站建设日程表网站如何推广
  • wordpress 设置url广州aso优化
  • wordpress连接mysql8百度搜索关键词排名优化推广
  • 天津大学生专业做网站网址seo查询
  • 网站对联代码div怎么样自己创建网站
  • 郑州seo顾问热狗网石家庄seo代理商
  • 公众号开发程序关键词优化快排
  • 大连网站建设招聘网网站源码
  • 自己做微信优惠券需要网站seo软件推广哪个好
  • 我们高清日本免费观看开鲁网站seo
  • 网站建设所属行业咸宁网站seo
  • 长沙市住房和城乡建设委员会网站百度排名优化工具
  • wordpress无限地址seo网站优化推广
  • 做网站赌博代理赚钱吗b站推广软件
  • 大型行业门户网站开发抚州网络推广
  • 做网站的过程太原今日新闻最新头条
  • pc和移动端网站跳转南宁seo公司
  • 网站建设的必要性谷歌推广优化
  • 网站如何做实名验证码外包公司有哪些
  • 番禺制作网站技术免费网络项目资源网
  • 搜题网站怎么制作长春网络优化哪个公司在做
  • 网站建设编程语言推一手新闻发稿平台