Vue.jsをフロントエンドに、Javaで書いたWeb APIをバックエンドにしたアプリケーション。
JavaのHello World REST APIを作って、フロントエンドのvue.jsに表示するだけのシステムを作る。
mkdir helloVueJava
cd helloVueJava
mkdir backend
mkdir frontend
cd backend
gradle init --type java-application
cd ../frontend
npm initSpring BootでHello Worldを構築する。
- project nameを変更
- settings.gradle
rootProject.name = 'hellovuejava-backend'
- gradleにSpring Boot Gradle pluginを追加する
- Spring Boot Webを依存関係に追加
spring-boot-starter-web
- main classを変更
mainClassName = 'hello.Main'
- mkdir src/main/java/hello
- SampleController.javaを作成
- Main.javaを作成
- gradle buildを実行
- gradle bootrun
:compileJava UP-TO-DATE :processResources NO-SOURCE :classes UP-TO-DATE :findMainClass :bootRun . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v1.5.3.RELEASE) 略 - ブラウザで
http://localhost:8080/helloにアクセス- Hello World! と表示されたら成功!
package hello;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class SampleController {
@GetMapping("/hello")
String hello() {
return "Hello World!";
}
}package hello;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Main {
public static void main(String[] args) {
SpringApplication.run(Main.class, args);
}
}Javaと違って実装するファイルが多いのでファイルの内容は割愛。
- .gitignoreを書く
/node_modules
- npmで必要なライブラリを追加する
npm i -S vue materialize-css jquerynpm i -D babel-core babel-loader babel-preset-es2015 css-loader file-loader style-loader url-loader vue-loader vue-template-compiler webpack webpack-dev-server
- .babelrcを書く
- アプリケーションを実装する
- src
- js
- domain : ドメインクラスを置く場所
- Hello.js : WebAPI GET処理
- presentation
- vue_components
- Application.vue : Vueコンポーネントのルート
- Hello.vue
- vue_components
- index.js : Vueインスタンスを作る
- domain : ドメインクラスを置く場所
- index.html : index.jsを読み込むだけHTML
- js
- src
- webpackの設定を書く
webpacl.config.js
- package.jsonにbuildコマンドを追加する
"build": "mkdir -p build && cp src/index.html build/index.html && webpack",
buildフォルダにindex.htmlとbundle.jsなどが出来てたらOK
- Web APIを起動
- cd backend
- gradle bootrun
- フロントエンドのindex.htmlをブラウザで開く
PRINT MESSAGEボタンを押して、Hello World!!と表示されたら成功!!- 動かないときは、ブラウザのWeb開発ツールを開いてコンソールやデバッグしてみる。
- Spring Boot
- Vue.js関連
- GUIアプリケーションアーキテクチャ総合!みたいなやつ書いてる
- この記事読んでフロントエンド開発やってみようと思った。
- https://github.com/lavenderx/modern-java-web-scaffold
- GUIアプリケーションアーキテクチャ総合!みたいなやつ書いてる
- materializecss
- 簡単にキレイになって好き