亮书房Java Webjava全栈

从零开始构建一个spring boot + angular we

2016-09-30  本文已影响6306人  东方一号蓝

原创性声明:本文完全为笔者原创,请尊重笔者劳动力。转载务必注明原文地址。

说在前头

首先,开始项目前,电脑的必备开发环境要首先具备。如, JDKnodemavenbower等常用工具要具备。废话不多说了。

mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

其中,

<?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.example</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>

    <name>demo</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.4.1.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>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
          <groupId>mysql</groupId>
          <artifactId>mysql-connector-java</artifactId>
        </dependency>
        
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

关于pom.xml 的更多介绍可以参见这篇博客

Paste_Image.png
可以看到,Maven Dependencies已经有了(注意sts要首先添加maven依赖,,可以参考:这里
package com.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.support.SpringBootServletInitializer;

@SpringBootApplication
public class App extends SpringBootServletInitializer
{
    public static void main( String[] args )
    {
        SpringApplication.run(App.class, args);
    }

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        // TODO Auto-generated method stub
        return builder.sources(App.class);
    }
    
}

接着运行项目,发现,报如下错误:

Paste_Image.png
缺少数据库驱动,需要在配置文件里配置,但是发现,我们项目中没有自动生成application.properities文件,因此点击项目根目录右击新建文件夹src/main/resources,如果resources文件夹被建在了这个位置: Paste_Image.png

不用担心,右击项目根目录,执行Maven->Update Project,maven会自动更新项目结构,执行结果如下:

Paste_Image.png
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/demo_test?autoReconnect=true
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=123456

上面内容配置了数据库信息。接着在webapp下创建index.html:

Paste_Image.png
内容如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
  首页
</body>
</html>

补充

spring:
    datasource:
      url: jdbc:mysql://127.0.0.1:3306/demo_test?autoReconnect=true
      driver-class-name: com.mysql.jdbc.Driver
      username: root
      password: 123456

程序完全可以正常运行。

tip:无论配置文件是application.properties还是application.yml,也无论配置文件在哪个目录下,spring boot程序似乎都能访问到,但是为了项目结构的标准型,务必合理部署。

上一篇 下一篇

猜你喜欢

热点阅读