Springboot 相关注解 [email protected]

@WebServlet注解:
@WebServlet注解一般在类上声明使用。一般情况下此类要继承 Servlet案例如下:
@WebServlet(urlPatterns = "/druid/*", initParams={
        @WebInitParam(name="allow",value="127.0.0.1"),// IP白名单 (没有配置或者为空,则允许所有访问)
        @WebInitParam(name="deny",value=""),// IP黑名单 (存在共同时,deny优先于allow)
        @WebInitParam(name="loginUsername",value="admin"),// 用户名
        @WebInitParam(name="loginPassword",value="123456"),// 密码
        @WebInitParam(name="resetEnable",value="true")// 禁用HTML页面上的“Reset All”功能
})
public class DruidStatViewServlet extends StatViewServlet {
    private static final long serialVersionUID = 2359758657306626394L;
}
对应的xml为:
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
 3
 4 <servlet>
 5
 6 <servlet-name>DruidStatViewServlet </servlet-name>
 7
 8 <servlet-class>com.xfwbing.DruidStatViewServlet </servlet-class>
 9
10  <init-param>
11
12 <param-name>allow</param-name>
13
14 <param-value>127.0.0.1</param-value>
15
16 </init-param>
17
18 </servlet>
19
20 <servlet-mapping>
21
22 <servlet-name>
23 DruidStatViewServlet
24 </servlet-name>
25
26  <url-pattern>
27 /druid/*
28 </url-pattern> </servlet-mapping> </web-app>



只要在类上面设置@WebServlet标注,容器就会自动读取当中的信息。 上面案例中的@WebServlet告诉容器,如果请求的URL是 "/druid/*",那么就由DruidStatViewServlet来提供服务。

若没有设置@WebServlet的name属性,默认值会是Servlet的类完整名称。

当应用程序启动后,事实上并没有创建所有的Servlet实例。容器会在首次请求需要某个Servlet服务时,才将对应的Servlet类实例化、进行初始化操作,然后再处理请求。这意味着第一次请求该Servlet的客户端,必须等待Servlet类实例化、进行初始动作所必须花费的时间,才真正得到请求的处理。

如果希望应用程序启动时,就先将Servlet类载入、实例化并做好初始化动作,则可以使用loadOnStartup设置。设置大于0的值(默认值为-1),表示启动应用程序后就要初始化Servlet(而不是实例化几个Servlet)。数字代表了Servlet的初始顺序,容器必须保证有较小数字的Servlet先初始化,在使用标注的情况下,如果有多个Servlet在设置loadOnStartup时使用了相同的数字,则容器实现厂商可以自行决定要如何载入哪个Servlet。

@WebServlet常用属性

属性 类型 是否必须 说明
asyncSupported boolean 指定Servlet是否支持异步操作模式
displayName String 指定Servlet显示名称
initParams WebInitParam[] 配置初始化参数
loadOnStartup int 标记容器是否在应用启动时就加载这个Servlet
name String 指定Servlet名称
urlPatterns/value String[] 这两个属性作用相同,指定Servlet处理的url

原文地址:https://www.cnblogs.com/xfwbing/p/9399458.html

时间: 2024-11-04 02:14:44

Springboot 相关注解 [email protected]的相关文章

springboot情操陶冶[email&#160;protected]注解解析

承接前文springboot情操陶冶[email protected]注解解析,本文将在前文的基础上对@SpringBootApplication注解作下简单的分析 @SpringBootApplication 该注解是springboot最集中的一个注解,也是应用最广泛的注解.官方也多用此注解以启动spring服务,我们看下其中的源码 @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented @Inher

springboot情操陶冶[email&#160;protected]和@AutoConfigureAfter注解解析

承接前文springboot情操陶冶[email protected]注解解析,本文将在前文的基础上阐述@AutoConfigureAfter和@Conditional注解的作用与解析 [email protected] 根据单词来理解,其就是条件的意思.在分析之前我们可以看下其内部源码 @Target({ElementType.TYPE, ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME) @Documented public @i

SpringBoot(十九)[email&#160;protected]@ 的使用

现在在的公司用[email protected]@ 当我看到这个的时候,一脸蒙蔽,这个@ 是啥意思. 这里其实是配合 maven profile进行选择不同配置文件进行开发 实战 1.构建一个springboot 项目 这里使用idea进行构建的,这个过程省略 2.pom文件配置 <profiles> <profile> <!-- 生产环境 --> <id>prod</id> <properties> <profiles.act

页面输出格式常用注解[email&#160;protected],@JsonFormat,@JsonFormat

1.注解名称:@JsonIgnore 作用:在实体类向前台返回数据时用来忽略不想传递给前台的属性或接口. Eg:User实体中会有字段password字段, 当返回用户信息给前台的时候,当然是不希望将password值也一并返回.所以,这个时候可以在password属性上加上注解JsonIgnore或者, 可以在User类上加上注解@JsonIgnoreProperties(value = "{password}") 2.注解名称:@JsonFormat 前台使用固定时间格式时可以在属

(转)spring boot注解 [email&#160;protected] 异步调用

原文:http://www.cnblogs.com/azhqiang/p/5609615.html EnableAsync注解的意思是可以异步执行,就是开启多线程的意思.可以标注在方法.类上. 1 @Component 2 public class Task { 3 4 @Async 5 public void doTaskOne() throws Exception { 6 // 同上内容,省略 7 } 8 9 @Async 10 public void doTaskTwo() throws

[转]Spring注解[email&#160;protected]注解、@Bean注解以及配置自动扫描、bean作用域

1.@Configuration标注在类上,相当于把该类作为spring的xml配置文件中的<beans>,作用为:配置spring容器(应用上下文) package com.test.spring.support.configuration; @Configuration public class TestConfiguration { public TestConfiguration(){ System.out.println("spring容器启动初始化...");

元注解[email&#160;protected]和@Retention

元注解 作用:用来修饰注解一 @Target ----- 作用对象 二 @Retention ----作用时期作用范围@Reatention:枚举类型 ElementType1: Source:注解只保留在源文件,当Java文件编译成class文件的时候,注解被遗弃:源码: Annotations are to be discarded by the compiler.2: Class:注解被保留到class文件,但jvm加载class文件时候被遗弃,这是默认的生命周期源码: Annotatio

SpringBoot(十九)@[email&#160;protected]全局捕获Controller异常

在spring 3.2中,新增了@ControllerAdvice 注解,可以用于定义@ExceptionHandler.@InitBinder.@ModelAttribute,并应用到所有@RequestMapping中.@ControllerAdvice官方文档.创建全局异常处理类:通过使用@ControllerAdvice定义统一的异常处理类,而不是在每个Controller中逐个定义.@ExceptionHandler用来定义函数针对的异常类型,最后将Exception对象和请求URL映

注解@[email&#160;protected]

在Controller中需要注入service那么我的这个server有两个实现类如何区分开这两个impl呢 根据注入资源的注解不同实现的方式有一点小小的区别 在Controller中使用 @Autowired注入时 Qualifier的意思是合格者,通过这个标示,表明了哪个实现类才是我们所需要的,添加@Qualifier注解,需要注意的是@Qualifier的参数名称为我们之前定义@Service注解的名称之一. ##使用@Resource注入时 使用@resource注入时比较简单了注解自带