各个子模块已经建立好互相依赖后,接下来就是构建好子模块的各级目录,写上简单的代码使我们的项目运行起来。
国际惯例,先实现hello world。
因为是单纯的输出字符串,所以只用到的Web模块。
首先:再web子模块中,创建目录,com.demo,如图所示:
接着:在com.demo目录下,创建启动类:DemoApplication.java
代码如下:
package com.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }
这样,一个spring boot的启动类建好了。
ps:
SpringBoot项目的Bean装配默认规则是根据Application类所在的包位置从上往下扫描!
“Application类”是指SpringBoot项目入口类。这个类的位置很关键:
如果Application类所在的包为:com.boot.app,则只会扫描com.boot.app包及其所有子包,如果service或dao所在包不在com.boot.app及其子包下,则不会被扫描!
即, 把Application类放到dao、service所在包的上级,com.boot.Application
接下来,创建控制器:
同样的,于com.demo目录上右键new->package。输入controller,这样,将会生成com.demo.controller目录
在controller目录下,创建controller类的文件,比如这里创建的是一个IndexController类。
得到如图所示:
在IndexController中写入代码:
package com.demo.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; @RestController public class IndexController { @RequestMapping(value = "/index") @ResponseBody public String Index(){ return "Hello world"; } }
这样,就是输出hello world了。
呃~如何运行呢?我们可以利用idea的工具来启动运行:
我们可以点左上角的Edit Configuration编辑我们的启动按钮:
然后按照下图进行相关的配置:
填好后,选择apply,然后ok.
现在,可以看到如下图所示,点击正常运行按钮,访问localhost:8080/index,就能看到hello world!了。
就目前而言,在service模块里面定义@Service是无法找到的,因为只有web模块依赖了springboot,其他的模块并没有依赖,具体请查看后续的第(七)节内容!