c3p0连接池的使用
ngx_http_core模块提供的内置变量有很多,常见的有
$uri,用来获取当前请求的uri,不含请求参数。
$request_uri,用来获取请求最原始的uri,包含请求参数,且未解码。
$request,获取请求方法(GET或者POST)、$request_uri、HTTP协议版本。
$args,获取当前请求的参数串(即请求中问号后面的部分,如果有的话),未解码的原始值。$args变量是可以改变的,利用set指令即可 set $args a=1&b=2。需要注意的是,绝大部分的内置变量都不能改变,否则会发生意想不到的错误。
$arg_xxx(名字以arg_开头的所有的变量),用来获取请求参数的值。比如说$name,用来获取请求参数name的值,且是未解码的原始值。其实$arg_name不仅可以匹配name,还可以匹配NAME,甚至可以匹配Name,也就是说nginx匹配参数时是大小写不敏感的。
如果想对uri参数值中的%XX这样的编码序列进行解码,可以使用第三方set-misc-nginx-module模块提供的set_unescape_uri配置指令。
$cookie_xxx(名字以cookie_开头的所有的变量),用来获取cookie值。比如说$cookie_pasession,用来获取cookie中pasession的值,且是未解码的原始值。匹配同样是大小写不敏感
$http_xxx(名字以http_开头的所有的变量),用来获取请求头的值。比如说$http_user_agent,用来获取User-Agent请求头的值(如果请求头字符串中间有中横线,则变量中用下划线对应即可)。
$sent_http_xxx(名字以sent_http开头的所有变量),用来获取响应头的值。比如说$sent_http_connection,用来获取Connection响应头的值。$sent_http_content_type,用来获取Content-Type响应头的值(同请求头字符串的匹配一样,如果响应头字符串中间有中横线,变量中也是用下划线对应)
nginx某location块配置如下:
location /test {
echo $uri;
echo $request_uri;
echo $request;
echo $args;
echo $arg_name;
set_unescape_uri $decoded_name $arg_name;
echo $decoded_name;
echo $cookie_pasession;
echo $http_user_agent;
echo $sent_http_connection;
echo $sent_http_content_type;
}
这时如果在地址栏里输入的是xxx/test?name=张三&password=abc123,那么
$uri的值是/test,
$request_uri的值是/test?name=%E5%BC%A0%E4%B8%89&passsword=abc123,
$request的值是GET /test?name=%E5%BC%A0%E4%B8%89&passsword=abc123 HTTP1.1,
$args的值是name=%E5%BC%A0%E4%B8%89&passsword=abc123 HTTP1.1,
$arg_name的值是%E5%BC%A0%E4%B8%89
$decoded_name的值是张三
$cookie_pasession的值是qweasd123(用postman模拟的请求,并添加cookie,cookie key是pasession,cookie value是qweasd123)
$http_user_agent的值是Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36(浏览器不一样,具体值可能不一样)
$sent_http_connection的值是keep-alive
$sent_http_content_type的值是text/plain; charset=utf-8
内置变量还有很多很多,可以参考 https://www.cnblogs.com/luyucheng/p/6148242.html
c3p0连接池的使用的更多相关文章
- c3p0连接池]
<c3p0-config> <!-- 默认配置 --> <default-config> <property name="jdbcUrl" ...
- c3p0连接池获得的Connection执行close方法后是否真的销毁Connection对象?
问题描述: jfinal做的api系统中,在正常调用接口一段时间后,突然再调用接口的时候,该请求无响应api系统后台也无错误信息 (就是刚开始接口调用是正常的,突然就无响应了) 于是啊,就开始找错误. ...
- C3P0连接池在hibernate和spring中的配置
首先为什么要使用连接池及为什么要选择C3P0连接池,这里就不多说了,目前C3P0连接池还是比较方便.比较稳定的连接池,能与spring.hibernate等开源框架进行整合. 一.hibernate中 ...
- C3P0连接池问题,APPARENT DEADLOCK!!! Creating emergency..... [问题点数:20分,结帖人lovekong]
采用c3p0连接池,每次调试程序,第一次访问时(Tomcat服务器重启后再访问)都会出现以下错误,然后连接库需要很长时间,最终是可以连上的,之后再访问就没问题了,请高手们会诊一下,希望能帮小弟解决此问 ...
- HQL查询及Hibernate对c3p0连接池的支持
//HQL查询 // auto-import要设置true,如果是false,写HQL时要指定类的全名 //查询全部列 Query query = session.createQuery(" ...
- C3P0连接池详解及配置
C3P0连接池详解及配置 本人使用的C3P0的jar包是:c3p0-0.9.1.jar <bean id = "dataSource" class = "com.m ...
- 使用c3p0连接池
首先我们需要知道为什么要使用连接池:因为jdbc没有保持连接的能力,一旦超过一定时间没有使用(大约几百毫秒),连接就会被自动释放掉,每次新建连接都需要140毫秒左右的时间而C3P0连接池会池化连接,随 ...
- C3P0连接池详细配置
C3P0连接池详细配置 转自http://msq.javaeye.com/blog/60387 <c3p0-config> <default-config> <!--当连 ...
- Maven 工程下 Spring MVC 站点配置 (三) C3P0连接池与@Autowired的应用
Maven 工程下 Spring MVC 站点配置 (一) Maven 工程下 Spring MVC 站点配置 (二) Mybatis数据操作 前两篇文章主要是对站点和数据库操作配置进行了演示,如果单 ...
- Spring框架中 配置c3p0连接池 完成对数据库的访问
开发准备: 1.导入jar包: ioc基本jar jdbcTemplate基本jar c3p0基本jar 别忘了mysql数据库驱动jar 原始程序代码:不使用配置文件方式(IOC)生成访问数据库对象 ...
随机推荐
- ARC下面的对象被释放的bug
一般在ARC管理的方式之下,很难出现对象被过度释放的问题,下面是我将遇到的一个crash. * thread #: tid = , queue = , address=0x18) frame #: f ...
- NSRunLoop的利用
一.NSRunLoop的理解 在初学C语言编程的时候,经常会写一种控制台中的程序,程序启动黑色的输入框,等待用户的输入,输入一组数据之后程序继续往下执行程序在等待用户输入数据时会阻塞,这 ...
- 深入JVM锁机制2-Lock
前文(深入JVM锁机制-synchronized)分析了JVM中的synchronized实现,本文继续分析JVM中的另一种锁Lock的实现.与synchronized不同的是,Lock完全用Java ...
- Openjudge-计算概论(A)-取石子游戏
描述: 有两堆石子,两个人轮流去取.每次取的时候,只能从较多的那堆石子里取,并且取的数目必须是较少的那堆石子数目的整数倍.最后谁能够把一堆石子取空谁就算赢. 比如初始的时候两堆石子的数目是25和7 2 ...
- 1.编写一个Java应用程序,该程序中有3个类:Ladder、Circle和主类A。具体要求如下:Ladder类具有类型为double的上底、下底、高、面积属性,具有返回面积的功能,包括一个构造方法对上底、下底、高进行初始化。Circle类具有类型为double的半径、周长和面积属性,具有返回周长、面积的功能,包括一个构造方法对半径进行初始化。主类A用来测试类Ladder和类Circle的功能。
Ladder package com.hanqi.test; public class Ladder { //属性 double shangdi,xiadi,gao,mianji; //构造方法 La ...
- redhat 安装hadoop1.2.1伪分布式
完整安装过程参考:http://www.cnblogs.com/shishanyuan/p/4147580.html 一.环境准备 1.安装linux.jdk 2.下载hadoop2. ...
- HDU 5804 Price List
只需和总和比较即可. #pragma comment(linker, "/STACK:1024000000,1024000000") #include<cstdio> ...
- .NET下,关于文件夹权限设置的小细节
InheritanceFlags 指定哪些接受权限继承 InheritanceFlags.ContainerInherit 下级文件夹要继承权限. InheritanceFlags.None 下级文件 ...
- linux中tar 打包指定路径文件
linux中tar打包指定路径文件www.111cn.net 编辑:yahoo 来源:转载在linux系统中打包与解压文件我都可以使用tar命令来解决,只要使用不同的参数就可以实现不同的需要了,下面来 ...
- Chapter 2 Open Book——6
Last night I'd discovered that Charlie couldn't cook much besides friedeggs and bacon. 昨天晚上我终于发现查理除了 ...