开发者学堂课程【Java Web开发系列课程 - Struts2框架入门:Servlet API 一 】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/537/detail/7303
Servlet API 一
内容介绍:
一、struts2获取 servletAPI 的两种方式
二、使用解耦的方式来获取 servlet API
一、struts2获取 servletAPI 的两种方式
一种是解耦,一种是耦合;
1. 通常发起请求然后才能测试,解耦使得使用 struts2来进行测试的时候不需要启动服务器。在一定程度上提高开发效率的。
高类聚,低耦合。耦合程度越低,越容易进行扩展,进行其他操作;改变一个部分,对其他相关联部分影响越小。
request,response,application 都运用了解耦。解耦使得设计,伸展方便。
package cn . sxt . action ;
public class LoginAction {
private String name ;
private String pwd ;
//处理方法
public String execute (){
System . out . println ( name +"---"+ pwd );
if ("siggy ". equals ( name )&&"1111". equals ( pwd )){
return " success " ;
}else{
return " login ";
}
public String logout (){
System . out . println ("退出");
return “ success
“
;
}
Public String getName(){
return name
2. action ---> service -> dao 三层以分层的方式开发,非常简单。action 中没有业务,真正的业务在 service,直接测试 service 即可,只需要两个路线。
把业务放在 action 说明项目设计存在问题。
(很少用 struts2进行测试)
二、使用解耦的方式来获取 servlet API
1.通过 ActionContext 对象获取。
ActionContest 是一个 map 的容器,存放用户请求的数据、session 的数据、application 的数据等很多种数据。
2.如何获取:
ActionContext . getContext ()
.
getSession (). put (" user ", name );
public class LoginAction {
private String name ;
private String pwd ;
//处理方法
public String execute (){
System . out . println ( name +"---"+ pwd );
if ("siggy ". equals ( name )&&"1111". equals ( pwd )){
ActionContext . getContext ()
.
getSession (). put (" user ", name );