urlpatterns参数

servlet:

*.action
这个标签用于设置访问地址就是这个文件在电脑里存的位置

这个是配置前台提交请求的参数,*是通配符,表示所有的,.action是后缀名,比如:
localhost:8080一般是访问的地址,我这里用的是本机也就是localhost,user表示项目名,login.action表示请求,这样就可以通过上面的配置在struts配置文件中找到名为login的action动作

servlet3.0以下的规范什么意思

servlet3.0规范:(配置文件可以看出)
1.1版本要求
jdk1.6+
tomcate7.0+
1.2增加内容:看规范
1.2.1增加注解支持
@WebServlet。 用于将一个类声明为 Servlet,该注解将会在部署时被容器处理,容器将根据具体的属性配置将相应的类部署为 Servlet。
该注解具有下表给出的一些常用属性(以下所有属性均为可选属性,但是 vlaue 或者 urlPatterns 通常是必需的,且二者不能共存,如果
同时指定,通常是忽略 value 的取值):
表 1. @WebServlet 主要属性列表
属性名 类型
描述
name String
指定 Servlet 的 name 属性,等价于 《servlet-name》。如果没有显式指定,则该 Servlet 的取值即为类的全限定名。
value String
该属性等价于 urlPatterns 属性。两个属性不能同时使用。
urlPatterns String 指定一组 Servlet 的 URL 匹配模式。等价于 《url-pattern》 标签。
loadOnStartup int 指定 Servlet 的加载顺序,等价于 《load-on-startup》 标签。
initParams WebInitParam 指定一组 Servlet 初始化参数,等价于 《init-param》 标签。
asyncSupported
boolean 声明 Servlet 是否支持异步操作模式,等价于 《async-supported》 标签。
description String 该 Servlet 的描述信息,等价于 《description》 标签。
displayName String 该 Servlet 的显示名,通常配合工具使用,等价于 《display-name》 标签。
下面是一个简单的示例:
@WebServlet(urlPatterns = {“/simple“}, asyncSupported = true,
loadOnStartup = -1, name = “SimpleServlet“, displayName = “ss“,
initParams = {@WebInitParam(name = “username“, value = “tom“)}
)
public class SimpleServlet extends HttpServlet{ … }
如此配置之后,就可以不必在 web.xml 中配置相应的 《servlet》 和 《servlet-mapping》 元素了,容器会在部署时根据指定的属性将该类发布为 Servlet。
它的等价的 web.xml 配置形式如下:
《servlet》
《display-name》ss《/display-name》
《servlet-name》SimpleServlet《/servlet-name》
《servlet-class》footmark.servlet.SimpleServlet《/servlet-class》
《load-on-startup》-1《/load-on-startup》
《async-supported》true《/async-supported》
《init-param》
《param-name》username《/param-name》
《param-value》tom《/param-value》
《/init-param》
《/servlet》
《servlet-mapping》
《servlet-name》SimpleServlet《/servlet-name》
《url-pattern》/simple《/url-pattern》
《/servlet-mapping》
@WebInitParam
该注解通常不单独使用,而是配合 @WebServlet 或者 @WebFilter 使用。它的作用是为 Servlet 或者过滤器指定初始化参数,这等价于 web.xml 中 《servlet》
和 《filter》 的 《init-param》 子标签。@WebInitParam 具有下表给出的一些常用属性:
表 2. @WebInitParam 的常用属性
属性名 类型
是否可选 描述
name String
否 指定参数的名字,等价于 《param-name》。
value String
否 指定参数的值,等价于 《param-value》。
description String 是 关于参数的描述,等价于 《description》。
@WebFilter
@WebFilter 用于将一个类声明为过滤器,该注解将会在部署时被容器处理,容器将根据具体的属性配置将相应的类部署为过滤器。该注解具有下表给出的一
些常用
属性 ( 以下所有属性均为可选属性,但是 value、urlPatterns、servletNames 三者必需至少包含一个,且 value 和 urlPatterns 不能共存,如果同时指定,通
常忽略 value 的取值 ):
表 3. @WebFilter 的常用属性
属性名 类型
描述
filterName String 指定过滤器的 name 属性,等价于 《filter-name》
value String
该属性等价于 urlPatterns 属性。但是两者不应该同时使用。
urlPatterns String 指定一组过滤器的 URL 匹配模式。等价于 《url-pattern》 标签。
servletNames String 指定过滤器将应用于哪些 Servlet。取值是 @WebServlet 中的 name 属性的取值,是 web.xml 中 《servlet-name》 的取值。
dispatcherTypes
DispatcherType 指定过滤器的转发模式。具体取值包括:
ASYNC、ERROR、FORWARD、INCLUDE、REQUEST。
initParams WebInitParam 指定一组过滤器初始化参数,等价于 《init-param》 标签。
asyncSupported
boolean 声明过滤器是否支持异步操作模式,等价于 《async-supported》 标签。
description String 该过滤器的描述信息,等价于 《description》 标签。
displayName String 该过滤器的显示名,通常配合工具使用,等价于 《display-name》 标签。
下面是一个简单的示例:
@WebFilter(servletNames = {“SimpleServlet“},filterName=“SimpleFilter“)
public class LessThanSixFilter implements Filter{…}
等价于web.xml中一下文件:
《filter》
《filter-name》SimpleFilter《/filter-name》
《filter-class》xxx《/filter-class》
《/filter》
《filter-mapping》
《filter-name》SimpleFilter《/filter-name》
《servlet-name》SimpleServlet《/servlet-name》
《/filter-mapping》
@WebListener
该注解用于将类声明为监听器,被 @WebListener 标注的类必须实现以下至少一个接口:
• ServletContextListener
• ServletContextAttributeListener
• ServletRequestListener
• ServletRequestAttributeListener
• HttpSessionListener
• HttpSessionAttributeListener
表 4. @WebListener 的常用属性
属性名 类型
是否可选 描述
value String
是 该监听器的描述信息。
例子:
@WebListener(“This is only a demo listener“)
public class SimpleListener implements ServletContextListener{…}
等价于:
《listener》
《listener-class》footmark.servlet.SimpleListener《/listener-class》
《/listener》
@MultipartConfig
该注解主要是为了辅助 Servlet 3.0 中 HttpServletRequest 提供的对上传文件的支持。该注解
标注在 Servlet 上面,以表示该 Servlet 希望处理的请求的 MIME 类型是 multipart/form-data。
另外,它还提供了若干属性用于简化对上传文件的处理。具体如下:
表 5. @MultipartConfig 的常用属性
属性名 类型
是否可选 描述
fileSizeThreshold
int 是 当数据量大于该值时,内容将被写入文件。
location String 是 存放生成的文件地址。
maxFileSize long 是 允许上传的文件最大值。默认值为 -1,表示没有限制。
maxRequestSize
long 是 针对该 multipart/form-data 请求的最大数量,默认值为 -1,表示没有限制。
1.2.2增加文件上传下载支持:增加Part类,其实是fileUpload类的封装
@WebServlet(urlPatterns = {“/servletDemo1“}, asyncSupported = true,
loadOnStartup = -1, name = “SimpleServlet“, displayName = “ss“
)
@MultipartConfig
public class ServletDemo1 extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//response.getOutputStream().write(“ss“.getBytes());
Part part = request.getPart(“file“);
String name = part.getName();
String filename = name.substring(name.lastIndexOf(“\\“)+1, name.length()-1);
part.write(filename);
}
《form action=“${pageContext.request.contextPath}/servletDemo1“ method=“post“ enctype=“multipart/form-data“》《!–form表单记得添加en..–》
《input type=“text“ name=“input“ /》《br》
《input type=“file“ name =“file“》《br》
《input type=“submit“ value=“submit“》
《/form》
1.2.3增加通过servletContext初始化servlet、filter
待学
1.2.4增加异步处理支持(暂时无用,使用Ajax)
1.2.5增加可插性:
使用该特性,现在我们可以在不修改已有 Web 应用的前提下,只需将按照一定格式打成的 JAR 包放到 WEB-INF/lib 目录下,即可实现新功能的扩充,不需要额外 的配置。Servlet 3.0 引入了称之为“Web 模块部署描述符片段”的 web-fragment.xml 部署描述文件,该文件必须存放在 JAR 文件的 META-INF 目录下,该部署描述 文件可以包含一切可以在 web.xml 中定义的内容。JAR 包通常放在 WEB-INF/lib 目录下,除此之外,所有该模块使用的资源,包括 class 文件、配置文件等,只需 要能够被容器的类加载器链加载的路径上,比如 classes 目录等。
现在,为一个 Web 应用增加一个 Servlet 配置有如下三种方式 ( 过滤器、监听器与 Servlet 三者的配置都是等价的,故在此以 Servlet 配置为例进行讲述,过滤器 和监听器具有与之非常类似的特性 ):
• 编写一个类继承自 HttpServlet,将该类放在 classes 目录下的对应包结构中,修改 web.xml,在其中增加一个 Servlet 声明。这是最原始的方式;
• 编写一个类继承自 HttpServlet,并且在该类上使用 @WebServlet 注解将该类声明为 Servlet,将该类放在 classes 目录下的对应包结构中,无需修改 web.xml 文件。
• 编写一个类继承自 HttpServlet,将该类打成 JAR 包,并且在 JAR 包的 META-INF 目录下放置一个 web-fragment.xml 文件,该文件中声明了相应的 Servlet 配 置。web-fragment.xml 文件
web-fragment.xml 文件示例如下:
《?xml version=“1.0“ encoding=“UTF-8“?》
《web-fra一个简单的示例如下:
《web-fragment…》
《name》FragmentA《/name》
《ordering》
《after》
《name》FragmentB《/name》
《name》FragmentC《/name》
《/after》
《before》
《others/》
《/before》
《/ordering》

《/web-fragment》

swagger post参数怎么放

1.下载:
pip install django-rest-swagger
2.快速搭建:
1)在Django的settings.py中:
INSTALLED_APPS = [
    …
    ’rest_framework_swagger’,
    …
]
2)在urls.py中:
from rest_framework_swagger.views import get_swagger_view
schema_view = get_swagger_view(title=’Pastebin API’) #其中title=’Pastebin API’为改rest api显示集合的名字(可自定义)
urlpatterns = [
 ……
 url(r’^$’, schema_view)
 ……
]

springmvc中url-url-pattern /和/*的区别

1、《url-pattern》/《/url-pattern》 会匹配到/login这样的路径型url,不会匹配到模式为*.jsp这样的后缀型url
2.《url-pattern》/*《/url-pattern》 会匹配所有url:路径型的和后缀型的url(包括/login,*.jsp,*.js和*.html等)
3、url-pattern详解
在web.xml文件中,以下语法用于定义映射:
1) 以”/’开头和以”/*”结尾的是用来做路径映射的。
2) 以前缀”*.”开头的是用来做扩展映射的。
3)“/” 是用来定义default servlet映射的。
4)剩下的都是用来定义详细映射的。比如: /aa/bb/cc.action
所以,为什么定义”/*.action”这样一个看起来很正常的匹配会错?因为这个匹配即属于路径映射,也属于扩展映射,导致容器无法判断。

mim与mos有什么区别,分别在什么情况下使用

mim与mos有什么区别,分别在什么情况下使用
所有URLconf例子中,我们使用的很简单,即“无命名”正则表达式组,在我们
想要捕获的URL部分加上小括号,django会将捕获的文本作为位置参数传递给视图函数。在更
高级的用法中,还可以使用“命名”正则表达式组来捕获URL,并且将其作为“关键字”参数 传给视图。
在python正则表达式中,命名的正则表达式组的语法是(?p《name》pattern),这里name是组的名字,而pattern是匹配的某个模式。
下面是一个使用无名组的URLconf的例子:
from django.conf.urls.defaults import *
from mysite import views
urlpatterns = patterns(’’,
(r’^arcticles/(\d{4})/$’,views.year_archive),
(r’^arcticles/(\d{4})/(\d{2})/$’, view.moth_archive),
)
下面是相同的URLconf,使用命名组进行了重写:
from django.conf.urls.defaults import *
from mysite import views
urlpatterns = patterns(’’,
(r’^arcticles/(?P《year》\d{4})/$’, veiws.year_archive),
(r’^arcticles/(?P《year》\d{4})/(?P《month》\d{2})/$’, veiws.month_archive),
)
如果不带命名组,请求/arcticle/2006/03/将会等于这样的函数调用:
month_archive(request, ’2006’, ’03’)
而带命名组,同样的请求就是这样的函数调用:
month_archive(request, year=’2006’, month=’03’)
从中可以看出,使用命名组可以让你的URLconf更加清晰,减少参数次序可能搞混潜在的Bug,
还可以让你的定义中对参数重新排序。

filter过滤器url-pattern如何设定

filter的url-pattern的设置、多个url-pattern
当前报表采用如下filter处理ec的excel导出,并且这个filter被封装好了的《filter》《filter-name》eXtremeExport《/filter-name》《filter-class》org.extremecomponents.table.filter.ExportFilter《/filter-class》《/filter》《filter-mapping》《filter-name》eXtremeExport《/filter-name》《url-pattern》*.report《/url-pattern》《/filter-mapping》
有其它页面也用到了ec,也需要导出excel,但是后缀以action结尾,且只有2个特别的url(“action1.action“、“action2.action“)需要导出excel,尝试这么写不行《filter-mapping》《filter-name》eXtremeExport《/filter-name》《url-pattern》action1.action《/url-pattern》《/filter-mapping》这么写可以
《filter》《filter-name》drpEcExportFilter《/filter-name》《filter-class》com.common.filter.DrpEcExportFilter《/filter-class》《/filter》《filter-mapping》《filter-name》drpEcExportFilter《/filter-name》《url-pattern》*.action《/url-pattern》《/filter-mapping》《filter-mapping》《filter-name》drpEcExportFilter《/filter-name》《url-pattern》*.multidimensionalreport《/url-pattern》《/filter-mapping》但是不够精确
于是采用继承的方式共享.DrpEcExportFilter,而url的处理由自己控制《filter-name》drpEcExportFilter《/filter-name》《filter-class》com.common.filter.DrpEcExportFilter《/filter-class》《/filter》《filter-mapping》《filter-name》drpEcExportFilter《/filter-name》《url-pattern》*.action《/url-pattern》《/filter-mapping》
其中DrpEcExportFilter.java的代码——————————————————————————————————-package com.common.filter;import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import java

{{ item.name }}里面的’app1:tem.href’怎么改一下

url这个tags的用法是这样的
{% url path.to.some_view arg1,arg2,name1=value1 %}
第一个变量是按package.package.module.function形式给出的指向一个view函数的路径。那些可选的、用逗号分隔的附加参数被用做URL中的位置和关键词变量。所有URLconf需要的参数都应该是存在的。
例如,假设你有一个view,app_name.client,它的URLconf包含一个client ID参数。URLconf对应行可能看起来像这样:
(’^client/(\d+)/$’, ’app_name.client’)
如果这个应用的URLconf像下面一样被包含在项目的URLconf里:
(’^clients/’, include(’project_name.app_name.urls’))
那么,在模板中,你可以像这样创建一个指向那个view的link连接:
{% url app_name.client client.id %}

在web.xml的配置文件中url-pattern具体表示什么意思

首先要知道 web.xml 中url-pattern的作用,他是给外部提供的一个访问DoGetDemo类的接口
你可以自己随意定义,然后在IE里面写入这个配置内容。
可以看我给你写的一个例子图片,应该一下就看懂的
用 SimpleHello.java

配置servlet时

的作用是

首先要知道url-pattern是什么,为什么要设置,不设置有什么影响,如果要设置应该怎样设置
1、什么是url-pattern
简单说 servlet-mapping是用于servlet的路径映射配置,其中url-pattern为指定的映射拦截路径。在SpringMVC中,url-pattern指定了spring需要拦截派发的路径。
实际中,用户发送一个请求,该请求只要满足web.xml文件中的【url-pattern】的规则,这个请求就会交给这个前端控制器(DispatcherServlet),然而前端控制器在收到请求后自己不进行任何处理,根据相应的【URL的映射规则】委托给其他的页面控制器进行处理请求。前端控制器只作为一个统一的访问点,进行全局的流程控制,可以理解为调度 (Dispatcher)。
也就是说如果不符合规则,就会被拦截。这有点像寄信,前端控制器类似邮局,寄信人寄一封信(请求),如果收件人地址(请求路径)符合规则且正确,那么这封信就会被准确投递(访问成功),否则只能退回。至于信件里面有什么内容,要不要回信,由收件人自己去处理。
2、如何设置
 url-pattern有5种配置模式:
(1)/xxx:完全匹配/xxx的路径
(2)/xxx/*:匹配以/xxx开头的路径,请求中必须包含xxx。
(3)/*:匹配/下的所有路径,请求可以进入到action或controller,但是转发jsp时再次被拦截,不能访问jsp界面。
(4).xx:匹配以xx结尾的路径,所有请求必须以.xx结尾。比如拦截*.do、*.htm结尾的,例如:/user/add.do,但不会影响访问静态文件。
(5)/:默认模式,未被匹配的路径都将映射到此servlet,对jpg,js,css等静态文件也将被拦截,不能访问。