杂记2

struts2的运行原理javascript

 

1)HTTP请求被FilterDispatcher拦截
2)建立ActionProxy代理对象
3)经过代理对象加载xml配置数据,建立配置管理器ConfigurationManager
4)先建立ActionInvocation调用对象
5)调用struts2拦截器,注入所须要的功能
6)调用目标的Action对象,以及目标的方法
7)根据Action对象方法的返回值String,建立Result视图对象
8)调用目标的JSP页面
9)接着回来Struts2的拦截器,原路返回
10)最终响应到客户浏览器java

 

HttpRequest(用户请求对象)->ActionContextCleanup(过滤器)->FilterDispatecher(过滤器)->ActionMapper(Action映射器)
->ActionProxy(Action代理类)->ConfigurationManager(配置器用来读取struts.xml)-ActionInvocation(Action调用器,
负责知道调用哪一个拦截器或目标的action)->负责调用拦截器->Action(调用目标的action指定的方法)->Result(视图界面JSP)
->拦截器原路返回->HttpResponse(响应给客户端)mysql

当用户发送请求,进入StrutsPrepareAndExecuteFilter(是struts2框架的核心控制器,它负责拦截由<url-pattern>/*</url-pattern>指定的全部用户请求,当用户请求到达时,该过滤器会过滤用户的请求。),
接着进入:Interceptor(Struts2内置的一些拦截器或用户自定义拦截器)
接着进入:Action(用户编写的action类,与struts1不一样,struts2对用户的每一次请求都会建立一个Action,因此线程是安全的。)
接着进入:Result(获取转发页面)
接着进入:转发的页面
最后:解析响应给客户端sql

 

数据链接池的工做机制是什么?

J2EE服务器启动时会创建必定数量的池链接,并一直维持很多于此数目的池链接。客户端程序须要链接时,池驱动程序会返回一个未使用的池链接并将其标记为忙。若是当前没有空闲链接,池驱动程序就新建必定数量的链接,新建链接的数量有配置参数决定。当使用的池链接调用完成后,池驱动程序将此链接标记为空闲,其余调用就可使用这个链接。数据库

实现方式,返回的Connection是原始Connection的代理,代理Connection的close方法不是真正关链接,而是把它代理的Connection对象还回到链接池中。编程

 

mysql和oracle的区别:浏览器

一.Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率更高,Mysql是开源的,Oracle价格很是高安全

二.Oracle支持大并发,大访问量,是OLTP最好的工具(OLTP[联机事务处理])(OLAP[数据仓库处理 有了基础大数据后 根据数据分析 市场定位])服务器

三.安装后Oracle占用较大的内存空间和其余的机器性能并发

四.操做上的区别:

1.主键

Mysql通常使用自动增加类型,Oracle没有自动增加类型,通常使用的是序列。

2.单引号的处理

Mysql里能够用双引号包起字符串,Oracle只能够用单引号包起字符串

3.翻页的sql语句不一样

mysql用limit开始位置,记录个数;Oracle使用ROWNUM

4.空字符的处理

MYSQL的非空字段也有空的内容,Oracle里定义了非空字段就不允许有空的内容

 

java和javascript的区别:

 1.java是面向对象的,javascript是基于对象的脚本语言;

2.javascript是编辑性编程语言,在发送给客户端以前不须要编译,而java须要在发送给客户端前须要编译

3.变量不同,javascript是弱类型的,java是强类型的,前者不要求使用前声明类型

4.javascript是动态联编,java是静态联编;

相关文章
相关标签/搜索