java 基础知识

Posted 那一的眸相遇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 基础知识相关的知识,希望对你有一定的参考价值。

1 . tcp连接有几次握手? 有几次释放?

(1)  第一次握手:建立连接时,客户端A发送SYN包(SYN=j)到服务器B,并进入SYN_SEND状态,等待服务器B确认。

(2)第二次握手:服务器B收到SYN包,必须确认客户A的SYN(ACK=j+1),同时自己也发送一个SYN包(SYN=k),即SYN+ACK包,此时服务器B进入SYN_RECV状态。

(3)第三次握手:客户端A收到服务器B的SYN+ACK包,向服务器B发送确认包ACK(ACK=k+1),此包发送完毕,客户端A和服务器B进入ESTABLISHED状态,完成三次握手

   简单说来是 “先关读,后关写”,一共需要四个阶段。以客户机发起关闭连接为例:

1.服务器读通道关闭
2.客户机写通道关闭
3.客户机读通道关闭
4.服务器写通道关闭

2. 数据库sql中的转换?

行转列的需求如下, 主要思路是分组后使用case进行条件判断处理  可以发现,行转列时其实是先group by,然后将每个组中的行转为列,使用case-when + 聚合函数。

    列转行的需求是   主要思路也是分组后使用case     或者 先使用union拼接     使用  order by  , 

3 . SpringMVC 的工作原理?

  1. 用户发送请求到前端控制器dispatcherservlet.
  2. dispatchersevlet接受到请求调用HandlerMapping处理器映射器。
  3. 处理映射器找到了具体的处理器(根据配xml置文件和java代码的注解)进行查找,dispatcherservlet 调用handlerAdapter处理器适配器,
  4. HandlerAdapter 经过适配且的处理器(controller)执行完成后返回modelAndview
  5. controller将返回的modelAndView 返回给dispatcherservlet,
  6. dispatchservlet 将modelAndView 传给ViewResolver视图解析器。
  7. dispatchservlet将view  进行渲染到页面上,响应用户。 

4.mybatis的原理实现?

   mybatis应用程序根据xml配置文件创建sqlsessionFactory, sqlSessionFactroy是根据两个地方 一个是配置文件,一个是java代码的注解,然后获取到sqlSession 。sqlSession包含了sql中的所有方法和属性,通过sqlsession的实例运行映射sql语句,对数据库进行增删改查和提交事务的操作,关闭sqlSession。

5.hibernate 的实现原理?

  1. 读取并解析配置
  2. 创建sqlsessionFactory
  3. 打开 session
  4. 打开事务
  5. 持久化操作
  6. 关闭事务
  7. 关闭session
  8. 关闭sessionFactory

 

以上是关于java 基础知识的主要内容,如果未能解决你的问题,请参考以下文章

JSP 基础语法

Java基础:封装

android小知识点代码片段

java代码在片段活动中不起作用

java 代码片段【JAVA】

# Java 常用代码片段