专业的编程技术博客社区

网站首页 > 博客文章 正文

Java实战极速训练营-第五课(java实战培训班)

baijin 2024-09-12 11:10:52 博客文章 4 ℃ 0 评论

以通俗易懂的方式,帮助广大想快速学习java的同学,特整理用于快速学习java,以实例讲解项目中常用的流行实战技术15天速成,让你基本掌握整个应用开发的技能,剩下的就是多写多实战。




1. @SpringBootApplication

@SpringBootApplication:表示这是一个springboot应用程序


//作用:说明是SpringBoot应用程序
@SpringBootApplication
public class Demo2Application {
    public static void main(String[] args) {
        SpringApplication.run(Demo2Application.class, args);
        System.out.println("Demo2Application已启动");
    }
}




2. @RestController

说明此控制器是一个返回json数据格式的接口,可以与@RequestMapping 搭配


//作用:返回json格式的数据
@RestController
//作用:本类的所有接口地址以`/day05`开始
@RequestMapping("/day05")
public class Day05Controller {

}




3. @GetMapping

@GetMapping(value="/get"):表示接受的是GET请求,整个请求路径和控制器的请求路径叠加

 //作用:返回json格式的数据
@RestController
//作用:本类的所有接口地址以`/day05`开始
@RequestMapping("/day05")
public class Day05Controller {
    //作用:定义一个请求路径是`/get`的`GET`请求;
    //最终路径是 `/day05/get`
    @GetMapping(value = "/get")
    public R<Person> get() {
    }
}




4. @PostMapping

@PostMapping(value="/get"):表示接受的是POST请求,整个请求路径和控制器的请求路径叠加

 //作用:返回json格式的数据
@RestController
//作用:本类的所有接口地址以`/day05`开始
@RequestMapping("/day05")
public class Day05Controller {
    //作用:定义一个请求路径是`/post`的`POST`请求;
    //最终路径是 `/day05/post`
    @PostMapping(value = "/post")
    public R<Person> post() {
    }
}




5. @PutMapping

@PutMapping(value="/get"):表示接受的是POST请求,整个请求路径和控制器的请求路径叠加

 //作用:返回json格式的数据
@RestController
//作用:本类的所有接口地址以`/day05`开始
@RequestMapping("/day05")
public class Day05Controller {
    //作用:定义一个请求路径是`/put`的`PUT`请求;
    //最终路径是 `/day05/put`
    @PutMapping(value = "/put")
    public R<Person> put() {
    }
}



6. @DeleteMapping

@DeleteMapping(value="/get"):表示接受的是DELETE请求,整个请求路径和控制器的请求路径叠加

 //作用:返回json格式的数据
@RestController
//作用:本类的所有接口地址以`/day05`开始
@RequestMapping("/day05")
public class Day05Controller {
    //作用:定义一个请求路径是`/delete`的`DELETE`请求;
    //最终路径是 `/day05/delete`
    @DeleteMapping(value = "/delete")
    public R<Person> delete() {
    }
}



7. 接口方法获取参数的注解

@RequestParam:获取跟在请求路径后的参数值

@PathVariable:获取请求路径中同名的参数值

@RequestBody:获取body中传递的对象参数值



//作用:定义一个请求路径是`/user`的`GET`方法,必传参数:类型是Integer,参数名userId
@GetMapping("/user")
public R<Integer> insert(@RequestParam Integer userId) {
    return R.ok(userId);
}


    //作用:定义一个请求路径是`/user1`的`GET`方法,非必传参数:类型是Integer,参数名userId1
    @GetMapping("/user1")
    public R<Integer> insert1(@RequestParam(name = "userId1", required = false) Integer userId1) {
        return R.ok(userId1);
    }

    //作用:定义一个请求路径是`/user`的`GET`方法,必传path参数:类型是Integer,参数名userId
    @GetMapping("/user/{userId}")
    public R<Person> getUser(@PathVariable Integer userId) {
        return R.ok(scoreService.getUser(userId));
    }
    
     //作用:分页查询
    @GetMapping("/list")
    public R<RPage<Person>> list(@Validated @RequestBody ScoreParam scoreParam) {
        List<Person> list = new ArrayList<>();
        Integer total = 10;
        int start = (scoreParam.getPage().getPageNum() - 1) * scoreParam.getPage().getPageSize() + 1;
        int end = start + scoreParam.getPage().getPageSize() - 1;
        int end1 = (10 - 1) * scoreParam.getPage().getPageSize() + scoreParam.getPage().getPageSize() + 1;
        end = end <= end1 ? end : end1;
        for(int i = start; i <= end; i++) {
            list.add(new Person(i,"test-" + i));
        }
        return R.page(total, list);
    }   




8. @Value

@Value:获取配置文件中的值

//作用:一般的字符串取值
@Value("${my-property.name:abc}")
private String name;



9. @Configuration

@Configuration:声明是一个配置类;@ConfigurationProperties:绑定配置类

@Data
//作用:声明这是一个配置类
@Configuration
//作用:配置类的前缀
@ConfigurationProperties("my-property")
public class MyProperty {
    private List<Integer> userIds;
}



10. @Bean、@Component、@Repository、@Service、@Controller

@Bean:用在方法上,由Spring创建一个bean实例

@Component(底层)、@Respository(数据访问)、@Service(业务逻辑)、@Controller(控制器)用在类上,由Spring创建一个bean实例;



@Configuration
public class MyBean {

    @Bean
    public Person person() {
        return new Person(0, "person.bean");
    }

}

@Service
public class ScoreServiceImpl implements ScoreService {

}

/**
 * 作用:提供redis服务,可供其他地方使用
 */
@Component
public class RedisService {

}



11. @ComponentScan

@ComponentScan:组件扫描,扫描包下的组件

12. @PostConstruct

@PostConstruct :用在方法上,在类构造器调用完后,调用这个方法,以用来初始化


@PostConstruct
public void init() {
    log.error("===ScoreServiceImpl.init===");
}






下节课程预报

1. druid数据库连接

2. mybatis plus 增删改查

3. MybatisLog 插件



沟通交流,请添加好友

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表