Spring Boot (一):简单的开始

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhanshenzhi2008/article/details/78451333

最近开始研究了下Spring Boot,简单写了个Demo。中途也遇到了一些坑。跟大家分享下。

如果你用了IDEA后,你会发现,Eclipse已经渐渐地要离开自己的怀抱中了。丰富的插件、智能提示、灵活的快捷键、多功能调试......简直是完美,如果非要挑剔,我只能说非社区版是收费版了。

一、环境搭建

Spring Boot 的搭建非常简单。如果想自己纯手动搭建,也不会话费多长时间。以下分享主要是用IDEA搭建。

环境:

  • IDEA 官网下载,最好用Ultimate版本收费版,注册码问度娘,一般都是一年的试用期。
  • JDK1.7+ 官网下载。 至少1.7版本。
  • Maven 官网下载

以图说话:


此处图省略, 最后finish .构建完成后,默认是maven。

启动:

点击一下三角形启动,或者鼠标右键放到类名,执行run操作,或快捷键shift+F10或Ctril+Shift+F10

二、客户端请求Spring Boot


新建个TestController类,写个请求,返回helloworld,编码完成后,启动服务,访问页面http://localhost:8080/hello就会出现hello World

注:

  1. RestController: 相当于@Controller、@ResponseBody的结合,当然还有写其他标记型注解,即@Target @Retention @Documented 
  2. @Controller: 控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model ,然后再把该Model 返回给对应的View 进行展示.@Controller只是定义了一个控制器,而使用@request Mapping注解的方法才是真正处理业务请求的方法。
  3. @ResquestBody:读取Request请求的body部分的数据,使用系统默认配置HttpMessageConverter进行解析,然后吧响应的数据绑定到要返回的对象上。
  4. @Target: 首先了说下元注解,即注解的注解。包含@Target @Retention @Documented @Inherited四种。、@Target:定义注解的作用目标。多个用大括号,如                    @Target({ElementType.TYPE,ElementType.METHOD})的写法。
    @Target(ElementType.TYPE)   // 接口、类、枚举、注解
    @Target(ElementType.FIELD)  // 字段、枚举的常量
    @Target(ElementType.METHOD)  // 方法
    @Target(ElementType.PARAMETER)  // 方法参数
    @Target(ElementType.CONSTRUCTOR)  // 构造函数
    @Target(ElementType.LOCAL_VARIABLE) // 局部变量
    @Target(ElementType.ANNOTATION_TYPE) // 注解
    @Target(ElementType.PACKAGE) / //    
  5. Retention(RetentionPolicy.RUNTIME):盖住姐会在class字节码文件中存在,在运行时可以通过放射机制获取。直观点,反编译文件能看到该注解。
  6. @Document:说明该注解将被包含在javadoc中。即说明是属于公共的API文档
  7. @Inherited:说明子类可以继承父类中的该注解

三、配置文件

一般配置文件,我们都用properties来写,但springBoot1.3后开始推荐使用yaml。后缀名可用yml简写也可以用yaml。yaml可读性强,又上下层次结构,比xml看起来方便。数遍提下,最近公司用yaml写前端模板文件,真的不适合,导致后来直接放弃,个人觉得模板还不如用jade,毕竟有css基础的人都会写。Spring默认加载applicantion.yaml(可以是yml或properties后缀名)。如果配置多环境,可以建立application-XX.yaml文件,但入口还是application.yaml文件,但需要在该文件配置spring.profiles.active = XX。当然还有一种方式,直接全部写到application.yaml文件里。但要 
---
spring
这样的格式来区分。
  • 单文件

  • 多个文件

  • 多环境的配置,另外一种配置文件写法如下:

 总结:

1.配置文件注意空格

2.@ConfigurationProperties(prefix="girl")注解,IDE会提示Spring Boot Configuration Annotation Procesor not foubnd in classpath的警告,可以在maven的pom.xml添加依赖,具体参考https://docs.spring.io/spring-boot/docs/1.5.8.RELEASE/reference/html/configuration-metadata.html#configuration-metadata-annotation-processor的官方介绍".3 Generating your own meta-data using the annotation processor"

3. java 文件调用. @ConfigurationProperties的类时,就不要在属性上加上@value注解。
<!-- spring-boot-configuration-processor 不影响ConfigurationProperties注解使用 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>



猜你喜欢

转载自blog.csdn.net/zhanshenzhi2008/article/details/78451333