action 没有与任何 servlet API 耦合! 

Map getsession():返回的是一个MAP 对象,该Map对象模拟了   httpsession 实例!  

 


不管是struts1还是struts2,所谓耦合,无非就是在基本的servlet之上包了一层,
将底层的servlet进行封装,这样,struts本身就能截取你的交互操作进行自身的处理。
所以,在使用的时候,只需要关注struts给你提供的封装好后的servlet就可以了,无需关注servlet本身。
当然,你也可以直接使用servlet,这样,就绕过了struts的控制,框架也无太大使用意义。

================================================

action是sturts的东西,servlet是J2EE应用的重要的核心对象,两个本身出处不一样。
做为WEB应用的sturts,本身还是建立在SERVLET基础之上的,servlet可以说是web应用的核心的核心,
提供了响应请求的全过程,struts做为一个web应用的框架来说其根基还是servlet,只是在单纯的servlet之上加了自己的封装,
但是,struts也提供了方式能够让你直接应用servlet,也就是在action中使用servlet对象来进行操作,
这里,这个servlet是不属于sturts的