Git Product home page Git Product logo

practicejava's People

Watchers

 avatar

practicejava's Issues

list集合实现类效率比较

代码部分

package cn.com.github3;

import java.util.List;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.Stack;
import java.util.Vector;

public class testList {

    // 测试list集合的效率
    private static List<String> arrayList = new ArrayList<String>();
    private static Vector<String> vector = new Vector<String>();
    private static Stack<String> stack = new Stack<String>();
    private static LinkedList<String> linkedList = new LinkedList<String>();

    private static long startTime() {
        return System.currentTimeMillis();
    }

    private static long endTime() {
        return System.currentTimeMillis();
    }

    // 测试插入方法
    private static void testInsert() {
        testInsert(arrayList);
        testInsert(vector);
        testInsert(stack);
        testInsert(linkedList);
    }

    // 测试随机访问
    private static void testRandomAcess() {
        testRandomAcess(arrayList);
        testRandomAcess(vector);
        testRandomAcess(stack);
        testRandomAcess(linkedList);
    }

    // 测试迭代效率
    private static void testIterator() {
        testIterator(arrayList);
        testIterator(vector);
        testIterator(stack);
        testIterator(linkedList);
    }

    // 测试删除效率
    private static void testDelete() {
        testDelete(arrayList);
        testDelete(vector);
        testDelete(stack);
        testDelete(linkedList);
    }

    private static void testDelete(List<String> list) {
        long start = startTime();
        for (int i = 0; i < list.size(); i++) {
            list.remove(i);
        }
        long end = endTime();
        System.out.println("删除时间:"+(end - start)+"ms");
    }

    private static void testIterator(List<String> list) {
        long start = startTime();
        Iterator<String> iterator = list.iterator();
        if (iterator.hasNext()) {
            iterator.next();
        }
        long end = endTime();
        System.out.println("迭代时间:"+(end - start)+"ms");
    }

    private static void testRandomAcess(List<String> list) {
        long start = startTime();
        for (int i = 0; i < list.size(); i++) {
            list.get(i);
        }
        long end = endTime();
        System.out.println("随机访问时间:"+(end - start)+"ms");
    }

    private static void testInsert(List<String> list) {
        long start = startTime();
        for (int i = 0; i < 100000; i++) {
            list.add(i,"ssdfssdfsf");
        }
        long end = endTime();
        System.out.println("添加时间:"+(end - start)+"ms");
    }

    public static void main(String[] args) {
        testInsert();
        testIterator();
        testRandomAcess();
        testDelete();
    }

结果

//顺序依次是arrayList,vector,stack,linkedList;

//处理100条数据所用时间
// 添加时间:0ms
// 添加时间:0ms
// 添加时间:1ms
// 添加时间:0ms
// 迭代时间:6ms
// 迭代时间:1ms
// 迭代时间:0ms
// 迭代时间:1ms
// 随机访问时间:5ms
// 随机访问时间:1ms
// 随机访问时间:0ms
// 随机访问时间:0ms
// 删除时间:0ms
// 删除时间:1ms
// 删除时间:0ms
// 删除时间:2ms
//1000條數據
// 添加时间:7ms
// 添加时间:7ms
// 添加时间:1ms
// 添加时间:9ms
// 迭代时间:2ms
// 迭代时间:1ms
// 迭代时间:0ms
// 迭代时间:1ms
// 随机访问时间:11ms
// 随机访问时间:4ms
// 随机访问时间:1ms
// 随机访问时间:46ms
// 删除时间:6ms
// 删除时间:3ms
// 删除时间:1ms
// 删除时间:25ms

//10000条数据
// 添加时间:45ms
// 添加时间:29ms
// 添加时间:3ms
// 添加时间:20ms
// 迭代时间:2ms
// 迭代时间:1ms
// 迭代时间:0ms
// 迭代时间:1ms
// 随机访问时间:14ms
// 随机访问时间:18ms
// 随机访问时间:4ms
// 随机访问时间:604ms
// 删除时间:59ms
// 删除时间:52ms
// 删除时间:85ms
// 删除时间:194ms
//100000条数据
// 添加时间:71ms
// 添加时间:141ms
// 添加时间:47ms
// 添加时间:65ms
// 迭代时间:1ms
// 迭代时间:1ms
// 迭代时间:0ms
// 迭代时间:0ms
// 随机访问时间:57ms
// 随机访问时间:26ms
// 随机访问时间:34ms
// 随机访问时间:36964ms
// 删除时间:5713ms
// 删除时间:5084ms
// 删除时间:5150ms
// 删除时间:17237ms

why web application loop to create new session in jsf2 ?

  1. this is create session and close session code
public class SessionPhaseListener implements PhaseListener {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private static final Logger logger = LoggerFactory.getLogger(SessionPhaseListener.class);
	
	@Override
	public void afterPhase(PhaseEvent arg0) {

		try {
 			FacesContext fc = arg0.getFacesContext();
			boolean inLoginPage = fc.getViewRoot().getViewId()
					.lastIndexOf("Login.xhtml") > -1 ? true : false;
			logger.debug("View {}", fc.getViewRoot().getViewId());
			//Start, Chenmingmao, 2014/06/27
			FacesContext context = arg0.getFacesContext();
		    ExternalContext ext = context.getExternalContext();
		    ext.invalidateSession();
			HttpSession session = (HttpSession) ext.getSession(false);
    	    boolean newSession = (session == null) || (session.isNew());
//		    boolean postback = !ext.getRequestParameterMap().isEmpty();
//			boolean timedout = postback && newSession;
//			if (timedout) {
    	    /* Start CR-ORIX-LOS-1608001, YangTie, 2016/08/16 */
    	    boolean isViewExp = ext.getRequestParameterMap().containsKey("viewExp");
    	    if(isViewExp){
    	    	logger.debug("ViewExp");
    	    	fc.getExternalContext().invalidateSession();
				fc.getExternalContext().redirect(Constants.WEBPRJNAM+"/Main/Login.faces?faces-redirect=true");
				return;
    	    }
    	    /* End CR-ORIX-LOS-1608001, YangTie, 2016/08/16 */
    	    logger.debug("logout param: "+ext.getRequestParameterMap().containsKey("logout"));
    	    CtrlLogin lc = Util.getCtrlLogin();
    	    /* Start CR-ORIX-LOS-1608001, YangTie, 2016/08/16 */
    	    if(lc != null && lc.isLoginPassed() && (Util.getSessionMap().get("control") != null) && inLoginPage){
				fc.getExternalContext().redirect(Constants.WEBPRJNAM+"/Main/NoMultipleAccess.faces?faces-redirect=true");
				return;
    	    }
    	    /* End CR-ORIX-LOS-1608001, YangTie, 2016/08/16 */
    	    if(ext.getRequestParameterMap().containsKey("logout") || ((Util.getSessionMap().get("control") != null) && inLoginPage)){
    	    	Util.setSessionMap("control", null);
				if(lc != null){
					logger.debug("logout");
					/* Start CR-ORIX-LOS-1608001, YangTie, 2016/08/16 */
//					lc.getClosedControl().clear();
					/* End CR-ORIX-LOS-1608001, YangTie, 2016/08/16 */
					fc.getExternalContext().invalidateSession();
				}
				fc.getExternalContext().redirect(Constants.WEBPRJNAM+"/Main/Login.faces?faces-redirect=true");
				return;
    	    }
    	    
    	    if(newSession){
				logger.debug(session == null?"Session Closed":"New Session");
				if (inLoginPage || (lc.isLoginPassed() == false)) {
				    session = (HttpSession) ext.getSession(true);
					fc.getExternalContext().redirect(Constants.WEBPRJNAM+"/Main/Login.faces?faces-redirect=true");
				}else{
					Util.executeJS("startIdleMonitor();");
				} 
				return;
		    }
		    //End, Chenmingmao, 2014/06/27
    	    
			//Start, Chenmingmao, 2014/06/20 
//			if(lc != null && inLoginPage && (Util.getSessionMap().get("control") != null)){
//			   lc.exitAll();
//				fc.getExternalContext().redirect(Constants.WEBPRJNAM+"/Main/Login.faces?faces-redirect=true");
//			}
			//End, Chenmingmao, 2014/06/20
			// For preventing access by user from clicking "Back" button or
			// direct input of previous link
			HttpServletResponse hr = (HttpServletResponse) fc
					.getExternalContext().getResponse();
			hr.setHeader("Cache-Control", "no-cache, no-store, must-revalidate");
			hr.setHeader("Pragma", "no-cache");
			hr.setDateHeader("Expires", 0);
			
			if (lc != null && lc.isLoginPassed()) {				
				logger.debug("Login User : " + lc.getUsername());
				
				if (inLoginPage == false && lc.isFstLogon() && (fc.getViewRoot().getViewId()
						.lastIndexOf("ChangePassword.xhtml") == -1)){
					fc.getExternalContext().redirect(Constants.WEBPRJNAM+
							"/Main/ChangePassword.faces?faces-redirect=true");
				}
			} else {
				//Start, Chenmingmao, 2014/09/03
				//System.out.println("Not login.");
				logger.debug("Not login.");
				//End, Chenmingmao, 2014/09/03
//				if(inLoginPage && lc !=null && Utils.chkEqualFirst(Util.getRequestParam("lang"), "en_UK", "zh_CN")){
//					lc.setSelLocale(Util.getRequestParam("lang"));
				if(inLoginPage && lc !=null){
					String locale = Util.getRequestParam("lang");
					lc.setSelLocale("en_UK");
					for(String[] lang : lc.langList()){
						if(Utils.chkEqualFirst(locale, lang[1])){
							lc.setSelLocale(locale);
							break;
						}
					}
				}else if (!inLoginPage) {
					fc.getExternalContext().redirect(Constants.WEBPRJNAM+
							"/Main/Login.faces?faces-redirect=true");
				}
			}

			// } catch (IOException e) {
		} catch (Exception e) {
			e.printStackTrace();
			try {
				FacesContext.getCurrentInstance().getExternalContext().redirect(Constants.WEBPRJNAM+
						"/Main/Login.faces?faces-redirect=true");
			} catch (IOException e1) {
				e1.printStackTrace();
			}
		}
	}

	@Override
	public void beforePhase(PhaseEvent arg0) {
//		FacesContext context = arg0.getFacesContext();
//		ExternalContext ext = context.getExternalContext();
//		HttpSession session = (HttpSession) ext.getSession(false);
//
//		boolean newSession = (session == null) || (session.isNew());
//		boolean postback = !ext.getRequestParameterMap().isEmpty();
//		boolean timedout = postback && newSession;
////		System.out.println("testing+=============" + timedout);
//		if (timedout) {
//			HttpServletRequest req = (HttpServletRequest) context
//					.getExternalContext().getRequest();
//			req.getSession().setAttribute("TimeOut", "TimeOut");
//			try {
//				context.getExternalContext().redirect(
//						"/WebLoans/Main/Welcome.faces?faces-redirect=true");
//			} catch (IOException e) {
//				System.out.println("TimeOut.");
//			}
//
//		} else {
//			HttpServletRequest req = (HttpServletRequest) context
//					.getExternalContext().getRequest();
//			req.getSession().setAttribute("TimeOut", "TimeIn");
//		}

	}

	@Override
	public PhaseId getPhaseId() {
		return PhaseId.RESTORE_VIEW;
	}

}
  1. console information
08:57:16 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:17 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:17 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : v7YnsKTCop_31aXWtdTd3pEXeqjhgCfeMZbebpgM-ZPv1m0HviPI!311905168!1478134637762 at 2016-11-03 08:57:17
08:57:17 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:17 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:17 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:22 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:31 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:31 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : -LInsNjXF34yfvrKagJRLjp1TxRp1AxhTptHb8Q3njC5yca_cVa1!311905168!1478134651095 at 2016-11-03 08:57:31
08:57:31 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:31 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:31 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:34 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:35 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:35 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : bugnsOrH8We0qZZ0ijHdXyAalXljErQYQd3eJ3VlsuR_cGu5BiUg!311905168!1478134655687 at 2016-11-03 08:57:35
08:57:35 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:35 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:35 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:36 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:37 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:37 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : 3QQnsPFfx9W_DqQmckRB7EmEHRRujMIGYZC4CZFyxdcEQkkT0YfW!311905168!1478134657375 at 2016-11-03 08:57:37
08:57:37 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:37 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:37 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:39 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:39 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:39 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : cNMnsPkvYARhQi3ONx5uQ1qRow7FuZSbCW85mGnFDOZeFEEG5DcQ!311905168!1478134659375 at 2016-11-03 08:57:39
08:57:39 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:39 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:39 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:40 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:45 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:45 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : K48nsRAH617BWn9Cx0TAdX4Tp9e2atx3iwXtuhJK0E2FhWxmq5Yp!311905168!1478134665223 at 2016-11-03 08:57:45
08:57:45 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:45 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:45 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:46 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:46 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:46 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : wOgnsRZ4UZL3e9pZr860aq66LvxLF8gS4dKrd0hkgp83Kxt8iVXE!311905168!1478134666872 at 2016-11-03 08:57:46
08:57:46 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:46 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:46 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:47 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:48 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:48 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : fvcnsRvfUjRjWjl8bIch8uXnOZrXqifhzj2l0IYpt7DB2ELKDm7E!311905168!1478134668255 at 2016-11-03 08:57:48
08:57:48 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:48 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:48 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:52 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:52 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:52 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : EHQnsS2up_HaqWO9Rgoidq_tVP1TSQaMMr7IeMSz2As8Q8q1L2hg!311905168!1478134672814 at 2016-11-03 08:57:52
08:57:52 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:52 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:52 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:53 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:54 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:54 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : CNcnsTNg5o-zY1pEA7-79jSvZi7T8FJqEQaO0zH92RbWmjdbk9U-!311905168!1478134674273 at 2016-11-03 08:57:54
08:57:54 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:54 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:54 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:54 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:55 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:55 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : ia8nsTfWeksDlAMTWz-UnmJ77bFN4J4fm5ZM-ieV94E1g31a3WV1!311905168!1478134675414 at 2016-11-03 08:57:55
08:57:55 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:55 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:55 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:55 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:55 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:55 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : 2tYnsTmXi_-sH-UwpfwSd8JQr62bsIWcXK3zGCC-RKBwaGKLk-hk!311905168!1478134675863 at 2016-11-03 08:57:55
08:57:55 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:55 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:55 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:56 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:56 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:56 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : DdEnsTsvOP8Jd8ZYa5UrNHohxjQ6zYjdZXaC3mcokIflpaiLBXwA!311905168!1478134676271 at 2016-11-03 08:57:56
08:57:56 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:56 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:56 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:56 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:56 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:56 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : jxAnsTzYzaLBa0CMhq4cAq4S9SJ1688nF4W7OS_jhoe98SJ0tQ3t!311905168!1478134676696 at 2016-11-03 08:57:56
08:57:56 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:56 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:56 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:56 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:57 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:57 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : X0snsT5_WxqI5LFcIfmzV7QRo74dbAOotPqRc_O261BKqZEUer9N!311905168!1478134677119 at 2016-11-03 08:57:57
08:57:57 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:57 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:57 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:57 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:57 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:57 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : b-8nsUAYEffMD5ojYpjM137YY9q4FSKH6TuiShQGUiFdPkZeiFCj!311905168!1478134677528 at 2016-11-03 08:57:57
08:57:57 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:57 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:57 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:57 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:57 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:57 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : ZUInsUG-4B7oK8va2KC34kHAyFXS6WzlvL1Algxi1zFOEbLTDa2G!311905168!1478134677950 at 2016-11-03 08:57:57
08:57:57 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:57 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:57 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:58 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:58 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:58 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : BFAnsUOHLGhgroCdTxHrL2U_xKrBKmD6f9RMgGdaTrmeE5W2lSSP!311905168!1478134678407 at 2016-11-03 08:57:58
08:57:58 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:58 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:58 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:57:58 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml
08:57:58 DEBUG (main.SessionPhaseListener.afterPhase:82)- logout param: false
08:57:58 DEBUG (main.CustomSessionListener.sessionCreated:29)- Current Session created : nnEnsUU432MyTkXmm8wqr7irY8EA_jnMvIxVETLgRY6KWW0CZ8Ff!311905168!1478134678840 at 2016-11-03 08:57:58
08:57:58 DEBUG (main.Util.getRequestParam:371)- request Parm Key [lang]:Value [null]
08:57:58 DEBUG (main.Controller.CtrlLoginCore.init:148)- Login Init Locale: en_UK
08:57:58 DEBUG (main.SessionPhaseListener.afterPhase:104)- Session Closed
08:58:07 DEBUG (main.SessionPhaseListener.afterPhase:63)- View /Main/Login.xhtml

练习markdown语法

送扥

送扥

送扥

送扥

  1. 送扥三扥森
  2. 送扥三扥森
  3. 送扥三扥森
  4. 送扥三扥森

·
String locale = Util.getRequestParam("lang");
this.setSelLocale("en_UK");
for(String[] lang : this.langList()){
if(Utils.chkEqualFirst(locale, lang[1])){
this.setSelLocale(locale);
break;
}
}
·

sdfsdfsf safdsafasdf

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.