wordpress百度站长主动推送,如何申请注册企业邮箱,海外推广有哪些渠道,雅诗兰黛网络营销策划书一、参数绑定常用注解 RequestParam#xff1a;用于将请求参数绑定到你的方法参数上。 PathVariable#xff1a;用于将路径变量绑定到你的方法参数上。 RequestBody#xff1a;用于将请求主体绑定到你的方法参数上#xff0c;通常用于绑定POST请求的JSON或XML数据。 Req…
一、参数绑定常用注解 RequestParam用于将请求参数绑定到你的方法参数上。 PathVariable用于将路径变量绑定到你的方法参数上。 RequestBody用于将请求主体绑定到你的方法参数上通常用于绑定POST请求的JSON或XML数据。 RequestHeader用于将请求头部信息绑定到你的方法参数上。 CookieValue用于将Cookie值绑定到你的方法参数上。
主要的区别在于 绑定的位置不同RequestParam 是请求参数PathVariable 是路径变量RequestBody 是请求体
二、mybatis关联查询
1、resultType
作用将查询结果按照SQL列名与实体类属性名一致性映射到实体类对象中。 场合常见一些明细记录的展示比如用户购买商品明细将关联查询信息全部展示在页面时此时可 直接使用resultType将每一条记录映射到实体类中在前端页面遍历listlist中是实体类即可。
2、resultMap
使用association和collection完成一对一和一对多高级映射对结果有特殊的映射要求。
3、association
作用将关联查询信息映射到一个实体类对象中。 场合为了方便查询关联信息可以使用association将关联信息映射为当前对象的一个属性比如查询 订单以及关联用户信息。
4、collection
作用将关联查询信息映射到一个list集合中。 场合为了方便查询遍历关联信息可以使用collection将关联信息映射到list集合中比如查询用户权 限范围模块及模块下的菜单可使用collection将模块映射到模块list中将菜单列表映射到模块对象的 菜单list属性中这样的作的目的也是方便对查询结果集进行遍历查询。如果使用resultType无法将查询 结果映射到list集合中。
5、resultMap的继承
resultMap标签可以通过extends属性来继承一个已有的或公共的resultMap避免重复配置的出现减 少配置量。
!-- 父resultMap标签--
resultMap idbaseResultMap typecom.gs.entity.Ordersid columnid propertyid/result columnorder_number propertyorderNumber/result columntotal_price propertytotalPrice/result columnstatus propertystatus/result columnuser_id propertyuserId/
/resultMap
!-- 继承父resultMap标签中的配置避免重复配置 --
resultMap idsubResultMap typecom.gs.entity.Orders
extendsbaseResultMapassociation propertyusers javaTypecom.gs.entity.Usersid columnid propertyid/result columnusername propertyusername/result columnpassword propertypassword/result columnrealname propertyrealname//association
/resultMap
三、Bean对象生命周期后续需详细补充 实例化Instantiation: Spring容器通过反射或者工厂方法创建Bean的实例。 属性赋值Populate Properties: 为Bean的属性设置值和对其他Bean的引用。 初始化Initialization: 如果Bean实现了BeanNameAware, BeanFactoryAware, ApplicationContextAware等接口会调用对应的方法。然后如果BeanPostProcessor被注册相应的postProcessBeforeInitialization()方法会被调用。最后如果Bean实现了InitializingBean接口其afterPropertiesSet()方法会被调用或者如果Bean使用init-method属性声明了初始化方法这个方法也会被调用。 使用In use by application: Bean现在可以被应用程序使用了。 销毁Destruction: 当容器关闭时如果Bean实现了DisposableBean接口其destroy()方法会被调用或者如果Bean使用destroy-method属性声明了销毁方法这个方法也会被调用。
四、spring boot自动装配后续需详细补充 一、核心注解 1. SpringBootApplication 这是一个组合注解包含了 Configuration 、 EnableAutoConfiguration 和 ComponentScan 。其中 EnableAutoConfiguration 是实现自动装配的关键注解。
springboot是一个脚手架工具约定大于配置。我们只需要按照springboot的规范来开发就能减少很多配置当需要开发web项目的时候
SpringBootApplication有三个子注解分比为1、2、3 1:SpringBootConfiguration (有一个子注解:Configuaration) 1.1:Configuaration (有一个子注解:Component) 1.1.1:Component 作用就是启动类声明为bean 2:EnableAutoConfiguration 开启自动注入有两个子注解 2.1AutoConfigurationPackage 自动配置包有一个子注解import 2.1.1Import({Registrar.class}) (没有子注解) 2.2Import({AutoConfigurationImportSelector.class}) (没有子注解) 3:ComponentScan 组件扫描没有子注解作用包扫描项目包路径 在这三个注解中第一和第三都没有太大的意思所以我们主要看第二个注解就好了。在第二个注解中使用了两个import注解。就是这两个注解解释了自动装配的含义
二、自动配置类 Spring Boot 在启动时会扫描类路径下的 META-INF/spring.factories 文件这个文件中定义了大量的自动配置类。自动配置类通常以 XXXAutoConfiguration 的形式命名。 例如当引入了 Spring Boot Web 模块依赖时会自动加载 SpringWebMvcAutoConfiguration 自动配置类它会根据类路径下是否存在相关的类如 DispatcherServlet 来决定是否进行 Web 相关的配置如配置视图解析器、静态资源处理等。 三、条件装配 自动配置类通常使用 Conditional 注解来进行条件装配。这些条件可以基于类路径上是否存在特定的类、系统属性是否满足特定条件等。 例如 ConditionalOnClass 注解表示只有当类路径上存在特定的类时才会进行自动配置。 四、导入其他配置 自动配置类还可以通过 Import 注解导入其他配置类或组件进一步扩展自动装配的功能。 总之Spring Boot 的自动装配原理是通过扫描特定的配置文件加载自动配置类并根据条件进行装配从而实现了快速、便捷的开发体验减少了大量的手动配置工作。