<c:choose>
<c:when test="${empty login}">
<li><a href="../index/loginUI.do"><i class="fa fa-user"></i>注冊/登錄</a>
</li>
</c:when>
<c:otherwise>
<li><a href="../index/mycenter.do"><i class="fa fa-user"></i>個人中心</a></li>
<li><a href="../index/logout.do"><i class="fa fa-user"></i>退出登錄</a>
</li>
</c:otherwise>
</c:choose>
這是我在JSTL中寫的,可以成功運行,無任何異常
<li><a th:href="@{/login/loginUI}" th:if="${#httpSession.login}eq null"><i class="fa fa-user-md"></i>管理員登陸</a>
</li>
<li><a th:href="@{/index/loginUI}" th:if="${#httpSession.login}eq null"><i class="fa fa-user"></i>注冊/登錄</a>
</li>
<li><a th:href="@{/index/mycenter}" th:unless="${#httpSession.login} eq null"><i class="fa fa-user"></i>個人中心</a></li>
<li><a th:href="@{/index/logout}" th:if="${#httpSession.login} ne null"><i class="fa fa-user"></i>退出登錄</a>
</li>
但是我在thymleaf中使用時總是無法找到login
然后是我的java代碼
@RequestMapping("/index")
public ModelAndView index(HttpServletRequest request, HttpServletResponse response) {
Page page = new Page("filter_form");
page.setPageSize(8);
String currentPage = request.getParameter("page.currentPage");
if (StringUitl.IsNotNull(currentPage)) {
page.setCurrentPage(Integer.parseInt(currentPage));
}
//拼裝map進行查詢
Map<String, Object> map = new HashMap<String, Object>();
map.put("page", page);
List list = changguanService.getForPage(map);
//展示的數(shù)據(jù)
request.setAttribute("list", list);
request.setAttribute("paging", page.getPageStr());
System.out.println(page.getPageStr());
return new ModelAndView("index/index");
}
@RequestMapping("/login")
public void login(HttpServletRequest request, HttpServletResponse response, HttpSession httpSession) throws IOException {
String pwd = request.getParameter("pwd");
String no = request.getParameter("no");
response.setCharacterEncoding("utf-8");
Login login = (Login) httpSession.getAttribute("login");
if (login == null) {
User user = userService.checkUserNo(no, pwd);
if (user == null) {
response.setContentType("text/html;charset=utf-8");
response.getWriter().write("<script>alert('賬號密碼錯誤');</script>");
response.getWriter().write("<script> window.location='../index/index' ;window.close();</script>");
response.getWriter().flush();
}
login = new Login(user.getId(), user.getName(), "user", "");
httpSession.setAttribute("login", login);
}
response.setContentType("text/html;charset=utf-8");
response.getWriter().write("<script>alert('登錄成功');</script>");
response.getWriter().write("<script> window.location='../index/index' ;window.close();</script>");
response.getWriter().flush();
}
請問thymleaf如何才能實現(xiàn)jstl的這種直接判斷未創(chuàng)建對象的空值問題
過于執(zhí)著httpsession的類型,仔細閱讀了文檔,發(fā)現(xiàn)session.login就可以直接拿到值
<li><a th:href="@{/login/loginUI}" th:unless="${session.login} ne null"><i class="fa fa-user-md"></i>管理員登陸</a>
</li>
<li><a th:href="@{/index/loginUI}" th:unless="${session.login} ne null"><i class="fa fa-user"></i>注冊/登錄</a>
</li>
<li><a th:href="@{/index/mycenter}" th:if="${session.login}"><i class="fa fa-user"></i>個人中心</a></li>
<li><a th:href="@{/index/logout}" th:if="${session.login}"><i class="fa fa-user"></i>退出登錄</a>
</li>
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達內(nèi)教育集團成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進“中國制造2025”,實現(xiàn)中華民族偉大復(fù)興的升級產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負責(zé)iOS教學(xué)及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。