@Controller:在Controller类前使用
@Controller 用于标记在一个类上,使用它标记的类就是一个SpringMVC Controller 对象。分发处理器将会扫描使用了该注解的类的方法。通俗来说,被Controller标记的类就是一个控制器,这个类中的方法,就是相应的动作。
@RequestMapping(value = "/putPath"):在Controller方法前面使用,定义访问请求路径
@RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。比如跳转到登录页面的路径就是localhost:8080/项目名/putPath
@ResponseBody:在Controller方法前使用
@ResponseBody是作用在方法上的,表示有返回值。一般在异步获取数据时使用【也就是AJAX】,在使用 @RequestMapping后,返回值通常解析为跳转路径,但是加上 @ResponseBody 后返回结果不会被解析为跳转路径
@RequestBody:在Controller方法前使用
@RequestBody是作用在形参列表上,用于将前台发送过来固定格式的数据【xml 格式或者 json等】封装为对应的 JavaBean 对象,封装时使用到的一个对象是系统默认配置的 HttpMessageConverter进行解析,然后封装到形参上。
@Autowired:声明引用类
@Autowired它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。 通过 @Autowired的使用来消除 set ,get方法。
@Autowired
private IHisDataServiceActionService hisDataServiceActionService;
@Override:在实现类使用 Impl
@Override帮助自己检查是否正确的复写了父类中已有的方法。告诉读代码的人,这是一个复写的方法
@SuppressWarnings("rawtypes") :在方法内和方法前都可以使用
SuppressWarnings压制警告,即去除警告。rawtypes是说传参时也要传递带泛型的参数
@Resource:在实体类使用
@Resource默认按照ByName自动注入,需要导入包javax.annotation.Resource。
@Resource有两个重要的属性:name和type,而Spring将
@Resource注解的name属性解析为bean的名字,而type属性则解析为bean的类型。所以,如果使用name属性,则使用byName的自动注入策略,而使用type属性时则使用byType自动注入策略。如果既不制定name也不制定type属性,这时将通过反射机制使用byName自动注入策略。
@MapperScan(value = "指定要扫描的Mapper类的包的路径")
直接在Mapper类上面添加注解@Mapper,这种方式要求每一个mapper类都需要添加此注解,麻烦。
通过使用@MapperScan可以指定要扫描的Mapper类的包的路径
@SpringBootApplication 是springBoot的项目启动方法
@SpringBootApplication是一个复合注解,包括
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan
@GetMapping("访问路径名") 和 @PostMapping("访问路径名")
@GetMapping是一个组合注解,是@RequestMapping(method = RequestMethod.GET)的缩写。
@PostMapping是一个组合注解,是@RequestMapping(method = RequestMethod.POST)的缩写。
@RequiresPermissions 解释
@RequiresAuthentication
验证用户是否登录,等同于方法subject.isAuthenticated() 结果为true时。
@RequiresUser
验证用户是否被记忆,user有两种含义:一种是成功登录的(subject.isAuthenticated() 结果为true),另外一种是被记忆的(subject.isRemembered()结果为true)。
@RequiresGuest
验证是否是一个guest的请求,与@RequiresUser完全相反。 换言之,RequiresUser == !RequiresGuest。此时subject.getPrincipal() 结果为null.
@RequiresRoles
例如:@RequiresRoles("aRoleName");void someMethod();如果subject中有aRoleName角色才可以访问方法someMethod。如果没有这个权限则会抛出异常AuthorizationException。
@RequiresPermissions
例如: @RequiresPermissions({"file:read", "write:aFile.txt"} )void someMethod();
要求subject中必须同时含有file:read和write:aFile.txt的权限才能执行方法someMethod()。否则抛出异常AuthorizationException。