(java)春招 打卡day2

什么时候开始都不晚

1、数据库创建索引的好处
第一,保证数据的唯一性。
第二,加快数据的检索速度
第三,加速表和表之间的连接。

第四,减少查询中分组和排序的时间。
第五,提高系统的性能(查询时,使用优化隐藏器,)。

2、数据库索引带来的问题
第一,创建和维护索引要耗费时间
第二,占物理空间。
第三,降低了数据的维护速度。

3.请你说一下java中的io流,已经他们的分类和作用

数据流的方向不同,分为输入流和输出流。

处理数据单位的不同,可以分为字节流和字符流

流的实现功能的不同,可以划分为节点流和处理流

4.spring里用到了哪些设计模式?

 1单例模式。spring中的bean默认情况下都是单例的

2.工场模式。通过BeanFactory和ApplicationContext来生产Bean对象

3代理模式。spring主要是使用jdk动态代理和CGLIB代理。

5.能否简单说下Mybatis加载的流程。

① 加载配置文件:需要加载的配置文件包括全局配置文件(mybatis-config.xml)和 SQL(Mapper.xml) 映射文件,其中全局配置文件配置了Mybatis 的运行环境信息(数据源、事务等),SQL映射文件中配置了与 SQL 执行相关的信息。

② 创建会话工厂:MyBatis通过读取配置文件的信息来构造出会话工厂(SqlSessionFactory),即通过SqlSessionFactoryBuilder 构建 SqlSessionFactory。

③ 创建会话:拥有了会话工厂,MyBatis就可以通过它来创建会话对象(SqlSession)。会话对象是一个接口,该接口中包含了对数据库操作的增删改查方法。

④ 创建执行器:因为会话对象本身不能直接操作数据库,所以它使用了一个叫做数据库执行器(Executor)的接口来帮它执行操作。

⑤ 封装SQL对象:执行器(Executor)将待处理的SQL信息封装到一个对象中(MappedStatement),该对象包括SQL语句、输入参数映射信息(Java简单类型、HashMap或POJO)和输出结果映射信息(Java简单类型、HashMap 或 POJO)。

⑥ 操作数据库:拥有了执行器和SQL信息封装对象就使用它们访问数据库了,最后再返回操作结果,结束流程。
6.Linux下如何查看文件前几行和后几行的命令

head -n +行数+位置

tail -n+行数+位置

7.为什么建立连接是三次握手,关闭连接确是四次挥手呢?

在建立通信连接之前,通信双方都确保自己与对方的发送、接收功能是正常的

确保通信双方在互相都关闭通信连接之前,已经没有数据在双方之间继续传输了,使双方可以安全的关闭连接

8.TIME_WAIT为什么要等待2MSL,TIME_WAIT是客户端状态还是服务器状态

第一,保证客户端发送的最后一个 ACK 报文能够到达服务器,
第二,防止 “已经失效的连接请求报文段” 出现在本次请求中。

9.三次握手过程中可以携带数据么?

第三次可以,第一次第二次不行

10.StringBuilder.append(“xxx”); 后创建新对象吗?

没有创建新对象:因为stringBuilder和string不同,他的char【】数组没有被final修饰,所以可以添加i新char字符时,根据字符组容量,进行动态扩容,不需要新创建一个对象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值