激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|JavaScript|易語言|

香港云服务器
服務(wù)器之家 - 編程語言 - Java教程 - 詳解Spring Boot的GenericApplicationContext使用教程

詳解Spring Boot的GenericApplicationContext使用教程

2021-06-17 11:05解道 Java教程

這篇教程展示了如何在Spring應(yīng)用程序中使用GenericApplicationContext 。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

教程展示了如何在spring應(yīng)用程序中使用genericapplicationcontext 。在該示例中,我們創(chuàng)建了一個(gè)spring boot控制臺(tái)應(yīng)用程序。

spring是一個(gè)流行的java應(yīng)用程序框架,spring boot 是spring的演變,可以幫助您輕松創(chuàng)建獨(dú)立的,基于生產(chǎn)級(jí)別的spring應(yīng)用程序。

genericapplicationcontext是一個(gè)實(shí)現(xiàn)applicationcontext,它不預(yù)設(shè)指定任何bean定義格式; 例如xml或注釋。

在下面的應(yīng)用程序中,我們genericapplicationcontext 使用上下文的registerbean()方法創(chuàng)建并注冊(cè)一個(gè)新bean 。稍后我們從應(yīng)用程序上下文中檢索bean getbean()。

以下是一個(gè)標(biāo)準(zhǔn)spring boot的pom.xml:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?xml version="1.0" encoding="utf-8"?>
<project xmlns="http://maven.apache.org/pom/4.0.0"
  xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"
      xsi:schemalocation="http://maven.apache.org/pom/4.0.0
      http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelversion>4.0.0</modelversion>
 
  <groupid>com.zetcode</groupid>
  <artifactid>genappctx</artifactid>
  <version>0.0.1-snapshot</version>
  <packaging>jar</packaging>
 
  <name>genappctx</name>
  <description>using genericapplicationcontext</description>
 
  <parent>
    <groupid>org.springframework.boot</groupid>
    <artifactid>spring-boot-starter-parent</artifactid>
    <version>2.1.0.release</version>
    <relativepath/> <!-- lookup parent from repository -->
  </parent>
 
  <properties>
    <project.build.sourceencoding>utf-8</project.build.sourceencoding>
    <project.reporting.outputencoding>utf-8</project.reporting.outputencoding>
    <java.version>11</java.version>
  </properties>
 
  <dependencies>
    <dependency>
      <groupid>org.springframework.boot</groupid>
      <artifactid>spring-boot-starter</artifactid>
    </dependency>
 
    <dependency>
      <groupid>org.springframework.boot</groupid>
      <artifactid>spring-boot-starter-test</artifactid>
      <scope>test</scope>
    </dependency>
  </dependencies>
 
  <build>
    <plugins>
      <plugin>
        <groupid>org.springframework.boot</groupid>
        <artifactid>spring-boot-maven-plugin</artifactid>
      </plugin>
    </plugins>
  </build>
</project>

這是maven pom.xml文件。這spring-boot-starter-parent是一個(gè)父pom,為使用maven構(gòu)建的應(yīng)用程序提供依賴性和插件管理。它spring-boot-starter是核心啟動(dòng)器,包括自動(dòng)配置支持,日志記錄和yaml。在spring-boot-starter-test春季增加了測(cè)試支持。將spring-boot-maven-pluginspring應(yīng)用程序包轉(zhuǎn)換為可執(zhí)行的jar或war歸檔文件。

application.properties:

?
1
2
3
spring.main.banner-mode = off
logging.level.root = error
logging.pattern.console =%d {dd-mm-yyyy hh:mm:ss}%magenta([%thread])%highlight(% - 5level) )%logger。%m - %msg%n

這個(gè)application.properties是spring boot中的主要配置文件。我們關(guān)閉spring標(biāo)題,僅減少記錄到錯(cuò)誤的數(shù)量,并設(shè)置控制臺(tái)日志記錄模式。

timeservice.java:

?
1
2
3
4
5
6
7
public class timeservice {
 
  public instant getnow() {
 
    return instant.now();
  }
}

timeservice包含一個(gè)返回當(dāng)前日期和時(shí)間的簡(jiǎn)單方法。此服務(wù)類將在我們的通用應(yīng)用程序上下文中注冊(cè)。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
@springbootapplication
public class myapplication implements commandlinerunner {
 
  @autowired
  private genericapplicationcontext context;
 
  public static void main(string[] args) {
 
    springapplication.run(myapplication.class, args);
  }
 
  @override
  public void run(string... args) throws exception {
 
    context.registerbean("com.zetcode.service.timeservice",
        timeservice.class, () -> new timeservice());
 
    var timeservice = (timeservice) context.getbean(timeservice.class);
 
    system.out.println(timeservice.getnow());
 
    context.registershutdownhook();
  }
}

myapplication是設(shè)置spring boot應(yīng)用程序的入口點(diǎn)。該@springbootapplication注釋能夠自動(dòng)配置和組件掃描。這是一個(gè)方便的注釋,等同于@configuration,@enableautoconfiguration以及@componentscan注釋。

這里我們注入了genericapplicationcontext。使用該registerbean()方法注冊(cè)了 一個(gè)新的timeservice bean 。

下面是測(cè)試myapplicationtests.java:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@runwith(springrunner.class)
@springboottest
public class myapplicationtests {
 
  @autowired
  private genericapplicationcontext context;
 
  @test
  public void testnow() {
 
    var timeservice = (timeservice) context.getbean("com.zetcode.service.timeservice");
    var now = timeservice.getnow();
 
    assertthat(now.isbefore(instant.now()));
  }
}

運(yùn)行:

mvn -q spring-boot:run

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:https://www.jdon.com/50838

延伸 · 閱讀

精彩推薦
709
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 国产免费一区二区三区在线能观看 | 一区二区三区小视频 | 欧美精品一区二区久久久 | 娇喘视频在线观看 | 国产成人精品免费视频大全最热 | 精品成人国产在线观看男人呻吟 | 精品成人久久久 | 亚洲免费片 | 国产亚洲高清视频 | 毛片在线免费视频 | 日本黄色不卡视频 | 欧美18—19sex性hd| 白天操夜夜操 | 午夜视频在线观 | 国产亚洲精品综合一区 | 黄色片网站免费看 | 久久在线精品视频 | 久久精品中文字幕一区 | 国产交换3p国产精品 | 毛片视频网站在线观看 | 久久久久久久久久亚洲精品 | 在线观看免费污视频 | 久久九九热re6这里有精品 | 中国一级无毛黄色 | 午夜生活理论片 | 粉色视频污| 国产精品成人av片免费看最爱 | 成人做爰高潮片免费视频韩国 | 亚洲影视中文字幕 | 久草在线小说 | 黑人三级毛片 | 91精品国产乱码久久久久久久久 | 成人亚洲 | 毛片大全在线观看 | 天天草夜夜爽 | 99国语露脸久久精品国产ktv | 一分钟免费观看完整版电影 | 毛片免费大全短视频 | 午夜精品网 | av手机在线免费播放 | 黄污网址 |