欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Spring Boot快速入门

程序员文章站 2022-07-12 16:08:35
...

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。

Spring boot的特点

1. 创建独立的Spring应用程序
2. 嵌入的Tomcat,无需部署WAR文件
3. 简化Maven配置
4. 自动配置Spring
5. 提供生产就绪型功能,如指标,健康检查和外部配置
6. 绝对没有代码生成和对XML没有要求配置

Spring Boot 常用注解

Controller注解:

@Controller处理http请求(不常用)

pom注入依赖

<groupId>org.springframework.boot</group>
<artifactId>spring-boot-starter-thymeleaf</artifactId>

return "index";   返回html
@RestController 返回json请求(原@ResponseBody配合@Controller)
@RequestMapping 配置url映射

请求注解:@RequestMapping(value= "/hello",method=RequestMethod.Get) 可写为@GetMapping(value="/hello")

参数注解:

  • @PathVariable:一般我们使用URI template样式映射使用,即url/{param}这种形式,也就是一般我们使用的GET,DELETE,PUT方法会使用到的,我们可以获取URL后所跟的参数。

RequestMapping("hello/{age}")
public String GetAge(@PathVariable("age") String age){
  
}
  • @RequestParam:一般我们使用该注解来获取多个参数,在()内写入需要获取参数的参数名即可,一般在PUT,POST中比较常用。

@RestController
public class HelloController {
    @RequestMapping(value="/hello",method= RequestMethod.GET)
    public String sayHello(@RequestParam("id") Integer id){
        return "id:"+id;
    }
}

注解中id 不等同于后面id  前面是请求参数 

其他参数required=true 是否必填  defaultValue="0"默认值

  • @RequestBody:该注解和@RequestParam殊途同归,我们使用该注解将所有参数转换,在代码部分在一个个取出来,也是目前我使用到最多的注解来获取参数(因为前端不愿意一个一个接口的调试)例如下代码

@RestController
public class HelloController {
    @RequestMapping(value="/hello",method= RequestMethod.POST)
    public String save(RequestBody Student student){
        
    }
}

Service注解:@Component

Controller中注入Service:@Autowired

@Autowired
private StudentService studentservice;

Vo(Entity)实体注解@Entity

ID注解:

@Id
@GeneratedValue自增注解

配置文件: apllication.properties或者application.yml

推荐使用application.yml驼峰式写法    简单 易读 整洁

例如:

student:
   age:12
   height:175

 获取配置文件内容方式:

@Value("${age}")
private String age;

@ConfigurationProperties(prefix="student")
public class Test(){
private String age;
private String height;
构造函数
get 方法
set方法
}

数据库操作:

pom配置依赖注入:

<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>

<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>

application配置:

spring:
  datasource:
	driver-class-name:com.mysql.jdbc.Driver
	url:jdbc:mysql://127.0.0.1:3306/test
	username:root
	password:123456
  jpa:
	hibernate:                          
	   ddl-auto:create         自动创建表  update创建表不会删除数据 creat-drop等应用停止自动删                                                    //                             除表none不操作 validate验证和实体是否一致不一致报错
	    show-sql:true              控制台显示sql

 创建一个接口


public interface StudentService extends JpaRepository<Student,Integer>(){

  //根据某个字段查询
  public List<Student> findByAge(Integer age)







}

继承Jpa后可以调用对应实体的一些简单的增删改查

具体内容请查看详细博客

@Transactional事务回滚

 

相关标签: Spring Boot