Spring Boot簡介:
是一個簡化Spring開發的框架。用來監護spring應用開發,約定大於配置,去繁就簡,just run 就能創建一個獨立的,產品級的應用。
我們在使用Spring Boot時只需要配置相應的Spring Boot就可以用所有的Spring組件,簡單的說,spring boot就是整合了很多優秀的框架,不用我們自己手動的去寫一堆xml配置然後進行配置。從本質上來說,Spring Boot就是Spring,它做了那些沒有它你也會去做的Spring Bean配置。
SpringBoot使用:
1)創建一個maven程序,導入依賴。
<!--父工程,用於指定默認配置--> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.4.RELEASE</version> <relativePath/> </parent> <!--指定版本--> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> <spring-cloud.version>Finchley.SR1</spring-cloud.version> <mapper.starter.version>2.0.3</mapper.starter.version> <mysql.version>5.1.32</mysql.version> </properties> <dependencies> <!--web依賴--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--統用mapper啓動器--> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper-spring-boot-starter</artifactId> <version>${mapper.starter.version}</version> </dependency> <!--mysql 驅動--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql.version}</version> </dependency> <!--生成set和get等方法--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency> </dependencies> <build> <!--maven插件構建--> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
2)編寫Controller,Service,Dao
@RestController @RequestMapping("user") @Slf4j public class UserController { // private Logger log=LoggerFactory.getLogger(UserController.class); @Autowired private UserService userService; @GetMapping("/{id}") public User queryUserById(@PathVariable("id") Integer id){ log.info("11111111111111111111111111111"); return userService.queryById(id); } }
@Service public class UserService { @Autowired private UserMapper userMapper; public User queryById(Integer id){ return userMapper.selectByPrimaryKey(id); } }
public interface UserMapper extends Mapper<User> { //繼承通用mapper,通用mapper,默認集成了Mybatis,jdbc等。含有對單表的crud操作。 }
@Service public class UserService { @Autowired private UserMapper userMapper; public User queryById(Integer id){ return userMapper.selectByPrimaryKey(id); } } @Table(name = "top_user") @Data public class User { @Id @KeySql(useGeneratedKeys = true)//返回主鍵 private Integer id; private String username; private String password; }
3)配置文件編寫,創建application.xml文件放在resource文件夾下
server: port: 8081 spring: datasource: url: jdbc:mysql://localhost:3306/cloud username: root password: root mybatis: type-aliases-package: top.user.pojo//實體類 configuration: map-underscore-to-camel-case: true//開啓駝峯
4)編寫主函數
@SpringBootApplication @MapperScan("top.user.mapper") public class UserApplication { public static void main(String[] args) { SpringApplication.run(UserApplication.class); } }
5)打開Chrome,127.0.0.1:8080/user/{id};即可得到Json。