springbboot随笔
创始人
2024-05-30 18:38:28
0

无效的源发行版问题

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
改springboot版本


4.0.0org.springframework.bootspring-boot-starter-parent2.5.6------------------------------------------------这里 com.itspringbootinit0.0.1-SNAPSHOTspringbootinitDemo project for Spring Boot1.8org.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-maven-plugin

文件执行顺序问题

在这里插入图片描述

properties>yml>yaml
先生效大的

格式问题

在这里插入图片描述
大小写敏感
缩进表示层级关系(用空格不用tab,空格数目不重要,但是必须相同)
#是注释

在这里插入图片描述

读取配置信息的三种方法

@Value
Environment
@ConfigurationProperties(prefix = “person”)//这里指定注入的确定地方

springboot 的xml文件中针对sql语句的具体写法

/*使用@mapper后,不需要在spring配置中设置扫描地址,通过mapper.xml里面的namespace属性对应相关的mapper类,spring将动态的生成Bean后注入到ServiceImpl中
@Mapper注解是由Mybatis框架中定义的一个描述数据层接口的注解,注解往往起到的都是一个描述性作用,用于告诉sprigng框架此接口的实现类由Mybatis负责创建,
并将其实现类对象存储到spring容器中。*/
@Mapper
@Repository
public interface UserMapper {//@Select("select * from t_user")public List findALL();
}





当尝试再sql中加入一些参数时看注解使用方式和参数传递及#{}和${}

Mybatis 在 insert 插入操作后返回主键 id
方法一

配置 useGeneratedKeys 和 keyProperty

useGeneratedKeys="true" 表示给主键设置自增长。
keyProperty="sid" 表示将自增长后的 Id 赋值给实体类中的 sid 字段。
insert into student(name, age)VALUES (#{name} , #{age})

方法二
在 insert 标签中编写 selectKey 标签

insert into student(name, age)VALUES (#{name} , #{age})SELECT LAST_INSERT_ID()

8
< insert> 标签中没有 resultType 属性,但是 < selectKey> 标签是有的。
order=“AFTER” 表示先执行插入语句,之后再执行查询语句。
keyProperty=“sid” 表示将自增长后的 Id 赋值给实体类中的 sid 字段。
SELECT LAST_INSERT_ID() 表示 MySQL 语法中查询出刚刚插入的记录自增长 Id。
方法三

这种方法需要在一定条件下才能使用,就是 name(也可以是其他唯一字段如订单号) 需要是 unique,不可重复的。

insert into student(name, age)VALUES (#{name} , #{age})select sid from student where name = #{name}

原理和上面查id是一样的,就是在执行插入语句之后,再执行查询语句,将 sid 查出来

ioc

基于xml方式注入属性。。DI依赖注入。就是注入属性
第一种构造方式。。使用set方法进行注入
第二种构造方式。。使用有参数构造进行注入
p名称空间注入,简化xml配置方式,添加p名称在配置文件中,在bean标签里进行操作
注入外部bean和内部bean和级联赋值和集合
bean默认单实例。可以用singleton属性设置为prototype改成多实例。单实例在加载配置文件时创建对象。多实例在调用getbean方法时进行创建对象。

ioc。控制反转。吧创建过程交给spring进行管理
aop。面相切面。不修改源码进行功能增强
底层实现:有接口情况:使用jdk动态代理:实现类带对象
没有接口情况:使用CGLIB动态代理:子类带对象
术语:连接点:一个类中可以被增强的方法就叫连接点
切入点:实际被增强的方法
通知(增强):实际增强的逻辑部分(增加的业务逻辑)(前置通知,后置通知,环绕通知,异常通知,最终通知)
切面:吧通知应用到切入点的过程

spring boot bean 的生命周期:创建前准备,创建实例,依赖注入,容器缓存,销毁实例

在这里插入图片描述

请求--tomcot--filter--servlet--interceptor--controller
spring拦截器:aop的一种具体应用,可以应用在web,application,swing中,基于反射实现(登录判断,权限判断,日志)
serclet过滤器:依赖tomcat,只能在web中应用,基于过滤器applicationfilterchain实现(字符编码设计,响应数据压缩)

collection:接口存储一组不唯一无序的对象
list:接口存储一组不唯一,有序的对象(数组)
arraylist:内存中分配了连续的空间,实现长度可变的数组,遍历元素和随机访问效率高,添加和删除效率低,俺内容查询效率低(数组)
linkedlist:双向链表存储方式,遍历和随机访问效率低,插入删除头尾数据效率高
set:接口存储一组唯一无序的对象
hashset:基于 HashMap 来实现的,是一个不允许有重复元素的集合。允许有 null 值,是无序的,不是线程安全的, 如果多个线程尝试同时修改 HashSet,则最终结果是不确定的。
linkhashset:
treeset
map:存储键值对,键唯一无序,值不唯一无序
hashmap:是一个散列表,它存储的内容是键值对(key-value)映射。最多允许一条记录的键为 null,不支持线程同步。是无序的
linkhashmap
treemap

在这里插入图片描述

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...