首页 > 数据库 >ServletContext与静态变量(static)的区别,数据库连接池放在哪里

ServletContext与静态变量(static)的区别,数据库连接池放在哪里

时间:2023-01-30 09:57:02浏览次数:61  
标签:变量 静态 servletContext Session static ServletContext servlet 连接池

这种是放在static中,03_用servlet、request和Druid技术写登录案例   java——数据库连接池——druid_基本使用

这是放在ServletContext中,使用ServletContext缓存数据源   通过实现ServletContextListener接口创建数据库连接池(C3P0方式)

pageContext,Request,Session,servletContext,类变量,局部变量六个范围的区别:
1) Request: 保存的键值仅在同一个request范围中可以取回来。它的范围比Session和servletContext小,缺点是;因范围小无法取,比如访问了两次,第二次无法 取回第一次的,就只能想办法,比如用Session。优点:和Session和servletContext相比,用完就仍,省服务器内存。 
2) Session: 与每一个用户浏览器相对应。从Session第一次创建直到关闭,数据都一直保存在服务器内存,所以客户可以一直访问,不用每次都去数据库抓取,提高了性 能。缺点:每个客户的session不能像servletContext那样共享,可能造成大量重复数据;另外session技术建立在cookie和 url重写的基础上。为了让服务器能识别每一个用户浏览器,在来往过程中,需带上Session ID的信息,这样会用掉一点点网络带宽。当有很多用户访问服务器时,这是一笔不小的开销。
3)servletContext:   你的web应用从启动到关闭,这个对象一直有效。所有范围中,它最大。保存的数据可以被所有用户所有servlet访问。(servletContext和servlet的类变量的区别就是:servlet的类变量只能被本身这个servlet访问,不能被其它servlet访问。)优点:少访问数据库。缺点:不像Session一样私密。

 

Servlet里的ServletContext与类静态变量的区别
大家都知道Servlet里的ServletContext放数据是整个网站共享,而我用一个类定义一个静态变量,这个静态变量也可以被整个网站共享。
比如说,我现在要统计网站的访问人数,使用ServletContext可以,但其实我在Servlet里使用一个静态变量来做记录也可以,请问这两者的区别是什么?

------解决方案--------------------
静态变量是写在代码里的,如果需要修改,每次都要改源码,再重新编译。
ServletContext可以读取配置文件,就不需要重新编译了。

 

标签:变量,静态,servletContext,Session,static,ServletContext,servlet,连接池
From: https://www.cnblogs.com/bxf0011/p/17074504.html

相关文章

  • 解决stackoverflow.com网站下cdn.sstatic.net加载慢
    使用ReplaceGoogleCDN解决stackoverflow.com网站下cdn.sstatic.net资源加载慢起因:打开https://stackoverflow.com/tags/socat/hot?filter=all又出现打开很慢的情况了,一......
  • Compile Sqlite3 Executable, Static Library, and Shared Library on Linux
    DownloadSqlite3sourcecode,anddecompressittosomewhere.Enterthedecompressedfolder,typethefollowingcommandtogeneratedifferenttargetswithall......
  • 类内const与static修饰符总结
    const用处常数据成员const修饰类的成员变量,表示成员常量,不能被修改,同时它只能在初始化列表中赋值(c11中支持类中实始化)。可被const和非const成员函数调用,而不可以修改......
  • mt_Day5:static与继承
    static静态关键字1.static成员变量static+成员变量:该变量在内存中只存储一份,可以被共享访问、修改。静态成员变量的访问publicclassUser{/***例子:......
  • 【Javaweb】Servlet四 | ServletConfig类|ServletContext类
    ServletConfig类是Servlet程序的配置信息类。ServletConfig类的三大作用1、可以获取Servlet程序的别名servlet-name的值System.out.println("HelloServlet程序的别名"+s......
  • java static 静态变量
    目录视频链接javastaticstatic基础static修饰方法的应用场景工具类工具类实例javastatic应用注意事项null视频链接静态变量:https://www.bilibili.com/video/BV17F411T......
  • static的作用
    C语言中static的作用分类编程技术在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。(1)先来介绍它的第一条也是最重要的一条:隐藏。当我们同时编译......
  • static 函数中的静态变量
    函数中的静态变量当变量声明为static时,空间将在程序的生命周期内分配。即使多次调用该函数,静态变量的空间也只分配一次,前一次调用中的变量值通过下一次函数调用传递。这对......
  • C 语言局部 static 变量多线程 DataRace 验证
    验证局部静态变量staticintcnt在无锁情况下的datarace:测试C源码:#include<stdio.h>#include<pthread.h>#include<stdlib.h>void*foo(void*args){s......
  • 数据源和连接池的关系
    (106条消息)数据源与连接池关系_indieinside的博客-CSDN博客_数据源和连接池的关系  ......