一、springboot 相关
1. 类中添加@RestController、方法中添加@GetMapping注解可实现web的路由和数据返回; 这两个注解不是springboot的是注解,是springMVC的注解
2. 在controller的方法中的参数中添加@RequestPara(value="name",defaultValue="word") 可以实现浏览器get参数的接收
在controller的方法中的参数中添加HttpServletRequest request和HttpServletResponse response参数,可以获取web请求和返回相关参数(如cookie、session、header等),这两个方法属于servlet
在controller里添加response.sendRedirect("/hello-word/string2");可以进行页面重定向,该请求返回302
在controller的上面添加@RequestMapping(name = "网络请求测试", value = "/string", method = {RequestMethod.GET, RequestMethod.POST})负责将请求与处理请求的控制器方法关联起来
3. SpringApplication.run返回值是IOC容器,可以打印容器的bean,如:System.out.println(ioc.getBean(Home.class));
4. 在controller中要使用其他类或引用其他类时,可以使用属性注入,使用@Resource或@Autowired
5. idea配置文件中中文乱码:file->settings->Editor->File Encodings: default encoding for properties files 改为UTF8,选中Transparent native-to-ascii conversion
6. SpringApplication.run 返回的是 ApplicationContext 对象,ApplicationContext和BeanFactory是spring框架为我们提供了两种不同的IoC容器
ApplicationContext是BeanFactory的子接口,BeanFactory一般供框架内部使用,不供开发使用, ApplicationContext在BeanFactory的基础上增加了企业功能,如aop、国际化和事物的支持
spring:核心就是“控制反转、依赖注入”,不用new关键字创建对象,使用ApplicationContext和BeanFactory创建对象,且命名为bean。
7. 在类中@PostConstruct和@PreDestroy类似于php的__construct和__destroy方法
8. springboot 中的事物:在方法中添加@Transactional(rollbackFor = Exception.class)注解,try catch中添加回滚代码 TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
9. 打印日志使用@Slf4j注解,在log.info("输出log日志")
二、革命性总结:
1. spring核心是“控制反转、依赖注入”, 主要是两个IoC容器类ApplicationContext和BeanFactory
2. Servlet封装了web的request和response,
3. springMVC 本质还是servlet