springboot从0开始以及一些必须掌握的技巧


0.前言

该篇博客也是整理之前的笔记,由于排版问题,不是md文件。

1.准备工作:

1.新建一个maven项目 2. -在pom.xml文件中添加父依赖,统一管理版本号     -设置java版本号     -添加springboot依赖 3.update项目  
 

2.helloworld之coding:

 
1.新建一个controller类 2.新建启动类 3.测试代码(url输入http:127.0..0.1:8080/[hello])
 

3.SpringBoot JPA-Hibernate持久化步骤:

 
1.添加依赖 2.application.properties添加数据库连接等配置信息 3.新建一个实体类 4.新建一个接口继承CrudRespository或其他类 5.新建一个Service类在其中注入CrudRespository 6.新建一个Controller 7.代码测试

4.表单验证:

 
1.实体类中需要被验证的字段加上注解,例如,@Min(value=18,message="未成年人不能入内"),@NotBlank(message="此字段必传...") 2.在Controller中相应的方法的入参上加注解@Valid,添加参数bindingResult,类型BindingResult 3.判断bindingResult.hasError() 4.处理bindingResult.getFieldError.getDefaultMessage(); 5.return null;

5.AOP统一处理请求

 
1.引入AOP依赖,在pom.xml文件中加入以下依赖 org.springframework.boot spring-boot-starter-aop 2.新建一个切面类,添加注解@Aspect,@Component,使用@Pointcut定义一个切入点(例如execution(public * com.nuc..*.*(..)), 3. 根据需要在方法中添加注解
  • 使用@Before在切入点开始处切入内容
  • 使用@After在切入点结尾处切入内容
  • 使用@AfterReturning在切入点return内容之后切入内容(可以用来对处理返回值做一些加工处理)
  • 使用@Around在切入点前后切入内容,并自己控制何时执行切入点自身的内容
  • 使用@AfterThrowing用来处理当切入内容部分抛出异常之后的处理逻辑

6.统一处理WEb请求时获取web资源的方法

 
1.获取requestRequestContextHodler.getRequestAttributes()强转成ServletRequestAttributes,再通过它直接getRequest() 2.获取request强转成HttpServletRequest,直接logger.info("url={}",request.GetRequestUrRL) 3.获取method,request.getMethod(); 4.获取ip地址,request.getRemoteAddr(); 5.获取类方法,joinPoint.getSignature().getDeclaringTypeName() + "." + joinPoint.getSignature().getName() 6.获取参数,joinPoint.getArgs()

7.统一处理异常

 
1.自己写一个Handler类 2.添加注解@ControllerAdvice 3.写一个处理异常的方法,在方法上添加注解@ExceptionHandler(value=Exception.class),表示捕获哪个异常,如果返回的是string或json数据,需要添加注解@ResponseBody,方法参数(HttpServletRequest req,Exception e ) 4.代码测试

8.在springboot中使用thymeleaf

   
1.添加依赖                org.springframework.boot          spring-boot-starter-thymeleaf       2.配置文件中关闭缓存 spring.thymeleaf.cache=false 3.在src/main/resources中新建一个文件夹templates,在下面新建一个html文件 4.新建一个Controller,例如: 5.地址栏访问

9.springboot集成Mybatis