日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

JSTL 及 tablibs 的简单介绍和配置方法

發(fā)布時間:2025/3/20 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JSTL 及 tablibs 的简单介绍和配置方法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

JSTL 及 tablibs 的簡單介紹和配置方法

jstl 簡介

jstl 的全稱就是jsp standard tag libraries, 就是jsp里的標(biāo)準(zhǔn)標(biāo)簽庫。
引用jstl技術(shù)能在jsp種使用更加強大的標(biāo)簽(tag)。

jstl 里包含多個標(biāo)準(zhǔn)庫, 本文主要簡單講講其中的核心標(biāo)準(zhǔn)庫

核心庫

主要封裝的是一些基本的核心的業(yè)務(wù)邏輯。

tablibs

這個名稱一看就知道, 就是指標(biāo)簽庫的集合了。

Spring mvc里配置 tablibs

maven 設(shè)置

當(dāng)然要在maven里加入兩個包, 分別是 jstl 和 standard。
在pom.xml里加入

<dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId><version>1.2</version> </dependency><dependency><groupId>taglibs</groupId><artifactId>standard</artifactId><version>1.1.2</version> </dependency>

那么在 WEBINF/lib 里就會加入jstl-1.2.jar 和 standard-1.1.2.jar 這兩個包

spring-context.xml 配置

現(xiàn)在大部分人使用的viewReslover 都是InternalResoucesViewReslover。

在InternalResoucesViewReslover的配置里加上個viewClass的Property

<!-- InternalResoucesViewReslover --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/><property name="prefix" value="/WEB-INF/jsp/"></property><property name="suffix" value=".jsp"/> </bean>

jsp頁面配置

只需要在jsp里頭部加上

下面這句

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

聲明一下核心標(biāo)簽庫, 注意這個真是jstl的1個部分, 其余部分參考spring文檔。

1個例子

這個例子使用了核心tablibs中最常用的 1個

我們知道, 如果jsp頁面接受1個從后臺(controller)傳過來的參數(shù)的值,一般如下寫法法就ok了

<input type="hidden" name="showIds" id="showIds" value=${paraId}/>

但是, 如果接受的參數(shù)是1個容器(list/map)的話, 單靠jsp就不好處理了。
一般的做法是把容器里元素的遍歷用javascript寫在 jsp頁面的初始化event里

但是如果使用jstl 標(biāo)簽庫, 就能直接在jsp遍歷傳過來的容器元素哦。

controller 傳值

package com.home.controller;import java.util.HashMap; import java.util.Map;import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod;import com.home.rest.User;@Controller @RequestMapping("/user") public class UserRestController {private Map<Integer,User> userMap = new HashMap<Integer, User>();public UserRestController(){userMap.put(1, new User(1,"jack","jacky","jack@163.com"));userMap.put(2, new User(2,"nick","nicky","nick@163.com"));userMap.put(3, new User(3,"jenny","jenny","jenny@163.com"));userMap.put(4, new User(4,"bill","billy","bill@163.com"));}@RequestMapping(value="/users", method=RequestMethod.GET)public String list(Model model){model.addAttribute("users", userMap);return "rest/user/users";}}

上面的例子利用model傳了包含幾個User對象的map容器過去。。

jsp遍歷容器元素

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>User list</title> </head> <body><c:forEach items="${users}" var="um">-- ${um.value.id} -- ${um.value.name}-- ${um.value.email}<br></c:forEach></body> </html>

可以見到我利用 這個標(biāo)簽直接遍歷里參數(shù)容器。

頁面效果

總結(jié)

以上是生活随笔為你收集整理的JSTL 及 tablibs 的简单介绍和配置方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。