- 博客(31)
- 收藏
- 关注
原创 junit 测试文件上传
junit 测试文件上传 @Autowired private InsuranceProductChannelService insuranceProductChannelService; @Autowired private WebApplicationContext wac; private MockMvc mockMvc; /** * 在每次测试执行前构建mvc环境 */ @Before public void
2021-11-17 14:45:38 978
原创 1-JDBC-基本使用
仅供学习参考,自我复习使用。一、JDBC简介Java DataBase Connectivity: Java 数据库连接,是Sun公司提供的一套与平台无关的用于执行SQL语句的标准javaAPI,可以方便实现多种关系型数据库的统一操作。二、为什么使用JDBCJava提供访问数据库规范称为JDBC,而生产厂商提供规范的实现类称为驱动。每个数据库厂商都需要提供自己的驱动,用来连接自己公司的数据库。试想假如没有JDBC接口规范,以我们常见的mysql,oracle为例,mysql厂商自己写一套实现类(驱
2021-02-03 17:55:32 145
原创 6-Mysql-表锁,行锁
本文知识点来源于网络,仅限学习笔记使用,记录学习过程与心得,如有不适,请联系。一、表锁偏向MyISAM 存储引擎,开销小,加锁快,无死锁,锁定力度大,发生锁冲突的概率最高,并发最低。先看几条常用sql:#查看表有没有被锁SHOW OPEN TABLES;SHOW OPEN TABLES WHERE in_use > 0; #给表加读锁LOCK TABLE 表名 READ;#给表加写锁LOCK TABLE 表名 WRITE;#对表解锁UNLOCK TABLES;新建表tabl
2021-01-28 19:28:51 567
原创 12-AOP-aop功能测试
本文知识点来源于尚硅谷,感谢尚硅谷为广大学子提供的优质教育资源,感谢各位老师热情指导,本文仅作为学习笔记使用,记录学习心得,如有不适,请联系作者。
2021-01-28 00:07:20 440
原创 5-Mysql-Explain查询执行计划
本文知识点来源于网络,仅限学习笔记使用,记录学习过程与心得,如有不适,请联系。一、性能分析1.1 表设计准则1.1.1 关系型数据库三范式数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值。第一范式是对关系模式的基本要求,不满足第一范式的数据库就不是关系数据库。要求数据库表中的每一个实例或行必须可以被唯一的区分要求一个数据库表中不包含已在其他表中包含的非主关键字信息。1.1.2 拆表大表拆小表,有大数据的列单独拆成小表。在一个数据库中,一般不会涉及属性过多的表。在一个
2021-01-26 22:50:08 130
原创 11-注解驱动开发-@Profile
本文知识点来源于尚硅谷,感谢尚硅谷为广大学子提供的优质教育资源,感谢各位老师热情指导,本文仅作为学习笔记使用,记录学习心得,如有不适,请联系作者。Spring 为我们提供的可以根据当前环境,动态的激活和切换一系列bean的功能。指定组件在哪个环境下才能被注册到容器中,不指定,任何环境下都能注册 。加了环境标识的bean,只有这个环境被激活的时候才能注册到容器中 默认是default环境。已切换数据源为例:导包: <dependency> <groupId>c3p0
2021-01-25 22:31:50 108
原创 10-注解驱动开发-Aware接口及其实现类
本文知识点来源于尚硅谷,感谢尚硅谷为广大学子提供的优质教育资源,感谢各位老师热情指导,本文仅作为学习笔记使用,记录学习心得,如有不适,请联系作者。我们自定义组件想要使用Spring容器底层的一些组件(如:ApplicationContext,BeanFactory,xxx)只需要实现xxxAware例如:我们想要在自定义组件Yellow中获applicationContext我们需要让Yellow类实现ApplicationContextAware接口,重写setApplicationConte
2021-01-25 20:42:16 183
原创 9-注解驱动开发-自动装配@Autowired,@Resource,@Inject
本文知识点来源于尚硅谷,感谢尚硅谷为广大学子提供的优质教育资源,感谢各位老师热情指导,本文仅作为学习笔记使用,记录学习心得,如有不适,请联系作者。自动装配:Spring利用依赖注入(DI),完成对IOC容器中各个组件的依赖关系赋值。一、@Autowired 自动注入spring框架定义的默认按照类型去容器中找,找到就赋值。如果找到多个相同类型组件,再将属性的名称作为组件的id到容器中去匹配。可以使用 @Qualifier(“userDao”)指定需要装配的组件的id而不是使用属性名自动注入
2021-01-25 18:42:13 174
原创 8-注解驱动开发-@Value赋值@PropertySource加载外部配置文件
本文知识点来源于尚硅谷,感谢尚硅谷为广大学子提供的优质教育资源,感谢各位老师热情指导,本文仅作为学习笔记使用,记录学习心得,如有不适,请联系作者。
2021-01-25 12:26:02 167
原创 4-Mysql-索引简述
一、性能下降(执行时间长)原因sql语句编写问题各种连接,子查询导致建立的索引没有用上,甚至于根本没有建立索引。关联查询过多。服务器相关参数设置不合理,导致性能下降。二、索引概述2.1 什么是索引 索引在MySQL中也叫做“键”或者"key"(primary key,unique key,还有一个index key),是存储引擎用于快速找到记录的一种数据结构。2.2 为什么要建立索引索引对于良好的性能非常关键,尤其是当表中的数据量越来越大时,索引对于性能的影响愈发重要,减少io次数,
2021-01-25 00:16:38 97
原创 3-Mysql-内连接,左连接,右连接,全连接
准备数据员工表:employee部门表:department内连接查询两张表共有的部分SELECT * FROM employee e INNER JOIN department d ON e.dep_id = d.id;查询结果 :王八因为是部门6,而部门表没有部门6,所以没有被查出来左连接,右连接左连接:把左边表的全部内容查询出来,右边表只查询出满足条件的记录。SELECT * FROM employee e LEFT JOIN department d ON e.dep
2021-01-24 22:56:09 172
原创 2-Mysql-Sql编写,执行顺序
sql编写格式(从上到下)注:[]中内容表示可选select [distinct] 字段 from 表名 join 表名 on 连接条件 where 查询条件 group by 分组字段 having 分组后条件 limit 查询起始位置,查询条数 order by 排序条件 [asc]默认升序 或 [desc]降序Sql执行顺序(从上到下)from 表名(取得是几张表的笛卡尔积)on 连接条件(筛选) join 表名 (决定左右连接)where 查询条件 (继续筛选)gr
2021-01-24 22:08:20 74
原创 1-Mysql-存储引擎
什么是存储引擎?Mysql中的数据用各种不同的技术存储在文件或者内存中,这些技术中的每一种技术都使用不同的存储机制,索引技巧,锁定水平并且最终提供广泛的不同功能和能力。通过选择不同的技术,能够由获得不同的速度或者功能,从而改善应用的整体功能,这些不同的技术以及配套的功能在Mysql中被称为存储引擎。查看存储引擎--查看有哪些存储引擎show engines;查看mysql当前默认的存储引擎:--查看mysql当前默认的存储引擎:show variables like '%storage_
2021-01-24 21:38:41 75
原创 7-生命周期-bean创建 初始化 销毁
本文知识点来源于尚硅谷,感谢尚硅谷为广大学子提供的优质教育资源,感谢各位老师热情指导,本文仅作为学习笔记使用,记录学习心得,如有不适,请联系作者。
2021-01-24 18:43:59 207 7
原创 3-分布式理论之2PC一致性协议,3PC一致性协议
文章知识点主要来源于拉钩教育《java高薪训练营》及其他知识扩展,感谢拉钩教育平台提供的优质教育资源,以及各位老师的热情指导!本文仅做学习笔记使用,如有不适,请联系本人。一、什么是2PC2PC(two-phase Commit)即两阶段提交协议,是将整个事务流程分为两个阶段:准备阶段 prepare phase事务管理器给每个参与者发送Prepare消息,每个数据库参与者在本地执行事务,并写在本地的Undo/Redo日志,此时事务并没有提交。(Undo日志是记录修改前的数据,用于数据库回滚,Red
2021-01-23 23:14:43 172
原创 2-分布式理论之CAP定理,Base理论
文章知识点主要来源于拉钩教育《java高薪训练营》及其他知识扩展,感谢拉钩教育平台提供的优质教育资源,以及各位老师的热情指导!本文仅做学习笔记使用,如有不适,请联系本人。一、CAP定理一个分布式系统不可能同事满足一致性(C:Consistency),可用性(A:Avaliability),和分区容错性(P:Partition tolerance)一致性:分布式系统当中的一致性是指所有节点的数据一致,或者说是所有副本的数据一致。可用性:系统一直可用,而且服务一致保持正常分区容错性:系统在遇到一些节
2021-01-23 21:01:49 176
原创 6-组件注册-@Import
本文知识点来源于尚硅谷,感谢尚硅谷为广大学子提供的优质教育资源,感谢各位老师热情指导,本文仅作为学习笔记使用,记录学习心得,如有不适,请联系作者。给容器注册组件的方式:包扫描+标注注解 @Controller @Service @Repository @Component 适用于我们自己写的类。@Bean,适用于导入第三方包里面的组件。@Import ,快速给容器中导入一个组件1)@Import({Color.class,Red.class})快速给容器导入组件 id默认为全类名 如:
2021-01-23 13:32:53 123
原创 5-组件注册-@Conditional按条件注册bean
本文知识点来源于尚硅谷,感谢尚硅谷为广大学子提供的优质教育资源,感谢各位老师热情指导,本文仅作为学习笔记使用,记录学习心得,如有不适,请联系作者。@Conditional按照一定条件进行判断,满足条件给容器中注册Bean可作用在配置类上进行统一配置,也作用在方法上单独配置示例:如果系统是windows系统,给容器注册girl,如果系统是linux系统,给容器注册boy配置类不加@Conditional注解import org.springframework.context.annotation.
2021-01-23 11:59:15 116
原创 4-组件注册-@Scope设置组件作用域及@Lazy懒加载
本文知识点来源于尚硅谷,感谢尚硅谷为广大学子提供的优质教育资源,感谢各位老师热情指导,本文仅作为学习笔记使用,记录学习心得,如有不适,请联系作者。我们注册到IOC容器的组件默认是单实例的验证:/** * 配置类==配置文件xml * @author Administrator * */@Configuration //告诉Spring这是一个配置类public class MainConfig2 { /** * 给容器注册一个bean,类型为返回值类型,id默认是方法名 *
2021-01-23 11:16:15 76
原创 3-组件注册-自定义TypeFilter指定过滤规则
本文知识点来源于尚硅谷,感谢尚硅谷为广大学子提供的优质教育资源,感谢各位老师热情指导,本文仅作为学习笔记使用,记录学习心得,如有不适,请联系作者。本章节基于2-组件注册-@ComponentScan自动扫描组件继续深入实现自定义FilterType指定过滤规则import java.io.IOException;import org.springframework.core.io.Resource;import org.springframework.core.type.AnnotationMe
2021-01-21 22:26:00 162
原创 2-组件注册-@ComponentScan自动扫描组件
本文知识点来源于尚硅谷,感谢尚硅谷为广大学子提供的优质教育资源,感谢各位老师热情指导,本文仅作为学习笔记使用,记录学习心得,如有不适,请联系作者。包扫描只要Bean对象在包扫描路径中标注了 @Component @Repository @Service @Controller注解 都会被自动加入到容器中用xml方式配置包扫描<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.
2021-01-21 21:42:27 183 4
原创 1-组件注册-@configuration@Bean给容器中注册组件
本文知识点来源于尚硅谷,感谢尚硅谷为广大学子提供的优质教育资源,感谢各位老师热情指导,本文仅作为学习笔记使用,记录学习心得,如有不适,请联系作者。新建maven工程<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.2.5.RELEASE</version>&l
2021-01-21 01:00:06 107 2
原创 1-分布式理论之一致性
文章知识点主要来源于拉钩教育《java高薪训练营》及其他知识扩展,感谢拉钩教育平台提供的优质教育资源,以及各位老师的热情指导!本文仅做学习笔记使用,如有不适,请联系本人。一、分布式一致性分布式数据一致性,指的是数据在多个副本中存储时,各个副本中的数据是一致的,如果不一致,会使用同步的方式进行拷贝复制达到一致性。二、一致性分类2.1 强一致性要求系统写入什么,读出来的就是什么,但实现起来往往对系统性能影响很大,而且难以实现。2.2 弱一致性系统在写入成功后,不承诺立即可以读到写入的值,也不承诺多
2021-01-20 23:33:03 199
原创 2-初识-多线程安全
学习内容来源于蚂蚁课堂,感谢蚂蚁课堂大佬的指导,本文仅供学习记录使用,如有不适,请联系作者。一、什么是线程安全问题多个线程共享同一个全局变量,做写操作的时候,可能会受到其他线程的干扰(局部变量不会),导致数据有问题,做读操作的时候不会产生线程安全问题。/***多线程安全问题案例*有100张火车票,两个窗口同时抢票*/public class Demo01 { public static void main(String[] args) { MyRunnable myRunnable
2021-01-19 14:07:50 122
原创 1-初识-多线程
本文仅供学习记录使用,学习内容来源于网络,如有雷同,可联系本人。一、线程与进程应用程序:可执行软件,在应用系统中都会有一个进程,进程中有不同的执行路径(线程的集合)。进程:可理解为执行中的程序,是线程的集合,一个操作系统中可以有多个进程,每个进程中,一定有一个线程,这个线程就是主线程。线程:可以理解为一个执行顺序(代码自上而下运行)。多线程:就是为了提高程序的效率(一个人盖房和一个工程队盖房)二、应用场景多线程下载,断点续传QQ聊天多窗口爬虫(多线程同时爬取)前端Ajax(异步上传)
2021-01-18 23:47:38 125
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人