1. 什么是设计模式?你是否在你的代码里面使用过任何设计模式?
写程序时的一种规范,让代码的结构框架更有层次感,更简洁
暂时没有
2. 你可以说出几个在JDK库中使用的设计模式吗?
抽象工厂模式,建造者模式,原型模式,单例模式,适配器模式,桥接模式,组合模式,装饰模式,外观模式,享元模式,代理模式
3. Java中什么是单例设计模式?用Java写出线程安全的单例
将对象放在另一个对象的属性中,只要另一个对象不变,这个属性对象就永远不会变
class Demo{
class Test{
final Demo demo = new Demo();
}
Demo(){
}
Demo (){
Test.demo;
}
}
4. 使用工厂模式最主要的好处是什么?你在哪里使用?
如果要创建多个类似的类,使用工厂模式能很快的完成这些工作
创建数据库连接的时候使用到
5. 在Java中,什么叫观察者设计模式( )?
一方发送,多方被动接收,只要一方有一点改动,这边的对象就能感知到
6. 举一个用Java实现的装饰模式( )?它是作用于对象层次还是类层次?
输入流和输出流的设计
作用于对象层次
7. 什么是MVC设计模式?举一个MVC设计模式的例子?
将控制层,视图层,业务层分开,使代码进行解耦,便于多人开发
OA项目
8. Java中什么是表示层设计模式( )?举一个使用表示层设计模式(front )的例子?
就是MVC设计模式
9. 什么是责任链模式(Chain of )?
把能够处理同一请求的对象组成一条链,把对象按级别处理,不能处理的对象就把请求往下一级对象传,直到完成请求
10. 什么是适配器模式?举用Java实现适配器模式的例子?
创建一个对象实现原来的接口,并添加相应的方法,这样就可以在不改变原代码的情况给接口增加更多的方法
字符输出入流
源码分析
11. 有哪些常见类和接口,他们的作用是什么?
接口:所有直接或者间接实现的接口
类:它重写了方法,针对客户请求类型不同提供不同的方法:(),doGet()
接口和接口:当用户请求到来时,容器会创建一个对象封装请求数据,同时创建对象封装响应数据
12. 有哪些常见类和接口,他们的作用是什么?
:main方法是整个项目的入口
:完成针对应用服务器的操作(启动,停止)
:初始化之后的类
13. 的执行过程是什么?有哪些常用类和接口,他们的作用是什么?
先创建的配置文件,然后使用工具类读取这个配置文件,转换成字节流文件,使用ld里的build来读取这个字节流文件,在这个build方法里会去调用三个参数的build方法,利用字节流文件创建一个对象,在创建这个对象的时候会调用它的父类的构造函数创建一个空的对象,用来存放配置文件中的参数。创建完对象之后,使用parse方法解析配置文件,把解析到的参数一个个添加到之前创建的空的对象。ld有一个build方法的参数是对象,使用这个build方法,传入对象,得到一个的实现类tory,在使用这个工厂类的方法,它会调用ource方法,这个方法里会根据对象得到的数据源,事务等级(默认为null),是否自动提交(默认为false)得到一个事务对象tx,再使用对象的方法根据tx和(一个枚举对象,这个枚举对象是对象的pe方法得到的,值为)得到对象,然后直接new一个接口的实现类,使用的是它的构造方法,参数为对象,对象,是否自动提交,至此得到的实现类。
接下来需要使用的方法,它一步步调用,直到自己的方法。这里调用了query方法,这个query是方法,又调用了方法,里面有个方法,这个方法属于类,这个方法里得到了的子类ler,这是一个封装类,它不提供具体的实现,只是根据 的类型,创建不同的类型 。这个方法最后使用了 的query方法,具体使用的是哪个实现类的query方法,主要看之前用的是哪个类,我们这里默认是er类,进去之后看到方法,就是这里执行了sql语句,之后返回了接口的唯一子类的方法处理的结果,到此完成了一次的查询操作
类:读取配置文件,
lder类:创建,
类:读取配置文件内容,
类:存放配置文件内容,
tory类:实现类,
类:指定要创建发送器的类型,
类:实现类,
类:从缓存结果中读取数据,
类:处理器,
类:结果集
14. 的执行过程是什么? 有哪些常用类和接口,他们的作用是什么?
客户端发送请求到中央主控制器,然后到处理器映射器,查找与请求所匹配的,然后调用适配器,执行处理业务,返回结果到中央主控制器,发送到视图请求处理器,将处理结果返回给view,渲染页面,再返回给浏览器
类: 覆写了 init 方法,主要做一些初始化的工作,将 web.xml 中配置的参数设置到 中。比如 标签的子标签 init-param 标签中配置的参数
类:将 上下文与 容器上下文关联。其实也就是初始化 的属性 t , 这 个 属 性 代 表 上 下 文 对 象 , 实 际 类 型。如果项目中用到 了那么它有个父容器,既 web.xml中配置的 r 监听器初始化的容器上下文
类:主控制器
接口:作用是根据当前请求的找到对应的 (( 中的方法)、 对 象 ) , 并 将 与 一 堆 ( 拦 截 器 ) 封 装 到n 对象中。在 接口的内部只有一个方法:n ( )
ng 抽象类:它实现了 接口中的 () 方法
类: 这个分支获取的 的类型是 ,即这个 是一个方法,它保存了方法的信息(如 ),这样一个 就可以处理多个请求了。
pping 抽象类:pping 这个分支获取的 的类型实际就是一个 类
接口: 中使用适配器模式来解决不同的 的执行。根据 来找到支持它的 ,通过 执行这个 得到 对象
抽象类:利用 获取的 是 类型,它代表 里要执行的方法。 是子类 中的方法
类: 实际就是执行@ 注解的方法
apter 类:apter 。 是 的 适 配 器 可 以 执 行 类型的 。其实就是 中的 方法
类: 是 实现类的适配器类,其本质也是执行 中的 方法。
接口:根据视图的名称将其解析为 View 类型的视图,如通过 中的视图名称将其解析成 View,View 是用来渲染页面的,也就是将 Model 填入模板中,生成 html 或其他格式的文件。
抽象类: 是带有缓存的java 适配器模式-百战第一百一十二天,它每次解析时先从缓存里查找,如果找到视图就返回,没有就创建新的视图,且创建新视图的方法由其子类实现
类: 根据 views. 文件来解析视图,这个文件应位于 路径下
类: 根据 xml 文件来解析视图
类: 提供了拼接 URL 的方式来解析视图,通过 属性拼接一个前缀,通过 属性拼接一个后缀,就得到了视图的 URL。还可以加入 : 与: 前缀,使用 : 前缀会调用 对象的 () 方法进行重定向,使用 : 前缀会利用 的 方式跳转到指定的地址。另外,使用时还要指定 属性,表示要解析成哪种 View。
类:是 的 子 类 , 将 作为默认的 View 类,但如果当前 中有 jstl 的 jar 包时则使用 作为 view 来渲染
View 接口:视图渲染器,在该接口中定义了渲染视图的抽象方法
类:继承自 抽象类的类,表示 JSP 视图
15. 有哪些常见类和接口,他们的作用是什么?
ry类:创建bean工厂,如果已经有则销毁,没有则创建,里面实现对的装载
类:配置bean工厂的标准上下文特性java 适配器模式,如类装载器、等
ry类:模板方法,在bean定义被装载后,提供一个修改容器的入口
类:在Bean未开始实例化时,对定义的修改的入口。常见的就是在这里被调用的
类:完成容器 的初始化,里面的tons会完成单例对象的创建
16. 讲一讲你对现在公司里常见的持久化框架的理解
主要就是把页面的数据保存到数据库中以达到持久化的目的
17. 什么是JPA?为什么每个持久化框架都要实现JPA标准?
JPA就是java持久层API,它能简化代码,而且查询能力强
18. 如何整合?
将类加载到中,用bean实例化java 适配器模式,给属性、、赋值,再用bean实例化r类,加载事务
19. 说说你对SQL和HQL的理解
SQL针对数据库编写语言操作数据库,HQL针对对象编写语言操作数据库
20. 说说你对的理解
就是对数据进行持久化操作
21. 说说你对的理解
是的一套对redis数据库操作的框架