@注解
注解大全
只记录常见的和学习的,其他的请参考文献
MyBatis注解式开发
参考文献:
- 详细: Mybatis注解开发
代码 | 介绍 | 作用位置 | 更多 |
@MapperScan("zhe.xin.*.*.mapper") | 用于在Spring Boot项目的启动类上配置,用于扫描指定路径下的所有接口,包括Mapper接口。 | 入口处,如Springboot启动类 | * 号可以通配 |
@EnableTransactionManagement | 开启事务处理 , 使这个类支持事务 | 入口处,,如Springboot启动类 | |
@Insert | 增,返回值Int,表示增加的行数。 | 某接口的方法 | 写在一个接口类的方法上 |
@Delete | 删,返回值Int,表示被成功删除的记录数。 | ||
@Update | 改,返回值Int,表示被成功修改的记录数 | ||
@Select | 查,返回值Int,纪录被成功删除的记录数。 | ||
自定义映射合集 |
( id = "userDiyMapper" ,
value = {
id = true,property = "id",column = "id"),
(property = "username",column = "username1"),
(})
|
||
单个自定义映射 | id 是否是主键字段 column 数据库的列名 -- 自定义的名称 property 需要装配的属性名 --原有名称 one 需要使用的@One 注解(@Result(one=@One)())) many 需要使用的@Many 注解(@Result(many=@many)())) |
||
@One | 代替了<assocation> 标签,是多表查询的关键,在注解中用来指定子查询返回单一对象。一对一 |
@One 注解属性介绍: select 指定用来多表查询的 sql mapper fetchType 会覆盖全局的配置参数 lazyLoadingEnabled。 使用格式:@Result(column=" “,property=”",one=@One(select="")) |
|
@Many | 代替了<collection> 标签,是是多表查询的关键,在注解中用来指定子查询返回对象集合。多对一 |
注意:聚集元素用来处理“一对多”的关系。需要指定映射的 Java 实体类的属性,属性的 javaType(一般为 ArrayList)但是注解中可以不定义。 使用格式:@Result(property="",column="",many=@Many(select="")) |
|
在MyBatis中有@SelectProvider 、@UpdateProvider 、@DeleteProvider 、@InsertProvider 注解。当使用这些注解时将不在注解中直接编写SQL,而是调用某个类的方法来生成SQL。 |
实现动态 SQL 映射 |
|
|
@CacheNamespace | 开启二级缓存 | 接口的类上 | blocking=true |
Junit测试类
参考文献:
代码 | 介绍 | 作用位置 | 更多 |
@Test | 声明这个方法是给测试方法 , 声明后这个方法可以直接执行 | 方法 | 测试包.测试类下的方法 |
@Before | 这个测试类中,所有测试方法执行前都先执行此方法 | ||
@After | 这个测试类中,所有测试方法执行后都会执行此方法 |
Spring
参考文献:
- 这个看着很乱 : Spring中的注解大全与详解_
- 推荐: Spring 注解大全与详解
支持注解需要添加头文件:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
</beans>
代码 | 介绍 | 作用位置 | 更多 |
"studentDao") (以下三个作用相同 , 仅为分层
|
将此类注册为:bean | 某个类 | 若为 |
@Autowired |
写在属性上方进行依赖注入时,可以省略setter方法。 意思是 : 自动注入 |
属性上方、setter方法上方、构造方法上方。 |
容器中有多个对象匹配类型时,会找beanId等于属性名的对象,找不到会报错。 先找名称 , 后找标签 |
"bean的id") | (在按照类型注入对象的基础上,再按照bean的id注入。 | @Qualifier必须和@Autowired一起使用。 | |
@Value("注入到Spring") | 直接注入值, 只能 注入基本数据类型 | 属性上方 |
spring如果配置了:
就可以: "${jdbc.url}") ( |
@Configuration | 表示该类是一个配置类 | 配置类上方 | 无 |
"zhe.xin") | (初始化Spring时, 自动扫描这个包下的@ | 入口处,,如Springboot启动类 | 无 |
@PropertySource | 代替配置文件中的<context:property-placeholder> 扫描配置文件 ("classpath:db.properties") |
便于Value注入 , classpath:为配置路径 | |
JdbcConfig.class) | (
如果配置过多,会有多个配置类,该注解可以为主配置类导入其他配置类 |
主配置类上方 |
无 |
@Bean | 将一个方法返回的类, 注册为Bean | 某个方法 |
于@@Bean 参考: |
SpringMVC+SpringBoot
参考文献:
代码 | 介绍 | 作用位置 | 更多 |
"/c3") 通用 (@GetMapping 查询请求 更多请求:请求方式 |
给控制器方法设置 请求路径 需要同时添加@Controller 注解注册bean |
方法或类上方。用于类上,表示类中的所有控制器方法都是以该地址作为父路径。 |
|
name = "username",defaultValue = "sxt",required = false) | (设置请求参数名称 , 默认是方法参数名 | 请求方法 的 参数前 |
|
"User-Agent") | (获取请求头信息 | 请求方法 的 参数前 | 这个参数的值 , 不再是请求内容 , 而是请求头内容 |
获取Cookie信息 | 请求方法 的 参数前 | 这个参数的值 , 不再是请求内容 , 而是Cookie内容 | |
将模型中的name数据保存到session中
|
原本只在本此请求中的model添加的session中 | ||
1. 被@ModelAttribute注释的方法会在此controller每个方法执行前被执行。因此对于一个controller映射多个URL的用法来说,要谨慎使用。 2.被@ModelAttribute注释参数,从 model.addAttribute 中获取值 |
注解在方法上 一个方法的参数 |
先用@ModelAttribute注释的类添加: 再从方法参数中获取 , |
|
@PathVariable |
URL 中的 {xxx} 占位符可以通过@PathVariable(“xxx“) 绑定到控制器处理方法的形参中 |
请求方法 的 参数前 | 这个参数的值 , 不再是请求内容 , 而是占位符的内容 |
@PostConstruct
|
在自动注入(@AutoWired) 注入后执行一些初始化操作 |
方法 | PostConstruct注解详细使用说明及理解_思维的深度的博客-CSDN博客 |
@Nullable
|
允许传递参数是此参数为null |
请求方法 的 参数前 | 无 |
@RequiredArgsConstructor
|
写在类上面可以代替@AutoWired注解,需要注意的是:在注入的时候需要用final定义,或者使用@notnull注解 |
类 | 注解@RequiredArgsConstructor详解-CSDN博客WW |
|
Fashjson序列化
参考文献:
代码 | 介绍 | 作用位置 | 更多 |
@JSonField | 可在进行序列化和反序列化时 进行 个性功能 定制。 | 用于方法上,字段上和参数上 |
|
@JSonType | 该注解作用于类上,对该类的字段进行序列化和反序列化时的特性功能定制 | 类上 |
|
SpringbootSocket
参考文献:
- 无
代码 | 介绍 | 作用位置 | 更多 |
@ServerEndpoint("/ws/")
|
注册当前类为Socket路径为:ws | 类 | 要启动:
才会被扫描 |
|
|||
@OnClose
|
关闭 | 方法 | // 执行关闭连接时的操作 |
@OnMessage
|
接收消息 | 方法 | // 处理客户端发送的消息 |
@OnOpen
|
连接 | 方法 | // 在建立连接时执行的操作 |
模板
参考文献:
- 无
代码 | 介绍 | 作用位置 | 更多 |
模板
参考文献:
- 无
代码 | 介绍 | 作用位置 | 更多 |