毕业设计网
开发环境 |

SSh框架问题集合

1-1:为什么每次请求都要创建一个Action对象?

  为了防止线程迸发,如果每次都使用同一个Action进行数据修改和传递的话,容易引起线程迸发,使线程不安全。

  1-2:ModelDriven拦截器的配置中refreshModelBeforeResult解决了什么问题?

  在数据输出之前将数据接收的Bean里面的数据清空。解决了数据混淆的可能性。

  1-3:为什么在web.xml中配置的StrutsPrepareAndExecuteFilter要过滤所有的请求?

  为了1.可以将数据进行过滤

  2.可以进行数据的转码将数据进行统一的编码

  1-2:请你给我谈谈ValueStack?

  堆值,堆里面的值。

  1-5:Struts2是如何实现MVC设计模式的?

  在Struts2里面是将每次页面的请求进行处理,然后将请求需要输出的数据转发的需要做数据显示的页面,Struts2只是起一个数据接受和转接的功能,就是Controler控制器,而传来数据的页面叫View显示层,Struts2将数据提交给进行处理的类叫Model模型层,专门进行数据处理和数据库的链接。

  2-1:你为什么要用Spring?

  使用Spring 1.主要将各个框架进行有效的联系起来,缩短实际编程的时间,起一个润滑剂的作用。

  2.可以将各个框架进行有效的管理和控制,让数据传输中安全。

  2-2:请你聊一聊IOC/DI?

  依赖注入和控制反转Spring的两大基础作用

  主要是将所有组件在Spring提供的外部容器中加载,提高安全性,减低耦合性,使各个框架或者类之间的依赖性降低。

  2-3:什么是声明式的事务管理?为什么要使用声明式的事务管理?Spring如何实现声明式的事务管理?

  声明事物管理主要是将在进行对数据库中数据进行添加或者修改的时候需要执行事物管理。主要是避免在执行数据修改和添加的时候数据添加或者修改不完全,导致数据丢失。

  Spring是使用AOP面向切面的思想进行事物管理的。

  2-4:把spring和hibernate集成,定义事务管理特性的时候,为何要将除了添加、删除、更新操作之外的方法,即主要执行 查询任务的方法定义为read-only?

  因为添加和删除和更新都涉及到数据库的修改,而查询并为涉及数据修改,所以只需要定义只读,这样可以提高效率,进行更加方便的事物管理。而事物管理主要是为添加和删除和更新设计的。

  3-1:请你谈谈你对OR映射的理解?

  将数据库里面的每一张表都映射成一个实体。

  3-2:很多人说Hibernate不适合大项目,性能有问题,你是如何理解的?

  因为Hibernate属于大型框架,里面对许多方法的封装比较多,让SQL控制权降低。这样的话,适用性就会降低,在不必要的操作上会浪费时间。但是只要将Hibernate里的配置进行优化,也能提高其性能。

  3-3:Hibernate为什么一定要定义一个数据库标识?

  可以让映射文件变得简洁,消除无用的噪音(比如TBL_前缀等)。Hibernate使用的默认策略是几乎什么都不做,所以使用标识的作用就是使数据操作更加简洁和方便

  3-4:为什么Hibernate建议你的实体类实现hashCode和equals方法?

  因为Hibernate使用了一级和二级缓存,很多查询为了提高效率Hibernate都会先从缓存中进行查找,然后再从数据库进行查找。而HashCode是唯一的,所以这样避免数据操作出现数据混淆的可能,而equals的作用是对比Hibernate缓存中数据是否一致。

  3-5:谈谈你对Hibernate实体类中的数据库标识与数据库主键之间关系的认识?

  数据库标识是为了方便和简洁映射文件,而主键是为了使数据不会重复。

  3-6:谈谈你对Hibernate关联映射与数据库外键之间关系的认识?

  Hibernate在进行映射的时候会将数据库的关系也进行映射将数据库中的外键也使用标签的形式进行管理,这样在人为操作的时候就不需要手动的管理数据库关系了。 

以上是一部分介绍,如需要完整的资料或者如不符合您的要求,请联系技术人员qq:242219979咨询

上一篇:java jsp ssh的框架结构
下一篇:php工程教育实践过程管理系统


版权所有 毕业设计网联系qq:242219979 © 2007-2022