{"id":2226,"date":"2016-04-14T17:44:31","date_gmt":"2016-04-14T17:44:30","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=2226"},"modified":"2023-08-11T11:37:47","modified_gmt":"2023-08-11T18:37:47","slug":"spring-boot-couchbase-integration","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/ko\/spring-boot-couchbase-integration\/","title":{"rendered":"\uc2a4\ud504\ub9c1 \ubd80\ud2b8 1.4\uc758 \ud37c\uc2a4\ud2b8 \ud074\ub798\uc2a4 \uc2dc\ubbfc\uc73c\ub85c\uc11c\uc758 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4"},"content":{"rendered":"<p><a href=\"https:\/\/spring.io\/blog\/2016\/04\/13\/spring-boot-1-4-0-m2-available-now\">\uc2a4\ud504\ub9c1 \ubd80\ud305 <code>1.4.0<\/code> \ub9c8\uc77c\uc2a4\ud1a4 2<\/a> \uac00 \ucd9c\uc2dc\ub418\uc5c8\uc2b5\ub2c8\ub2e4! \uc624\ub298\uc740 \uc2a4\ud504\ub9c1 \ubd80\ud2b8 \ud300\uc6d0\ub4e4\uacfc \uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \uc790\ubc14 SDK \ud300 \uac04\uc758 \uacf5\ub3d9 \ub178\ub825\uc744 \ud1b5\ud574 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4\ub97c \uc2a4\ud504\ub9c1 \ubd80\ud2b8\uc5d0 \ucd5c\ucd08\ub85c \ud1b5\ud569\ud55c \uc18c\uc2dd\uc744 \uc54c\ub824\ub4dc\ub9b4 \uc88b\uc740 \uc2dc\uac04\uc785\ub2c8\ub2e4.)<\/p>\n<p><img decoding=\"async\" src=\"\/wp-content\/original-assets\/2016\/april\/spring-boot-couchbase-integration\/springbootandcouchbase.png\" align=\"middle\" \/><\/p>\n<p>In <code>Spring Boot 1.4.0<\/code>\ub97c \ud1b5\ud574 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4\ub294 \uc2a4\ud504\ub9c1 \ubd80\ud2b8 \uc5d0\ucf54\uc2dc\uc2a4\ud15c\uc758 \uc77c\ub958 \uc2dc\ubbfc\uc774 \ub418\uc5c8\uc2b5\ub2c8\ub2e4!<\/p>\n<h2 id=\"couchbase-sdk-integration\">Couchbase SDK \ud1b5\ud569<\/h2>\n<p>\uc774\uc81c Spring Boot\ub294 \uc0ac\uc6a9\uc790\uac00 \uc5b8\uc81c <code>\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 SDK<\/code> \ub97c \ud074\ub798\uc2a4 \uacbd\ub85c\uc5d0 \ucd94\uac00\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uacbd\uc6b0 \uc778\uc2a4\ud134\uc2a4\ud654\ud558\uba74 <code>\ud074\ub7ec\uc2a4\ud130<\/code> \ubc0f <code>\ubc84\ud0b7<\/code> \ucf69\uc744 \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0 <em>\uc790\ub3d9 \uad6c\uc131<\/em>.<\/p>\n<p>Spring Boot\ub294 \uc774\ub7ec\ud55c \ud575\uc2ec SDK \ud074\ub798\uc2a4\ub97c \ucd94\uac00\ub85c \uad6c\uc131\ud558\uae30 \uc704\ud574 \uc18d\uc131\uc744 \uc120\ud0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <code>\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ud658\uacbd<\/code>!<\/p>\n<p>\ub2e4\uc74c\uacfc \uac19\uc740 \ubd80\ud2b8\uc2a4\ud2b8\ub7a9 \uc18d\uc131\uc774 \uc778\uc2dd\ub429\ub2c8\ub2e4:<\/p>\n<pre class=\"editor-colors lang-text\">spring.couchbase.bootstrap-hosts\r\nspring.couchbase.bucket.name\r\nspring.couchbase.bucket.password\r\n<\/pre>\n<p>\ud658\uacbd \ud29c\ub2dd(IO \uc5d4\ub4dc\ud3ec\uc778\ud2b8, SSL \uc9c0\uc6d0 \ubc0f \uae30\ubcf8 \ub3d9\uae30\ud654 API \uc2dc\uac04 \ucd08\uacfc)\uc740 \ub2e4\uc74c \uc18d\uc131\uc744 \ud1b5\ud574 \ub178\ucd9c\ub429\ub2c8\ub2e4:<\/p>\n<pre class=\"editor-colors lang-text\">spring.couchbase.env.endpoints.key-value\r\nspring.couchbase.env.endpoints.query\r\nspring.couchbase.env.endpoints.view\r\n\r\nspring.couchbase.env.ssl.enabled\r\nspring.couchbase.env.ssl.key-store\r\nspring.couchbase.env.ssl.key-store-password\r\n\r\nspring.couchbase.env.timeouts.connect\r\nspring.couchbase.env.timeouts.key-value\r\nspring.couchbase.env.timeouts.query\r\nspring.couchbase.env.timeouts.view\r\n<\/pre>\n<p>\uc774\uc81c \u2b50\ufe0f\u2b50\ufe0f\u2b50\ufe0f\u2b50\ufe0f\u2b50\ufe0f \uc9c0\uc6d0\ud300\uc785\ub2c8\ub2e4!<\/p>\n<blockquote><p><strong>\uacbd\uace0<\/strong>: \uc774\uc804 \ub9c8\uc77c\uc2a4\ud1a4\uc5d0\uc11c\ub294 \ubd80\ud2b8\uc2a4\ud2b8\ub7a9 \uc18d\uc131 \uc55e\uc5d0 \" <code>spring.*data*.couchbase<\/code> \", \uc774\uc81c \" <code>spring.couchbase<\/code> &#8220;.<\/p><\/blockquote>\n<h2 id=\"spring-cache-implementation\">\uc2a4\ud504\ub9c1 \uce90\uc2dc \uad6c\ud604<\/h2>\n<p>\uadf8\ub9ac\uace0 <a href=\"https:\/\/www.couchbase.com\/blog\/ko\/couchbase-spring-cache\/\">\uc2a4\ud504\ub9c1 \uce90\uc2dc<\/a> \ucd94\uc0c1\ud654\uc5d0\ub294 Couchbase 2.x \uad6c\ud604\uc774 \uc788\uc2b5\ub2c8\ub2e4, <a href=\"https:\/\/github.com\/couchbaselabs\/couchbase-spring-cache\"><code>\uce74\uc6b0\uce58\ubca0\uc774\uc2a4-\uc2a4\ud504\ub9c1 \uce90\uc2dc<\/code><\/a>.<\/p>\n<p>\uc774\uc81c Spring Boot\ub294 Java SDK\uc640 <code>\uce74\uc6b0\uce58\ubca0\uc774\uc2a4-\uc2a4\ud504\ub9c1 \uce90\uc2dc<\/code> \uc544\ud2f0\ud329\ud2b8\uac00 \ud074\ub798\uc2a4 \uacbd\ub85c\uc5d0 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uc774\ub294 \uae30\ubcf8 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\uc778 \uc774\uc804 \uc139\uc158\uacfc \uc798 \ud1b5\ud569\ub429\ub2c8\ub2e4. <code>\ubc84\ud0b7<\/code> \uce90\uc2dc\ub294 Spring Boot\uc5d0\uc11c \uc790\ub3d9 \uad6c\uc131\ud55c \uce90\uc2dc\uc785\ub2c8\ub2e4.)<\/p>\n<blockquote><p><strong>\ucc38\uace0<\/strong>: \uce90\uc2dc \uad6c\ud604\uc740 Spring Data Couchbase \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c \uc790\uccb4 \ud504\ub85c\uc81d\ud2b8(Couchbase\uc758 github \ub9ac\ud3ec\uc9c0\ud1a0\ub9ac)\ub85c \uac00\uc838\uc640\uc11c Spring Data\uc640 \ubcc4\ub3c4\ub85c \uc0ac\uc6a9 \ubc0f \ub9b4\ub9ac\uc2a4\ud560 \uc218 \uc788\ub3c4\ub85d \ud588\uc2b5\ub2c8\ub2e4.<\/p><\/blockquote>\n<blockquote><p><strong>\ud301<\/strong>: \ucd5c\uc18c\ud55c \ub2e4\uc74c\uacfc \uac19\uc774 \uad6c\uc131\ud558\ub294 \uac83\uc744 \uc78a\uc9c0 \ub9c8\uc138\uc694. <code>spring.couchbase.bootstrap-hosts<\/code> \uc18d\uc131\uc785\ub2c8\ub2e4.<\/p><\/blockquote>\n<p>\uc774 \uad6c\ud604\uc740 <code>CacheManager<\/code> \ub97c \uc0ac\uc6a9\ud558\uba74 \uac01 \uce90\uc2dc \uc774\ub984\uc5d0 Couchbase\uc758 \ud0a4 \uc811\ub450\uc0ac\ub97c \uc790\ub3d9\uc73c\ub85c \ucd94\uac00\ud558\uc5ec \uc5ec\ub7ec \uce90\uc2dc\uc758 \ub370\uc774\ud130\ub97c \ub3d9\uc77c\ud55c Couchbase \ubc84\ud0b7\uc5d0 \uc800\uc7a5\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uadf8\ub9ac\uace0 <code>CouchbaseCacheManager<\/code> \uc740 \uc790\ub3d9\uc73c\ub85c <code>\ubc84\ud0b7<\/code> \uc5d0 \uc758\ud574 \uc790\ub3d9 \uad6c\uc131\ub429\ub2c8\ub2e4. \uce90\uc2dc \uc774\ub984\uc744 \uc120\uc5b8\uc801\uc73c\ub85c \ub098\uc5f4\ud558\ub294 \uc18d\uc131\uc744 \ucd94\uac00\ud558\uae30\ub9cc \ud558\uba74 \ud574\ub2f9 \uce90\uc2dc\uac00 \ubbf8\ub9ac \ub85c\ub4dc\ub429\ub2c8\ub2e4:<\/p>\n<pre class=\"editor-colors lang-text\">spring.cache.type=couchbase\r\nspring.cache.cache-names=foo,bar\r\n<\/pre>\n<p>\ubcc4 \ub2e4\uc12f \uac1c\uc9dc\ub9ac \uc9c0\uc6d0, \uc800\ud76c\uac00 \uc54c\ub824\ub4dc\ub9bd\ub2c8\ub2e4!<\/p>\n<p>\uc5ec\ub7ec \uce90\uc2dc\uc5d0 \ub300\ud55c \ub370\uc774\ud130\ub97c \uc5ec\ub7ec \ubc84\ud0b7\uc5d0 \uc800\uc7a5\ud558\ub3c4\ub85d \uad6c\uc131\ud560 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4. \uadf8\ub7f0 \ub2e4\uc74c \uc720\ucc3d\ud55c \ube4c\ub354 \ud328\ud134\uc744 \uc0ac\uc6a9\ud558\uc5ec \uce90\uc2dc\ub97c \uad6c\uc131\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4(\uc608\ub97c \ub4e4\uc5b4 <code>\uce90\uc2dc \uad00\ub9ac\uc790 \ucee4\uc2a4\ud130\ub9c8\uc774\uc800<\/code>). \uc774 <code>\uce90\uc2dc \ube4c\ub354<\/code> \ub97c \uc0ac\uc6a9\ud558\uba74 \uae30\ubcf8 \ub9cc\ub8cc \uc2dc\uac04\uc744 \uc124\uc815\ud558\ub294 \ub4f1 \uce90\uc2dc\ub97c \ucd94\uac00\ub85c \uc870\uc815\ud560 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4:<\/p>\n<pre><code class=\"language-java\">@Configuration\r\npublic class CouchbaseCacheConfiguration {\r\n\r\n  private final Cluster cluster;\r\n\r\n  \/\/inject the Cluster from Boot core Couchbase support\r\n  public CouchbaseCacheConfiguration(Cluster cluster) {\r\n    this.cluster = cluster;\r\n  }\r\n\r\n  @Bean\r\n  public Bucket anotherBucket() {\r\n    return this.cluster.openBucket(\"another\", \"secret\");\r\n  }\r\n\r\n  @Bean\r\n  public CacheManagerCustomizer cmCustomizer() {\r\n    return c -&gt; {\r\n      c.prepareCache(\"biz\", CacheBuilder\r\n              .newInstance(anotherBucket())\r\n              .withExpirationInMillis(2000));\r\n    };\r\n  }\r\n}<\/code><\/pre>\n<p>\uc774 \uad6c\ud604\uc5d0\uc11c\ub294 \ubcf4\uae30\ub97c \uc0ac\uc6a9\ud558\uc5ec \ub3d9\uc77c\ud55c \ubc84\ud0b7\uc5d0 \ubc30\uce58\ub41c \uce90\uc2dc\ub97c \uc120\ud0dd\uc801\uc73c\ub85c \uc9c0\uc6b8 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\ub9c8\uc9c0\ub9c9\uc73c\ub85c \uc694\uccad\uc5d0 \ub530\ub77c \uce90\uc2dc\ub97c \ub3d9\uc801\uc73c\ub85c \uc0dd\uc131\ud558\ub294 \uae30\ub2a5\ub3c4 \uc9c0\uc6d0\ud569\ub2c8\ub2e4. \uc774\ub97c \ud65c\uc131\ud654\ud558\ub824\uba74 \uce90\uc2dc \uc774\ub984 \uc120\uc5b8\uc744 \uc0dd\ub7b5\ud558\uace0 \uad00\ub828 \ud504\ub85c\ud37c\ud2f0\ub85c Couchbase \uce90\uc2f1\uc744 \ud65c\uc131\ud654\ud558\uae30\ub9cc \ud558\uba74 \ub429\ub2c8\ub2e4:<\/p>\n<pre class=\"editor-colors lang-text\">spring.cache.type=couchbase\r\n<\/pre>\n<p>\uc774\uac83\uc740 \uc790\ub3d9\uc73c\ub85c \uad6c\uc131\ub41c Spring Boot\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4. <code>\ubc84\ud0b7<\/code> \ub97c \ub3d9\uc801\uc73c\ub85c \uc0dd\uc131\ub41c \ubaa8\ub4e0 \uce90\uc2dc\uc5d0 \ub300\ud55c \uae30\ubcf8 \ubc84\ud0b7\uc73c\ub85c \uc124\uc815\ud569\ub2c8\ub2e4.<\/p>\n<p>\ud568\uaed8 \uc990\uae30\uae30 <code>\uce90\uc2dc \uac00\ub2a5<\/code> \uae30\ub2e4\ub9ac\uace0 \uc788\ub098\uc694?<\/p>\n<h2 id=\"spring-data-integration\">Spring \ub370\uc774\ud130 \ud1b5\ud569<\/h2>\n<p><a href=\"https:\/\/projects.spring.io\/spring-data-couchbase\/\">Spring \ub370\uc774\ud130 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4 <code>2.1.0<\/code><\/a> (\ub9b4\ub9ac\uc2a4 \ud2b8\ub808\uc778 \ud638\ud37c)\uc5d0\ub294 \uc2a4\ud504\ub9c1 \ubd80\ud2b8\uc640\uc758 \ud1b5\ud569\uc744 \uc27d\uac8c \ud560 \uc218 \uc788\ub294 \uba87 \uac00\uc9c0 \uc218\uc815 \uc0ac\ud56d\uc774 \ud3ec\ud568\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uba3c\uc800 \uc77c\ubc18\uc801\uc778 \uc6a9\uc758\uc790: \uae30\ubcf8\uc801\uc73c\ub85c Spring Boot\ub294 \uc2a4\ud504\ub9c1 \ub370\uc774\ud130 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4\ub97c \uc0ac\uc6a9\ud558\ub3c4\ub85d \uc2a4\ud504\ub9c1 \ub370\uc774\ud130 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4\ub97c \uc790\ub3d9 \uad6c\uc131\ud569\ub2c8\ub2e4. <code>\ubc84\ud0b7<\/code> \ub97c \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4. \uc774\ub294 \ud575\uc2ec SDK \uad6c\uc131 \ubd80\ubd84\uc744 \ub2e4\uc74c\uacfc \uac19\uc774 \ubd84\ub9ac\ud588\uae30 \ub54c\ubb38\uc5d0 \uac00\ub2a5\ud569\ub2c8\ub2e4. <code>\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ucee8\ud53c\uaddc\ub808\uc774\ud130<\/code> \ud074\ub798\uc2a4\uc5d0 \uc788\uc9c0\ub9cc, \uc2a4\ud504\ub9c1 \ub370\uc774\ud130\uc5d0 \uc2e4\uc81c\ub85c \ud2b9\uc815\ud55c \uac83\uc740 \uc0c8\ub85c\uc6b4 \uae30\ubcf8 \ud074\ub798\uc2a4\uc5d0 \uc788\uc2b5\ub2c8\ub2e4, <code>\ucd94\uc0c1 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ub370\uc774\ud130 \uad6c\uc131<\/code>.<\/p>\n<p>Spring \ub370\uc774\ud130\ub9cc \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0 \uacc4\uc18d \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <code>\ucd94\uc0c1 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \uad6c\uc131<\/code>\ub294 \uc774\uc81c CouchbaseConfigurer\uc774\uc790 AbstractCouchbaseDataConfiguration\uc785\ub2c8\ub2e4.<\/p>\n<p>\uadf8\ub7ec\ub098 Spring Boot\ub97c \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0 \uc790\ub3d9\uc73c\ub85c <code>\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ucee8\ud53c\uaddc\ub808\uc774\ud130<\/code>. \uc5b8\uc81c\ub4e0\uc9c0 \uc9c1\uc811 \uc870\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <code>\ucd94\uc0c1 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ub370\uc774\ud130 \uad6c\uc131<\/code> \ub97c \ud074\ub9ad\ud558\uace0 \uadf8 \uc548\uc5d0 \uad6c\uc131\uc790\ub97c \uc0bd\uc785\ud569\ub2c8\ub2e4.<\/p>\n<h3 id=\"other-spring-data-couchbase-features\">\uae30\ud0c0 Spring \ub370\uc774\ud130 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \uae30\ub2a5<\/h3>\n<p>2.1.0 \ub9b4\ub9ac\uc2a4\uc5d0\ub294 \uba87 \uac00\uc9c0 \uc0c8\ub85c\uc6b4 \uae30\ub2a5\ub3c4 \ud3ec\ud568\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4:<\/p>\n<ul>\n<li>\uc790\ub3d9 \uc635\uc158 <code>\ud130\uce58<\/code> (\ubb38\uc11c \ub9cc\ub8cc \uc0c8\ub85c \uace0\uce68) \uc77d\uae30(<a href=\"https:\/\/jira.spring.io\/browse\/DATACOUCH-59\">DATACOUCH-59<\/a>)<\/li>\n<li>\uc815\ub82c \ubc0f \ud398\uc774\uc9c0 \ub9e4\uae40 \uac1c\uc120(<a href=\"https:\/\/jira.spring.io\/browse\/DATACOUCH-211\">DATACOUCH-211<\/a>, <a href=\"https:\/\/jira.spring.io\/browse\/DATACOUCH-214\">DATACOUCH-214<\/a>)<\/li>\n<li>\uac10\uc0ac \uc9c0\uc6d0 \ucd94\uac00(\uc608 <code>@CreatedBy<\/code> \uc5b4\ub178\ud14c\uc774\uc158, <a href=\"https:\/\/jira.spring.io\/browse\/DATACOUCH-91\">DATACOUCH-91<\/a>)<\/li>\n<\/ul>\n<h2 id=\"conclusion\">\uacb0\ub860<\/h2>\n<p>\u2b50\ufe0f\u2b50\ufe0f\u2b50\ufe0f\u2b50\ufe0f\u2b50\ufe0f \ub9c8\uc77c\uc2a4\ud1a4\uc744 \ud68d\ub4dd\ud558\uc138\uc694!<\/p>\n<p>\uc5b8\uc81c\ub098 \uadf8\ub807\ub4ef\uc774 \ud53c\ub4dc\ubc31\uc740 \uc5b8\uc81c\ub098 \ud658\uc601\ud569\ub2c8\ub2e4(\uc2a4\ud504\ub9c1 \ub370\uc774\ud130 <a href=\"https:\/\/jira.spring.io\/browse\/DATACOUCH\">\uc774\uc288 \ucd94\uc801\uae30<\/a>, \uc2a4\ud504\ub9c1 \ubd80\ud305 <a href=\"https:\/\/github.com\/spring-projects\/spring-boot\/issues?utf8=%E2%9C%93&amp;q=is%3Aissue+couchbase\">\uc774\uc288 \ucd94\uc801\uae30<\/a> \ub610\ub294 <a href=\"https:\/\/www.couchbase.com\/blog\/ko\/forums\/c\/java-sdk\/\">\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ud3ec\ub7fc<\/a>).<\/p>\n<p>\ud589\ubcf5\ud55c \ucf54\ub529!<\/p>","protected":false},"excerpt":{"rendered":"<p>Spring Boot 1.4.0 MILESTONE 2 is out! This is a good time to tell you about the joint effort between Spring Boot team members and the Couchbase Java SDK team to offer a first class integration of Couchbase into Spring [&hellip;]<\/p>","protected":false},"author":48,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1818],"tags":[1424,1630,1465],"ppma_author":[9022],"class_list":["post-2226","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-java","tag-spring","tag-spring-boot","tag-spring-data"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.5 (Yoast SEO v26.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Couchbase as a First Class Citizen of Spring Boot 1.4 - The Couchbase Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/ko\/spring-boot-couchbase-integration\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Couchbase as a First Class Citizen of Spring Boot 1.4\" \/>\n<meta property=\"og:description\" content=\"Spring Boot 1.4.0 MILESTONE 2 is out! This is a good time to tell you about the joint effort between Spring Boot team members and the Couchbase Java SDK team to offer a first class integration of Couchbase into Spring [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/ko\/spring-boot-couchbase-integration\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-04-14T17:44:30+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-08-11T18:37:47+00:00\" \/>\n<meta name=\"author\" content=\"Simon Basle, Software Engineer, Pivotal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Simon Basle, Software Engineer, Pivotal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/\"},\"author\":{\"name\":\"Simon Basle, Software Engineer, Pivotal\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/a4086d75b59570cc2e5ff66d98c5d1a1\"},\"headline\":\"Couchbase as a First Class Citizen of Spring Boot 1.4\",\"datePublished\":\"2016-04-14T17:44:30+00:00\",\"dateModified\":\"2023-08-11T18:37:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/\"},\"wordCount\":593,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"keywords\":[\"spring\",\"spring-boot\",\"spring-data\"],\"articleSection\":[\"Java\"],\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/\",\"name\":\"Couchbase as a First Class Citizen of Spring Boot 1.4 - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2016-04-14T17:44:30+00:00\",\"dateModified\":\"2023-08-11T18:37:47+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"width\":1800,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Couchbase as a First Class Citizen of Spring Boot 1.4\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/a4086d75b59570cc2e5ff66d98c5d1a1\",\"name\":\"Simon Basle, Software Engineer, Pivotal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/4b2bcd169f85f21cee7b8a0e0c9e7854\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/3c3aec94782fea5f0a199368c15e836198faf05c1591e0ae0b91178a59457781?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/3c3aec94782fea5f0a199368c15e836198faf05c1591e0ae0b91178a59457781?s=96&d=mm&r=g\",\"caption\":\"Simon Basle, Software Engineer, Pivotal\"},\"description\":\"Simon Basl_ is a Paris-based Software Engineer working in the Spring team at Pivotal. Previously, he worked in the Couchbase Java SDK team. His interests span software design aspects (OOP, design patterns, software architecture), rich clients, what lies beyond code (continuous integration, (D)VCS, best practices), and reactive programming. He is also an editor for the French version of InfoQ.com.\",\"url\":\"https:\/\/www.couchbase.com\/blog\/ko\/author\/simon-basle\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Couchbase as a First Class Citizen of Spring Boot 1.4 - The Couchbase Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/ko\/spring-boot-couchbase-integration\/","og_locale":"ko_KR","og_type":"article","og_title":"Couchbase as a First Class Citizen of Spring Boot 1.4","og_description":"Spring Boot 1.4.0 MILESTONE 2 is out! This is a good time to tell you about the joint effort between Spring Boot team members and the Couchbase Java SDK team to offer a first class integration of Couchbase into Spring [&hellip;]","og_url":"https:\/\/www.couchbase.com\/blog\/ko\/spring-boot-couchbase-integration\/","og_site_name":"The Couchbase Blog","article_published_time":"2016-04-14T17:44:30+00:00","article_modified_time":"2023-08-11T18:37:47+00:00","author":"Simon Basle, Software Engineer, Pivotal","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Simon Basle, Software Engineer, Pivotal","Est. reading time":"3\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/"},"author":{"name":"Simon Basle, Software Engineer, Pivotal","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/a4086d75b59570cc2e5ff66d98c5d1a1"},"headline":"Couchbase as a First Class Citizen of Spring Boot 1.4","datePublished":"2016-04-14T17:44:30+00:00","dateModified":"2023-08-11T18:37:47+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/"},"wordCount":593,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","keywords":["spring","spring-boot","spring-data"],"articleSection":["Java"],"inLanguage":"ko-KR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/","url":"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/","name":"Couchbase as a First Class Citizen of Spring Boot 1.4 - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2016-04-14T17:44:30+00:00","dateModified":"2023-08-11T18:37:47+00:00","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/"]}]},{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","width":1800,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/spring-boot-couchbase-integration\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Couchbase as a First Class Citizen of Spring Boot 1.4"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","description":"NoSQL \ub370\uc774\ud130\ubca0\uc774\uc2a4, Couchbase","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/a4086d75b59570cc2e5ff66d98c5d1a1","name":"Simon Basle, \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc5d4\uc9c0\ub2c8\uc5b4, \ud53c\ubcf4\ud0c8","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/4b2bcd169f85f21cee7b8a0e0c9e7854","url":"https:\/\/secure.gravatar.com\/avatar\/3c3aec94782fea5f0a199368c15e836198faf05c1591e0ae0b91178a59457781?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3c3aec94782fea5f0a199368c15e836198faf05c1591e0ae0b91178a59457781?s=96&d=mm&r=g","caption":"Simon Basle, Software Engineer, Pivotal"},"description":"Simon Basl_\uc740 \ud30c\ub9ac\uc5d0 \uac70\uc8fc\ud558\ub294 \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc5d4\uc9c0\ub2c8\uc5b4\ub85c \ud53c\ubcf4\ud0c8\uc758 Spring \ud300\uc5d0\uc11c \uadfc\ubb34\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uc774\uc804\uc5d0\ub294 Couchbase Java SDK \ud300\uc5d0\uc11c \uadfc\ubb34\ud588\uc2b5\ub2c8\ub2e4. \uadf8\uc758 \uad00\uc2ec \ubd84\uc57c\ub294 \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc124\uacc4 \uce21\uba74(OOP, \ub514\uc790\uc778 \ud328\ud134, \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc544\ud0a4\ud14d\ucc98), \ub9ac\uce58 \ud074\ub77c\uc774\uc5b8\ud2b8, \ucf54\ub4dc \ub108\uba38\uc758 \uac83(\uc9c0\uc18d\uc801 \ud1b5\ud569, (D)VCS, \ubaa8\ubc94 \uc0ac\ub840), \ubc18\uc751\ud615 \ud504\ub85c\uadf8\ub798\ubc0d \ub4f1 \ub2e4\uc591\ud569\ub2c8\ub2e4. \ub610\ud55c \ud504\ub791\uc2a4\uc5b4 \ubc84\uc804\uc758 InfoQ.com\uc758 \ud3b8\uc9d1\uc790\uc774\uae30\ub3c4 \ud569\ub2c8\ub2e4.","url":"https:\/\/www.couchbase.com\/blog\/ko\/author\/simon-basle\/"}]}},"authors":[{"term_id":9022,"user_id":48,"is_guest":0,"slug":"simon-basle","display_name":"Simon Basle, Software Engineer, Pivotal","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/3c3aec94782fea5f0a199368c15e836198faf05c1591e0ae0b91178a59457781?s=96&d=mm&r=g","author_category":"","last_name":"Basle","first_name":"Simon","job_title":"","user_url":"","description":"Simon Basl_\uc740 \ud30c\ub9ac\uc5d0 \uac70\uc8fc\ud558\ub294 \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc5d4\uc9c0\ub2c8\uc5b4\ub85c \ud53c\ubcf4\ud0c8\uc758 Spring \ud300\uc5d0\uc11c \uadfc\ubb34\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uc774\uc804\uc5d0\ub294 Couchbase Java SDK \ud300\uc5d0\uc11c \uadfc\ubb34\ud588\uc2b5\ub2c8\ub2e4. \uadf8\uc758 \uad00\uc2ec \ubd84\uc57c\ub294 \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc124\uacc4 \uce21\uba74(OOP, \ub514\uc790\uc778 \ud328\ud134, \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc544\ud0a4\ud14d\ucc98), \ub9ac\uce58 \ud074\ub77c\uc774\uc5b8\ud2b8, \ucf54\ub4dc \ub108\uba38\uc758 \uac83(\uc9c0\uc18d\uc801 \ud1b5\ud569, (D)VCS, \ubaa8\ubc94 \uc0ac\ub840), \ubc18\uc751\ud615 \ud504\ub85c\uadf8\ub798\ubc0d \ub4f1 \ub2e4\uc591\ud569\ub2c8\ub2e4. \ub610\ud55c \ud504\ub791\uc2a4\uc5b4 \ubc84\uc804\uc758 InfoQ.com\uc758 \ud3b8\uc9d1\uc790\uc774\uae30\ub3c4 \ud569\ub2c8\ub2e4."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/2226","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/users\/48"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/comments?post=2226"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/2226\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media\/13873"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media?parent=2226"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/categories?post=2226"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/tags?post=2226"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/ppma_author?post=2226"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}