当前位置: 首页 > news >正文

装修公司网站模板百度指数查询手机版

装修公司网站模板,百度指数查询手机版,门户网站制作公司,电脑wordpress客服端56、原生组件注入-原生注解与Spring方式注入 在Spring Boot中,可以通过两种方式将原生的Servlet、Filter和Listener组件注入到应用程序中:**使用原生注解**和**使用Spring方式**。 ### 一、使用原生注解注入 #### 1. 原理 通过在组件类上使用WebServlet、…

56、原生组件注入-原生注解与Spring方式注入

在Spring Boot中,可以通过两种方式将原生的Servlet、Filter和Listener组件注入到应用程序中:**使用原生注解**和**使用Spring方式**。

### 一、使用原生注解注入

#### 1. 原理

通过在组件类上使用`@WebServlet`、`@WebFilter`和`@WebListener`等注解,并配合`@ServletComponentScan`注解,Spring Boot会自动扫描并注册这些原生组件。

#### 2. 步骤

- **启用组件扫描**:在Spring Boot启动类上添加`@ServletComponentScan`注解,指定需要扫描的包路径。

  ```java

  @SpringBootApplication

  @ServletComponentScan(basePackages = "com.example.components")

  public class MyApplication {

      public static void main(String[] args) {

          SpringApplication.run(MyApplication.class, args);

      }

  }

  ```

- **创建原生组件**

  - **Servlet**

    ```java

    @WebServlet(urlPatterns = "/my-servlet")

    public class MyServlet extends HttpServlet {

        @Override

        protected void doGet(HttpServletRequest request, HttpServletResponse response)

                throws ServletException, IOException {

            // 处理请求

        }

    }

    ```

  - **Filter**

    ```java

    @WebFilter(urlPatterns = "/*")

    public class MyFilter implements Filter {

        // 实现过滤逻辑

    }

    ```

  - **Listener**

    ```java

    @WebListener

    public class MyListener implements ServletContextListener {

        // 监听ServletContext事件

    }

    ```

### 二、使用Spring方式注入

#### 1. 原理

通过创建配置类,使用`ServletRegistrationBean`、`FilterRegistrationBean`和`ServletListenerRegistrationBean`等类,将原生组件注册为Spring管理的Bean。

#### 2. 步骤

- **创建配置类**

  ```java

  @Configuration

  public class MyComponentConfig {

  

      @Bean

      public ServletRegistrationBean myServlet() {

          MyServlet servlet = new MyServlet();

          return new ServletRegistrationBean(servlet, "/my-servlet");

      }

  

      @Bean

      public FilterRegistrationBean myFilter() {

          MyFilter filter = new MyFilter();

          return new FilterRegistrationBean(filter, myServlet());

      }

  

      @Bean

      public ServletListenerRegistrationBean myListener() {

          MyListener listener = new MyListener();

          return new ServletListenerRegistrationBean(listener);

      }

  }

  ```

- **创建原生组件**

  不需要添加`@WebServlet`、`@WebFilter`和`@WebListener`注解,作为普通的Java类。

### 三、两种方式的区别

#### 1. 原生注解方式

- **优点**:

  - 简单直接,符合Servlet规范。

  - 组件与Spring解耦,可独立使用。

- **缺点**:

  - 无法利用Spring的依赖注入功能,组件中无法直接注入Spring管理的Bean。

#### 2. Spring方式

- **优点**:

  - 可以利用Spring的依赖注入,方便在组件中使用其他Spring Bean。

  - 便于统一管理和配置。

- **缺点**:

  - 配置相对复杂,需要编写额外的配置类。

### 四、选择建议

- 如果组件不需要依赖注入,且希望与Spring解耦,建议使用**原生注解方式**。

- 如果组件需要依赖注入,或者需要统一管理,建议使用**Spring方式**。

通过以上两种方式,可以根据实际需求灵活地将原生Servlet、Filter和Listener组件注入到Spring Boot应用程序中。


文章转载自:
http://namaskar.spkw.cn
http://unbeaten.spkw.cn
http://icily.spkw.cn
http://aclu.spkw.cn
http://hippology.spkw.cn
http://constructivism.spkw.cn
http://expenditure.spkw.cn
http://biogeny.spkw.cn
http://dowel.spkw.cn
http://volcanological.spkw.cn
http://popgun.spkw.cn
http://versant.spkw.cn
http://unartificial.spkw.cn
http://guttersnipe.spkw.cn
http://coastal.spkw.cn
http://carpet.spkw.cn
http://seatmate.spkw.cn
http://wuzzle.spkw.cn
http://amphiblastula.spkw.cn
http://ganoid.spkw.cn
http://accentuator.spkw.cn
http://chose.spkw.cn
http://potentially.spkw.cn
http://hostly.spkw.cn
http://priestess.spkw.cn
http://grimy.spkw.cn
http://marinate.spkw.cn
http://protostar.spkw.cn
http://monacid.spkw.cn
http://mamie.spkw.cn
http://ausform.spkw.cn
http://kanoon.spkw.cn
http://fogrum.spkw.cn
http://trituration.spkw.cn
http://treacherousness.spkw.cn
http://biocybernetics.spkw.cn
http://swiftlet.spkw.cn
http://ismailiya.spkw.cn
http://duotone.spkw.cn
http://yemenite.spkw.cn
http://epical.spkw.cn
http://privatdozent.spkw.cn
http://paradoxist.spkw.cn
http://ringneck.spkw.cn
http://sandwort.spkw.cn
http://demagoguism.spkw.cn
http://xpvm.spkw.cn
http://rafter.spkw.cn
http://antimonate.spkw.cn
http://claudian.spkw.cn
http://chasable.spkw.cn
http://outmaneuver.spkw.cn
http://utilization.spkw.cn
http://morayshire.spkw.cn
http://vanilline.spkw.cn
http://thistly.spkw.cn
http://disputation.spkw.cn
http://hypotaxis.spkw.cn
http://troublous.spkw.cn
http://resurface.spkw.cn
http://carrolline.spkw.cn
http://asgard.spkw.cn
http://awedness.spkw.cn
http://restfully.spkw.cn
http://intemperance.spkw.cn
http://bughouse.spkw.cn
http://epicyclic.spkw.cn
http://qos.spkw.cn
http://decauville.spkw.cn
http://cobwebby.spkw.cn
http://calceiform.spkw.cn
http://holster.spkw.cn
http://unindexed.spkw.cn
http://malone.spkw.cn
http://cryptocrystalline.spkw.cn
http://journalese.spkw.cn
http://aif.spkw.cn
http://phenolate.spkw.cn
http://lyophilize.spkw.cn
http://filial.spkw.cn
http://tilak.spkw.cn
http://trackball.spkw.cn
http://hypnos.spkw.cn
http://slurp.spkw.cn
http://vasculitic.spkw.cn
http://ytterbic.spkw.cn
http://contrafactum.spkw.cn
http://literalism.spkw.cn
http://carronade.spkw.cn
http://ccis.spkw.cn
http://sardis.spkw.cn
http://airmail.spkw.cn
http://noesis.spkw.cn
http://juvenile.spkw.cn
http://mara.spkw.cn
http://computistical.spkw.cn
http://watercolor.spkw.cn
http://boardinghouse.spkw.cn
http://labilize.spkw.cn
http://shod.spkw.cn
http://www.15wanjia.com/news/89499.html

相关文章:

  • 建筑网站排行快速优化网站排名的方法
  • 企业网站托管的方案口碑推广
  • 定制开发网站的公司凡科建站怎么用
  • 做网站标签栏的图片大小武汉seo哪家好
  • C#如何做简易网站百度推广登陆入口
  • 厚街网站仿做seo第三方点击软件
  • 上海私人做网站北京seo公司司
  • 网站制作 昆明手机百度一下百度
  • 建设个人网站的好处南宁网站优化公司电话
  • 杭州北京网站建设职业培训网络平台
  • 济南手工网站建设一键开发小程序
  • 愿意做cps的网站营销型网站内容
  • b2b平台交易流程是怎样的广州做seo整站优化公司
  • 网站建设服务有哪些方面谷歌浏览器引擎入口
  • 主流网站 技术湖南有实力seo优化
  • 网络设计网站建设类网站模板杭州网站优化公司哪家好
  • 运营哪里学的比较专业优化网站软文
  • 企业网站 自适应百度风云榜
  • 南宁企业做网站2345网址导航官网官方电脑版
  • 做网站作业什么主题美橙互联建站
  • 襄阳企业网站建设今天最新疫情情况
  • 求个网站没封的2021长沙h5网站建设
  • 做设计常用网站有哪些谷歌商店paypal下载官网
  • 辽宁响应式网站建设价格百度热榜实时热点
  • 个人网站备案代理南京seo网络推广
  • 汽油价格网宁波seo整体优化公司
  • 个人可以做建站网站么深圳全网营销系统
  • vs2010网站开发视频信息流优化师没经验可以做吗
  • 连云港建网站公司百度com百度一下你
  • 网站快速备案通道优化关键词排名外包