Struts session

来源:互联网 发布:ea自动交易软件 编辑:程序博客网 时间:2024/06/05 02:36

1、代码

1.1action代码

[java] view plaincopy在CODE上查看代码片派生到我的代码片
  1. package com.god.action;  
  2.   
  3. import java.util.HashMap;  
  4. import java.util.Map;  
  5.   
  6. import javax.servlet.http.HttpServletRequest;  
  7. import javax.servlet.http.HttpSession;  
  8.   
  9. import org.apache.struts2.ServletActionContext;  
  10.   
  11. import com.opensymphony.xwork2.ActionContext;  
  12. import com.opensymphony.xwork2.ActionSupport;  
  13.   
  14. import com.god.mod.*;  
  15.   
  16. public class LoginAction_2014_4_28 extends ActionSupport {  
  17.     org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter d;  
  18.     private String uname;  
  19.     private String upasswd;  
  20.     public String getUname() {  
  21.         return uname;  
  22.     }  
  23.     public void setUname(String uname) {  
  24.         this.uname = uname;  
  25.     }  
  26.     public String getUpasswd() {  
  27.         return upasswd;  
  28.     }  
  29.     public void setUpasswd(String upasswd) {  
  30.         this.upasswd = upasswd;  
  31.     }  
  32.       
  33.       
  34.     public String execute(){// 类似于servlet的doGet和doPost方法  
  35.         if(uname.equals("fang")&&upasswd.equals("123")){  
  36.             User_2014_4_29 users=new User_2014_4_29(uname,upasswd);  
  37.             /**一般情况键都是不变的,值却不断变化。 
  38.              * 第一种方法,sessions其实是假的,它是Map类的。 
  39.             Map<String,Object>session =null;//这里value的位置之所以是object是为了可以放类,而不是单单的房一个值。 
  40.             session=ActionContext.getContext().getSession(); 
  41.             session.put("CURRENT_USER",uname); 
  42.             session.put("CURRENT_USERS", users); 
  43.              */  
  44.             //第二种是使用真的session。  
  45.             HttpSession session=null;  
  46.             HttpServletRequest request=ServletActionContext.getRequest();  
  47.             session=request.getSession();  
  48.             session.setAttribute("CURRENT_USER", uname);  
  49.             session.setAttribute("CURRENT_USERS", users);  
  50.               
  51.               
  52.               
  53.             return SUCCESS;  
  54.         }else{  
  55.             return INPUT;  
  56.         }  
  57.     }  
  58. }  


1.2、User_2014_4_29类

[java] view plaincopy在CODE上查看代码片派生到我的代码片
  1. package com.god.mod;  
  2.   
  3. public class User_2014_4_29 {  
  4.     private String uname;  
  5.     private String upasswd;  
  6.     public String getUname() {  
  7.         return uname;  
  8.     }  
  9.     public void setUname(String uname) {  
  10.         this.uname = uname;  
  11.     }  
  12.     public String getUpasswd() {  
  13.         return upasswd;  
  14.     }  
  15.     public void setUpasswd(String upasswd) {  
  16.         this.upasswd = upasswd;  
  17.     }  
  18.     public User_2014_4_29(String uname,String upasswd) {  
  19.         super();  
  20.         this.upasswd = upasswd;  
  21.         this.uname = uname;  
  22.     }  
  23.       
  24.       
  25. }  



2、页面代码

2.1、2014_4_28_welcome_lx_01.jsp

[html] view plaincopy在CODE上查看代码片派生到我的代码片
  1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>  
  2. <%  
  3. String path = request.getContextPath();  
  4. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
  5. %>  
  6.   
  7. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  8. <html>  
  9.   <head>  
  10.     <base href="<%=basePath%>">  
  11.       
  12.     <title>My JSP '2014_4_28_welcome_lx_01.jsp' starting page</title>  
  13.       
  14.     <meta http-equiv="pragma" content="no-cache">  
  15.     <meta http-equiv="cache-control" content="no-cache">  
  16.     <meta http-equiv="expires" content="0">      
  17.     <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">  
  18.     <meta http-equiv="description" content="This is my page">  
  19.     <!-- 
  20.     <link rel="stylesheet" type="text/css" href="styles.css"> 
  21.     -->  
  22.   
  23.   </head>  
  24.     
  25.   <body><center>  
  26.     <div>  
  27.           
  28.     </div>  
  29.     <h3>一个简单的Struts 2应用</h3>  
  30.     <br/><hr/>  
  31.     ${uname}欢迎您!<br/>  
  32.     读取session1:${sessionScope.CURRENT_USER }<br/>  
  33.     读取session2:${sessionScope.CURRENT_USERS.uname }<br/>  
  34.   
  35.   </center>  
  36.     
  37.     
  38.   </body>  
  39. </html>  


3、成果截图






4、福利

ps:这是为了方便简单了解Map类另外贴的代码
[java] view plaincopy在CODE上查看代码片派生到我的代码片
  1. package com.god.mod;  
  2.   
  3. import java.util.ArrayList;  
  4. import java.util.HashMap;  
  5. import java.util.List;  
  6. import java.util.Map;  
  7. import java.util.Set;  
  8.   
  9. public class MapDemo {  
  10.   
  11.     public static void main(String args[]){  
  12.         List list=new ArrayList();  
  13.         Map<String,String>map =new HashMap<String,String>();  
  14.         map.put("sa""超级管理员A");//第一个值为key,第二个为value  
  15.         map.put("sb""超级管理员B");  
  16.         map.put("sc""超级管理员C");  
  17.         map.put("sa""超级管理员G");//会覆盖  
  18.         Set<String> set = map.keySet();  
  19.         int a = map.size();  
  20.         for(String key:set){  
  21.             String s = map.get(key);  
  22.             System.out.println(a+s);  
  23.         }  
  24.   
  25.     }  
  26. }  


0 0
原创粉丝点击