其他刷题笔记

其他刷题笔记

有关SPRING的事务传播特性

事务 特性
PROPAGATION_REQUIRED 支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择
PROPAGATION_SUPPORTS 支持当前事务,如果当前没有事务,就以非事务方式执行
PROPAGATION_MANDATORY 支持当前事务,如果当前没有事务,就抛出异常
PROPAGATION_REQUIRES_NEW 新建事务,如果当前存在事务,把当前事务挂起
PROPAGATION_NOT_SUPPORTED 以非事务方式执行操作,如果当前存在事务,就把当前事务挂起
PROPAGATION_NEVER 以非事务方式执行,如果当前存在事务,则抛出异常

下面有关servlet和cgi的描述

servlet会对每个请求创建一个线程来处理,cgi则会创建一个进程来处理,用完销毁。显然servlet成本低,效率高。

下面有关servlet service描述

service()是在javax.servlet.Servlet接口中定义的,用于处理任意的协议的请求,所以http的无论是get还是post都是经过service()分发的。由于get,post是http协议的一部分,所以doGet,doPost方法是在HttpServlet类的=里实现的。

有关struts1和struts2的区别

Struts1是单例的,只创建一个action对象,需要注意线程安全。Struts2是多例的,为每一个请求创建一个action对象。

关于AWT和Swing说法

AWT的方法是本地的,不同系统效果不一。swing使用java实现,移植性好。

<jsp:forward page="index.htm"/>

forward是请求转发,url不会变,redirect重定向url会变。

加载驱动程序的方法

  1. Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
  2. DriverManager.registerDriver(new com.mysql.jdbc.Driver());
  3. System.setProperty("jdbc.drivers", "com.mysql.jdbc.Driver");

DriverManager.getConnection方法是获取connecttion对象的。

关于sleep()和wait()

notify()之后那些被阻塞的线程不是进入运行状态,是进入就绪状态

关于struts项目中的类与MVC模式的对应关系

Action不是模型的一部分,但也不是控制器。struts项目可以有多个servlet。

下面有关jsp中静态include和动态include的区别

静态include是把文件合并在渲染,因此不可以有相同变量。适用与静态文件。<%@ include file="relativeURI"%>
动态include是先独自渲染再合并,可以有相同变量。<jsp:include page="relativeURI" flush="true" />

JVM内存配置参数

-Xmx10240m -Xms10240m -Xmn5120m -XXSurvivorRatio=3

其最小内存值和Survivor区总大小分别是

  1. Xmx是堆最大内存
  2. Xms是堆初始内存
  3. Xmn新生代!新生代!新生代!内存

初始堆大小即堆最小内存:10240m。因为XXSurvivorRatio=3,分五分,一份1024m,Survivor占两份,所以Survivor为2048m。


其他刷题笔记
https://cellargalaxy.github.io/posts/其他/3.其他刷题笔记/
作者
cellargalaxy
发布于
2018年3月20日
许可协议