pathinfo?curl和pathinfo都开启
- 前端设计
- 2023-08-13
- 86
这篇文章给大家聊聊关于pathinfo,以及curl和pathinfo都开启对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。如何理解一个index.php页面的格...
这篇文章给大家聊聊关于pathinfo,以及curl和pathinfo都开启对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
如何理解一个index.php页面的格式
我们常用的是query形式的参数。例如?a=1&b=2还有一种是pathinfo形式的。例如/a/b/c这两种是可以混用的。例如index.php/a/b/c?a=1&b=2index.php是访问的网页文件。/index.html是参数,这个参数只是长得像文件名,但是它实际上是一种pathinfo
springmvc中@PathVariable和@RequestParam的区别
1、@PathVariable
当使用@RequestMappingURItemplate样式映射时,即someUrl/{paramId},这时的paramId可通过@Pathvariable注解绑定它传过来的值到方法的参数上。
示例代码:
@Controller
@RequestMapping("/owners/{ownerId}")
publicclassRelativePathUriTemplateController{
@RequestMapping("/pets/{petId}")
publicvoidfindPet(@PathVariableStringownerId,@PathVariableStringpetId,Modelmodel){
//implementationomitted
}
}
上面代码把URItemplate中变量ownerId的值和petId的值,绑定到方法的参数上。若方法参数名称和需要绑定的uritemplate中变量名称不一致,需要在@PathVariable("name")指定uritemplate中的名称。
2、@RequestHeader、@CookieValue
@RequestHeader注解,可以把Request请求header部分的值绑定到方法的参数上。
示例代码:
这是一个Request的header部分:
Hostlocalhost:8080
Accepttext/html,application/xhtml+xml,application/xml;q=0.9
Accept-Languagefr,en-gb;q=0.7,en;q=0.3
Accept-Encodinggzip,deflate
Accept-CharsetISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive300
@RequestMapping("/displayHeaderInfo.do")
publicvoiddisplayHeaderInfo(@RequestHeader("Accept-Encoding")Stringencoding,
@RequestHeader("Keep-Alive")longkeepAlive){
}
上面的代码,把requestheader部分的Accept-Encoding的值,绑定到参数encoding上了,Keep-Aliveheader的值绑定到参数keepAlive上。
@CookieValue可以把Requestheader中关于cookie的值绑定到方法的参数上。
例如有如下Cookie值:
JSESSIONID=415A4AC178C59DACE0B2C9CA727CDD84
参数绑定的代码:
@RequestMapping("/displayHeaderInfo.do")
publicvoiddisplayHeaderInfo(@CookieValue("JSESSIONID")Stringcookie){
}
即把JSESSIONID的值绑定到参数cookie上。
3、@RequestParam,@RequestBody
@RequestParam
A)常用来处理简单类型的绑定,通过Request.getParameter()获取的String可直接转换为简单类型的情况(String-->简单类型的转换操作由ConversionService配置的转换器来完成);因为使用request.getParameter()方式获取参数,所以可以处理get方式中queryString的值,也可以处理post方式中bodydata的值;
B)用来处理Content-Type:为application/x-www-form-urlencoded编码的内容,提交方式GET、POST;
C)该注解有两个属性:value、required;value用来指定要传入值的id名称,required用来指示参数是否必须绑定;
示例代码:
@Controller
@RequestMapping("/pets")
@SessionAttributes("pet")
publicclassEditPetForm{
@RequestMapping(method=RequestMethod.GET)
publicStringsetupForm(@RequestParam("petId")intpetId,ModelMapmodel){
Petpet=this.clinic.loadPet(petId);
model.addAttribute("pet",pet);
return"petForm";
}
@RequestBody
该注解常用来处理Content-Type:不是application/x-www-form-urlencoded编码的内容,例如application/json,application/xml等;
它是通过使用HandlerAdapter配置的HttpMessageConverters来解析postdatabody,然后绑定到相应的bean上的。
因为配置有FormHttpMessageConverter,所以也可以用来处理application/x-www-form-urlencoded的内容,处理完的结果放在一个MultiValueMap<String,String>里,这种情况在某些特殊需求下使用,详情查看FormHttpMessageConverterapi;
python中os的用法
在Python中,`os`是一个非常有用的库,它可以让我们进行操作系统相关的操作,如文件和目录操作、进程管理、环境变量等。
以下是`os`库的几个常用方法:
1.获取当前工作目录:`os.getcwd()`
```python
importos
cur_dir=os.getcwd()
print(cur_dir)
```
2.改变当前工作目录:`os.chdir(path)`
```python
importos
os.chdir('/Users/xxxx/Desktop')#改变当前工作目录到桌面路径
```
3.列出指定目录下的所有文件和目录:`os.listdir(path)`
```python
importos
dir_list=os.listdir("/Users/xxxx/Desktop")
print(dir_list)
```
4.创建单级目录:`os.mkdir(path)`
```python
importos
os.mkdir('/Users/xxxx/Desktop/test')#在桌面创建test文件夹
```
5.删除单级目录:`os.rmdir(path)`
```python
importos
os.rmdir('/Users/xxxx/Desktop/test')#删除桌面的test文件夹
```
6.获取文件属性:`os.stat(path)`
```python
importos
file_info=os.stat('/Users/xxxx/Documents/test.txt')#获取test.txt文件的属性信息
print(file_info)
```
7.删除文件:`os.remove(path)`
```python
importos
os.remove('/Users/xxxx/Documents/test.txt')#删除test.txt文件
```
8.重命名文件或目录:`os.rename(old_path,new_path)`
```python
importos
os.rename('/Users/xxxx/Downloads/test.txt','/Users/xxxx/Downloads/new_name.txt')#将test.txt文件重命名为new_name.txt文件
```
好了,以上是`os`库一些常用的方法,你可以根据自己的需求进行使用。
END,本文到此结束,如果可以帮助到大家,还望关注本站哦!
本文链接:http://www.xinin56.com/qianduan/9817.html