入门文档:https://github.com/qibaoguang/Spring-Boot-Reference-Guide

安装gradle

官方下载 https://gradle.org/gradle-download/,建议用迅雷。

环境变量配置:http://jingyan.baidu.com/article/4d58d541167bc69dd4e9c009.html

首先说一下使用spring-boot开始项目的一些注意事项(针对新手):

  • 为了方便,请抛弃配置XML,真的很冗杂
  • 全面支持annotation注解和java config
  • spring-boot提供的一系列starter开始你的项目
  • spring-boot只是帮你更好的开始一个项目,而不是一个应用框架
  • 请使用IDEA开发
开始一个web项目

插件配置:

idea的模型 https://docs.gradle.org/current/dsl/org.gradle.plugins.ide.idea.model.IdeaModel.html

spring boot插件(配置了该插件后才有 gradle bootRun任务) http://docs.spring.io/spring-boot/docs/current/reference/html/build-tool-plugins-gradle-plugin.html

新建文件夹bootmkdir boot,在boot根目录执行gradle init --type java-library,修改build.gradle添加依赖compile 'org.springframework.boot:spring-boot-starter-web',新建Application.java

@SpringBootApplication
public class Application {
    public static void main(String[] args) throws Exception {
        SpringApplication.run(Application.class, args);
    }
}

写一个简单的controller

@Controller
public class PublicController {

    @RequestMapping("/")
    @ResponseBody
    String home() {
        return "Hello World!";
    }
}

boot几乎所有配置都在application.properties里,新建src/main/resources/application.properties,修改端口号server.port=8090,命令行启动gradle bootRun查看http://localhost:8090Hello World!
添加其他功能只需要添加对应的starter然后配置即可,比如通常会用到的一些starter

'org.springframework.boot:spring-boot-starter-web' // web项目
'org.springframework.boot:spring-boot-starter-data-jpa'  // JPA对应DAO
'org.springframework.boot:spring-boot-starter-security' // 权限管理
'org.springframework.boot:spring-boot-starter-thymeleaf' // view层,替代JSP
'org.springframework.boot:spring-boot-devtools' // 开发工具,热加载

最后说一下目录结构,一般而言是这样:

|-- build.gradle
|-- src
|----|-- main
|---------|-- java
|--------------|-- com.project
|---------------------|-- controller
|---------------------|-- service
|---------------------|-- repository
|---------------------|-- entity
|---------|-- resources
|--------------|-- application.properties
|--------------|-- application-dev.properties
|--------------|-- application-pro.properties

我推荐这样:

|-- build.gradle
|-- src
|----|-- main
|---------|-- java
|--------------|-- com.project
|---------------------|-- user
|--------------------------|-- controller
|--------------------------|-- service
|--------------------------|-- repository
|--------------------------|-- entity
|---------|-- resources
|--------------|-- application.properties
|--------------|-- application-dev.properties
|--------------|-- application-pro.properties

按组件区分,易查看代码,当项目成长到一定程度更加容易拆分。

热加载

代码热替换 方法一

mvn spring-boot:run

<plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <dependencies>
          <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>springloaded</artifactId>
            <version>1.2.6.RELEASE</version>
          </dependency>
        </dependencies>
        <!--
        <configuration>
          <fork>true</fork>
        </configuration>-->

      </plugin>

代码热加载方法二:

main方法启动

-javaagent:D:/software/springloaded-1.2.6.RELEASE.jar -noverify

模板热替换:

spring.thymeleaf.cache=false

必须按Contrl+F9,太傻了

参考:http://www.jianshu.com/p/ec545ce19bdd
大量的例子:https://github.com/netgloo/spring-boot-samples/tree/master/spring-boot-basewebapp
 很多干货:http://www.ibm.com/developerworks/cn/java/j-lo-spring-boot/
 默认配置的:http://www.tuicool.com/articles/veUjQba

spring boot + gradle[草稿]的更多相关文章

  1. 使用intelliJ创建 spring boot + gradle + mybatis站点

    Spring boot作为快速入门是不错的选择,现在似乎没有看到大家写过spring boot + gradle + mybatis在intellij下的入门文章,碰巧.Net同事问到,我想我也可以写 ...

  2. Spring Boot gradle

    最近有写一个电子订单商务网站,使用JAVA8,SPRING,ANGULARJS对项目使用的技术和大家分享. 第一次写博客,哪有不对需要改正的请联系改正. 因为是项目是我给别人做的无法提供源码见谅,我尽 ...

  3. spring boot gradle build:bootRepackage failed

    When running 'gradle clean build' on my spring boot project (version 1.3.6.RELEASE) on windows 10 (a ...

  4. Spring Boot gradle 集成servlet/jsp 教程及示例

    1.build.gradle 配置 注意,加入了war插件,在依赖中加入了jstl.tomcat-embed-jasper,这样才能运行jsp页面. buildscript { ext { sprin ...

  5. Spring boot + Gradle + Eclipse打war包发布总结

    首先感谢两位博主的分享 http://lib.csdn.net/article/git/55444?knId=767 https://my.oschina.net/alexnine/blog/5406 ...

  6. Spring Boot Gradle 打包可执行Jar文件!

    使用Gradle构建项目,继承了Ant的灵活和Maven的生命周期管理,不再使用XML作为配置文件格式,采用了DSL格式,使得脚本更加简洁. 构建环境: jdk1.6以上,此处使用1.8 Gradle ...

  7. [z]spring boot gradle build

    I had the same problem. I believe it is caused by the JRE that gradle is configured to use rather th ...

  8. Spring Boot 2.0系列文章(五):Spring Boot 2.0 项目源码结构预览

    关注我 转载请务必注明原创地址为:http://www.54tianzhisheng.cn/2018/04/15/springboot2_code/ 项目结构 结构分析: Spring-boot-pr ...

  9. Spring Boot Reference Guide

    Spring Boot Reference Guide Authors Phillip Webb, Dave Syer, Josh Long, Stéphane Nicoll, Rob Winch,  ...

随机推荐

  1. sybase 收集常用sql语句

    -------创建sybase设备 语句--------- disk init name="DEV_DB_CLIENT_DAT26", physname="F:\syba ...

  2. python 100例 (持续更新)

    1.题目:列表转换为字典. 程序源代码: 1 #!/usr/bin/env python 2 # -*- coding: UTF-8 -*- 3 4 i = ['a', 'b'] 5 l = [1, ...

  3. UIPopoverPresentationController使用

    UIPopoverPresentationController是什么? iOS8.0之后引入的一个方便开发者创建带箭头的弹出控制器,类似qq消息页面点击右上角加号弹出的视图. UIPopoverPre ...

  4. Rails + React +antd + Redux环境搭建

    前提条件:node和ruby on rails必须已经安装好(相关安装流程不再此处介绍) 1.nvm.node 2.npm or yarn装一个就好 3.rvm.ruby on rails 4.for ...

  5. Android Studio配置统一管理依赖版本号引用

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 本Demo采用的是其中一个方案,其他方案请阅读参考资料<Android Studio中统一管理版本号引用配置> 使用步骤 ...

  6. node处理表单文件,获取formdata的数据

    参考文章:https://blog.csdn.net/a895458278/article/details/48055143# 应用: formidable使用: 原生的node.js在处理客户端以P ...

  7. zabbix3.0监控Windows服务器

    我们下载后,解压开始有多个文件: conf目录存放是agent配置文件bin文件存放windows下32位和64位安装程序 找到conf下的配置文件 zabbix_agentd.win.conf ,修 ...

  8. 【转】Windows中设置Fiddler抓HTTPS请求的解决办法 Unable to configure Windows to Trust the Fiddler Root certificate .

    官网设置 Click Tools > Fiddler Options > HTTPS. Click the Decrypt HTTPS Traffic box. 按照上述要求,我的设置是这 ...

  9. NC 6系初始化EJB

    6系开发时,调用远程接口去操作数据时,需先调用EJB. InvocationInfoProxy.getInstance().setUserDataSource(design); InvocationI ...

  10. 禁止选择DIV内的文本(css,js写法)

    css:<span style="font-family:SimSun;font-size:18px;">/* 禁止选择div内的文字 */ #hall_body { ...