[Java][Framework] Spring Bootを使って、Spring MVC速攻開発してみる!(DB接続あり)
公開日:
:
Framework, Java Java, maven, Spring, Spring MVC, Sprint Boot
STSインストール
STSは、EclipseにSpring関連のいろいろな機能を詰め込んだオールインワンパッケージ。
素のEclipseに後付けでSpring関連プラグインを追加することができるようですが、
私はうまくいかなかったので、今回はSTSそのものを使用。
以下URLからダウンロードします。
Mavenインストール
とりあえず、このあたりからMavenをとってきてインストール。
https://maven.apache.org/download.cgi
Mavenプロジェクト作成
下記コマンドでプロジェクト作成
おまじないです。
「SpringBootProject」がプロジェクト名です。
$ mvn -B archetype:generate -DgroupId=com.example -DartifactId=SpringBootProject -Dversion=1.0.0-SNAPSHOT -DarchetypeArtifactId=maven-archetype-quickstart
Eclipseへインポート
上部メニューの「ファイル」→「インポート」から、
「Existing Maven Projects」を選択。
右上の「参照」ボタンで先ほど作成した「SpringBootProject」を選択する。
※インポートでエラーが発生し、プロジェクト名のところに赤い×がついている場合、無視でOK。
SpringBootの設定
pom.xmlに以下を追記。
DB接続はpostgresqlで設定しているが、DBに合わせて変更要。
ググるとでてくるとおもう。
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.2.3.RELEASE</version> </parent> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <dependency> <groupId>postgresql</groupId> <artifactId>postgresql</artifactId> <version>8.3-603.jdbc4</version> </dependency> </dependencies>
DB接続設定
プロジェクト直下に「application.properties」ファイルを作成。
以下を記述。
postgresql以外で設定する場合、適宜変更要。
ググると情報でてくるはず。
spring.datasource.url=jdbc:postgresql://localhost:5432/postgres spring.datasource.username=postgres spring.datasource.password=postgres spring.datasource.driverClassName=org.postgresql.Driver
Javaクラス作成
Javaクラスを作成する。コピペでOK。
●com.example.App
package com.example;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;
import com.example.entity.TestData;
import com.example.repository.TestDataRepository;
@RestController
@EnableAutoConfiguration
public class App {
@Autowired
TestDataRepository repository;
@RequestMapping("/")
String home(){
return "Hello World!!";
}
@RequestMapping("/getData")
List<TestData> testData(Model model){
// DBからデータ取得
List<TestData> list = repository.findAll();
return list;
}
@RequestMapping("/getDataForHtml")
ModelAndView testData(ModelAndView mav){
// DBからデータ取得
List<TestData> list = repository.findAll();
// テンプレート名指定
mav.setViewName("testThymeleaf");
// 動的項目設定
mav.addObject("messages", list);
return mav;
}
public static void main(String[] args){
SpringApplication.run(App.class, args);
}
}
●com.example.entity.TestData ※Entityクラス
package com.example.entity;
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity(name="item_master")
public class TestData {
@Id
private Long id;
private Long value;
private String name;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Long getValue() {
return value;
}
public void setValue(Long value) {
this.value = value;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
●com.example.repository.TestDataRepository
package com.example.repository;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
import com.example.entity.TestData;
@Repository
public interface TestDataRepository extends JpaRepository<TestData, Long>{
}
DB設定
今回は「item_master」というテーブルを作成し、
「id」「value」「name」という3つの項目を作成しています。
このあたりは適宜やってください。
実行
App.javaを右クリックして、「Run As」→「Spring Boot App」を選択。
ブラウザを開いて、以下URLにアクセスし、DBに設定したデータが表示されれば成功です。
スポンサードリンク
関連記事
-
-
[Java] 日付の計算方法(DateFormat、Date、Calendar)
こんにちは、kei0310です。 Javaで日付を計算する方法について解説します。 まず
-
-
[Java][Spring] Spring3でDIしてみる!(アノテーション使用)
Spring3を使って、一番基本的な形のプログラムを作成してみます。 今回は、アノテーションを
-
-
[Java] Apache POIでExcel操作!
Apache POIをまずは使ってみようという方(自分も含め)のメモ 導入 Maven htt
-
-
[java] 文字列の一部を切り取る方法(substring)
こんにちは。 今回は文字列の一部を切り取る方法について解説します。 具体的には、String
-
-
[Java] 文字列の分割(split)
こんにちは。 今回は、文字列の分割について解説します。 昔はStringTokenize
-
-
[Java][基本] ループ処理(for文)
Javaのループ処理の基本である、for文を解説します。 ●文法 for( [①初期化];
-
-
[Java] StringBuilderの使い方(Stringを連結するクラス)
今回は、可変長文字列クラスのStringBuilderを紹介します。 固定長文字列クラスのSt
-
-
[Java] テキストファイルの読み込み方法
こんにちは、今回はテキストファイルをJavaで読む方法を紹介します。 標準で提供されているクラ
-
-
[Java][Framework] Play Framework入門
今回は、Javaの比較的新しいWeb Frameworkである、Play Frameworkを試して
-
-
[Java][Servlet][JSP] ServletからJSPへの転送
こんにちは。 今回は、「Servletでリクエストを受けて、JSPで表示する。」方法を解説しま