美文网首页我爱编程
SpringBoot入门使用

SpringBoot入门使用

作者: 其实我很菜啊 | 来源:发表于2018-05-27 11:28 被阅读0次

在学习 SpringBoot 之前,最好先学习 SSM 这样会对 SpringBoot 更容易上手。在使用 SSM 时我们难免要配置大量的配置文件,如果不使用 maven 管理还要导入大概四五十个 jar 包,还要花上时间去配置服务器。这些繁琐的工作让我们的开发效率大大的降低,那么有没有一种高效开发的方法呢?SpringBoot 完美的帮我们解决了这些烦恼。
这样说你可能没有什么感触,那么就看看一下两张图片


ssm SpringBoot

现在不需要我再多说什么了。

SpringBoot配置

在 SpringBoot 中你需要写的配置文件只有两个 pom.xml 和 applicationyml

  • pom.xml

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.1.RELEASE</version>
    </parent>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <!-- Spring-Mybatis -->

        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.0</version>
        </dependency>

        <!-- MySQL -->
        <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>

这个文件主要是配置 maven 仓库引入相关 jar 包

  • application.yml
server:
  port: 8080
  tomcat.uri-encoding: UTF-8

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3308/test
    username: root
    password:*******

mybatis:
  type-aliases-package: com.model

application.yml 用于配置相关容器信息
至此 SpringBoot 的配置已经全部完成,现在你就可以如往常使用 SpringMVC 一样进行开发了

MVC代码

默认你已经学习了 SSM,所以一些重复和用法基本一致不再介绍,只针对不同点指出说明

  • dao
@Repository
public interface userMapper {
    @Select("select *from user where id = #{id}")
    public List<User>getUser(Integer id);
}

其实这只是 mybatis 的另一种写法,以往我们习惯于用 xml 逆向工程使用 mybatis,如果使用这种写法不需要配置文件

  • controller
@RestController
public class UserController {

    @Autowired
    private UserService UserService;


    @RequestMapping("/getUser")
    public Object getUserInfo(User user){
        System.out.printf(""+user.getId());
        return UserService.selectUser(user.getId());
    }

    @RequestMapping("/sayhello")
    public Object sayHello(){
        return "Hello";
    }

}

@RestController注解相当于@ResponseBody + @Controller合在一起的作用。即这样写每一个方法返回的是 JSON 类型的数据。

  • 启动类
@SpringBootApplication(scanBasePackages="com.*")
@MapperScan("com.dao")
public class SampleController {

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

这是整个 web 工程的入口,也是与其他框架最大的不同之处。这里主要关注
@SpringBootApplication注解,它包括三个注解:

  1. @Configuration:表示将该类作用springboot配置文件类。
  • 1.1 @Configuration:提到@Configuration就要提到他的搭档@Bean。使用这两个注解就可以创建一个简单的spring配置类,可以用来替代相应的xml配置文件。
  1. @EnableAutoConfiguration:表示程序启动时,自动加载springboot默认的配置。
  • 2.1 @EnableAutoConfiguration:能够自动配置spring的上下文,试图猜测和配置你想要的bean类,通常会自动根据你的类路径和你的bean定义自动配置。
  1. @ComponentScan:表示程序启动是,自动扫描当前包及子包下所有类。
  • 3.1 @ComponentScan:会自动扫描指定包下的全部标有@Component的类,并注册成bean,当然包括@Component下的子注解@Service,@Repository,@Controller。

@MapperScan 扫描 dao 层中所有 mapper 对象
注意:启动类必须放在 controller 同一个目录之内,或在 controller 目录之上

启动

SpringBoot 内置了 tomcat 8,现在你可以如使用普通的 javaApplication 一样直接 run 就好。

启动成功

在云服务器中我们不可能使用这种启动方式,那么就要使用到 SpringBoot 的热部署,在 pom.xml 添加以下代码

<plugin>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-maven-plugin</artifactId>
          <dependencies>
            <!-- spring热部署 -->
            <dependency>
              <groupId>org.springframework</groupId>
              <artifactId>springloaded</artifactId>
              <version>1.2.6.RELEASE</version>
            </dependency>
          </dependencies>
          <configuration>
            <mainClass>cn.springboot.Mainspringboot</mainClass>
          </configuration>
</plugin>

最后打开 CMD 输入

$ mvn clean spring-boot:run

对于 SpringBoot 的使用远不止那么简单,还有更多强大的功能没去发掘,由于最近赶比赛我也只是初步了解使用了一下,具体操作还要以后在实际项目中继续学习。

相关文章

网友评论

    本文标题:SpringBoot入门使用

    本文链接:https://www.haomeiwen.com/subject/wshbjftx.html