*****Action中的处理:**************8
//====普通字符串======//
request.setAttribute("hello", "Hello World");
//====对象===============//
User user=new User();
user.setUsername("wulihai");
user.setAge(25);
Group group=new Group();
group.setName("地下党");
user.setGroup(group);
//=====以上是业务逻辑处理,应该单独放入一个业务处理类中======
request.setAttribute("user", user);
//=======Map==============//
Map elMap=new HashMap();
elMap.put("key1", "value1");
elMap.put("key2", "value2");
request.setAttribute("elMap", elMap);
//=========集合======//
List userlist=new ArrayList();
for (int i=0; i<10; i++) {
User usr = new User();
usr.setUsername("USR_" + i);
usr.setAge(25+i);
userlist.add(usr);
}
request.setAttribute("userlist", userlist);
//=========对象数组=========//
User[] users = new User[10];
for (int i=0; i<10; i++) {
User u = new User();
u.setUsername("U_" + i);
users[i] = u;
}
request.setAttribute("users", users);
//=========字符串数组========//
String[] strArray = new String[]{"a", "b", "c"};
request.setAttribute("strArray", strArray);
*******Jsp页面获取值***********************
//=====普通字符串,EL表达式的使用方法$和{},EL表达式的隐含对象pageScope/requestScope/sessionScope/applicationScope等等
如果为指定scope,它的搜索顺序是pageScope~applicationScope====//
hello(el,scope=request): ${requestScope.hello}<br>
hello(el,scope=session): ${sessionscope.hello} <br>
//=====对象</li>使用"."来导航
姓名 : ${user.username}<br>
年龄 : ${user.age}<br>
所属组:${user.group.name}<br>
//==Map</li>使用"."来导航
elMap.value1: ${elMap.key1}<br>
elMap.value2: ${elMap.key2}<br>
//==集合</li>使用中括号[]加下标数字导航<br>
userlist[4].username: ${userlist[4].username}<br>
userlist[4].age: ${userlist[4].age}<br>
//==对象数组</li>使用中括号[]加下标数字导航<br>
users[5].username:${users[5].username}
//==字符串数组</li>使用中括号[]加下标数字导航<br>
strArray[0]:${strArray[0] }<br>
strArray[1]:${strArray[1] }<br>
//==EL表达式对运算符的支持</li><br>
1+4:${1+4 }<br>
9-3:${9-2 }<Br>
2*3:${2*3 }<br>
9/2:${9/3 }<br>
9mod2:${9 mod 2 }<br>
4div1:${4div 1 }<br>
===================JSTL的核心标签 ===================
//==c:out的value属性支持El表达式,<font color='red'>特别注意value后面可以跟El表达式,也可以跟字符串
hello(value="${hello}): <c:out value="${hello}"/><br>
abcd:<c:out value="${abcd}" /><br>
c:out的default属性,此外c:out的defalut属性是默认值,在value为空的情况下取default的值<br>
abcd(default="为空"):<c:out value="${abcd}" default="为空"/><br>
c:out的escapeXml属性,默认为true,原样输出<br>
bj(escapeXml="false")<c:out value="${bj}" escapeXml="false"/><br>
bj(escapeXml="true")<c:out value="${bj}" escapeXml="true"/><br>
//==c:set/c:remove
<c:set var="temp" value="${userlist[1].username}"/>
temp:<c:out value="${temp}"/><br>
<c:remove var="temp"/>
temp:<c:out value="${temp}"/><br>
//==c:if
<c:if test="${v1 lt v2}">
v1 小于 v2
</c:if>
//===c:forEach循环输出Map的元素==//
<c:forEach items="${elMap}" var="m">
${m.key},${m.value }<br>
</c:forEach>
//====c:choose/c:when/c:otherwise============//
<table border="1">
<tr>
<td>姓名</td>
<td>年龄</td>
<td>所属组</td>
</tr>
<c:choose>
<c:when test="${(empty userlist)}">//判断userlist是否为空
<tr>
<td colspan="3"> 没有合适的数据</td>
</tr>
</c:when>
<c:otherwise>
//=====迭代集合userlist,从第2个开始,第8个结束,步长为2======//
<c:forEach items="${userlist}" var="usr" begin="2" end="8" step="2" varStatus="v">
//====两层嵌套,c:otherwise内部又好包含又c:when,c:otherwise===//
<c:choose>
<c:when test="${v.count % 2==0}">//===判断行数是否是偶数,如果是偶数,将背景色改为红色===//
<tr bgcolor="red">
</c:when>
<c:otherwise>
<tr>
</c:otherwise>
</c:choose>
<td>${usr.username}</td>
<td>${usr.age }</td>
<td>${usr.group.name }</td>
</tr>
</c:forEach>
</c:otherwise>
</c:choose>
//=====c:import,相当于jsp中的include包含某个页面====//
<c:import url="http://localhost:8080/login_struts"/>
//=====credirect:重定向=====//
<c:redirect context="/login_struts" url="/login.jsp"/>
分享到:
相关推荐
5、本系统采用到的技术:JSP+Struts+JSTL+EL,我本人喜欢JSTL+EL的组合方式,他不景向页面美观! 6、mysql.sql这个文件是mysql的脚本文件,您可以用它来创建数据库! <!DOCTYPE ...
以用户管理为例,结合spring struts hibernate dwr jstl做的实例,struts hibernate dwr 与Spring完全结合,实现用户列表、信息增、删、改、查、维护时用户重名提示等功能,还包括页面自动转码设置(web.xml),...
Apache的Struts2已经是很流行的MVC Web框架了,很多Web开发人员都是使用它做为Web...像Struts2的常用配置功能笔者就不在说了,在此结合作者的Web相关技术(Struts2、JSTL、EL……)使用经验做个总结,希望与您有个共鸣。
采用到的技术:JSP+Struts+JSTL+EL,系统特色: 1、前台完全生成静态HTML 2、栏目是无级分类的,您可以随意设置栏目,只要您能想到的,多少都可以:) 3、制作简单,由于本人以前曾经使用过动易网站管理系统,所以在...
struts2大量使用拦截器来处理请求,从而允许与业务逻辑控制器 与 servlet-api分离,避免了侵入性(所谓侵入性就是指的这个架构设计出来的部件对系统的影响范围,标签库几乎可以完全替代JSTL的标签库,并且 struts2.x...
采用到的技术:JSP+Struts+JSTL+EL,系统特色: 1、前台完全生成静态HTML 2、栏目是无级分类的,您可以随意设置栏目,只要您能想到的,多少都可以:) 3、制作简单,由于本人以前曾经使用过动易网站管理系统,所以在...
5、本系统采用到的技术:JSP+Struts+JSTL+EL,我本人喜欢JSTL+EL的组合方式,他不景向页面美观! 6、mysql.sql这个文件是mysql的脚本文件,您可以用它来创建数据库! 7、这个新闻发布系统,由我个人独立开发,在线...
Java Web 面试题含答案主要涵盖了 Java Web 开发的核心技术和概念,包括 JSP、Servlet、Cookie、Session、JSTL、J2EE、Struts 等。下面是对这些技术的详细解释和分析: 1. JSP 和 Servlet 的区别、共同点、应用范围...
JSTL和EL是大家在JSP前端开发中经常用到的一门标签语言,用熟的话完全可替代JSP脚本或者Struts标签,本PPT对该语言进行了全面的讲解。
6.4.1. Spring AOP还是完全用AspectJ? 6.4.2. Spring AOP中使用@AspectJ还是XML? 6.5. 混合切面类型 6.6. 代理机制 6.7. 编程方式创建@AspectJ代理 6.8. 在Spring应用中使用AspectJ 6.8.1. 在Spring中使用AspectJ...
11. 可定制的本地化和主题解析:支持在JSP中可选择地使用Spring标签库、支持JSTL、支持Velocity(不需要额外的中间层)等等。 12. Spring Bean的生命周期可以被限制在当前的HTTP Request或者HTTP Session:准确的说...
6.4.1. Spring AOP还是完全用AspectJ? 6.4.2. Spring AOP中使用@AspectJ还是XML? 6.5. 混合切面类型 6.6. 代理机制 6.7. 编程方式创建@AspectJ代理 6.8. 在Spring应用中使用AspectJ 6.8.1. 在Spring中使用...
6.4.1. Spring AOP还是完全用AspectJ? 6.4.2. Spring AOP中使用@AspectJ还是XML? 6.5. 混合切面类型 6.6. 代理机制 6.6.1. 理解AOP代理 6.7. 以编程方式创建@AspectJ代理 6.8. 在Spring应用中使用AspectJ ...
6.4.1. Spring AOP还是完全用AspectJ? 6.4.2. Spring AOP中使用@AspectJ还是XML? 6.5. 混合切面类型 6.6. 代理机制 6.6.1. 理解AOP代理 6.7. 以编程方式创建@AspectJ代理 6.8. 在Spring应用中使用AspectJ ...
java开发常用的api包括BeanUtils1.8.3+css2+javascript+JavaScript网页设计300例+jQuery+JSTL+mysql+oracle+servlet+Spring+Framework+开发参考手册+Struts2+tomcat-docs(Servlet&JSP API)+W3C+网页制作完全手册
6.4.1. Spring AOP还是完全用AspectJ? 6.4.2. Spring AOP中使用@AspectJ还是XML? 6.5. 混合切面类型 6.6. 代理机制 6.7. 编程方式创建@AspectJ代理 6.8. 在Spring应用中使用AspectJ 6.8.1. 在Spring中使用...
JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (<jcaptcha:image label="Type the text "/> ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...
这是一个典型的分支控制指令,该指令的作用完全类似于Java语言中的if,if指令的语法格式如下: <#if condition>... <#elseif condition>... <#elseif condition>... <#else> ... 例子如下: (age>60)>老年人 ...
Spring-mvc框架的Controller目前已经可以完全替代Struts的ction来处理扫瞄器的请求,而在配置上,Spring-mvc比Struts基于Java的客户关系管理系统的设计与实现(全文)全文共6页,当前为第2页。基于Java的客户关系管理...
JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (<jcaptcha:image label="Type the text "/> ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...