当前位置:编程学习 > JAVA >>

想问问各位JAVA大神,现在还用JSTL来写JSP么??

如题,本人在学JAVA web,然后先学了 servlet 作为基础
现在在啃JSP,然后看到了EL和JSTL,因为是在书上看到的,而之前我看的JSP视频教程里面完全没有提及到这两样东西.
就是 感到疑惑,是不是现在都不用 <%%> 来内嵌JAVA代码了,而都改成了用JSTL...
我怎么觉得,JSP+JAVABEAN的结合,还是要用到一点点的 <%%>来嵌入JAVA片段的,因为在这个基础上也已经把基本的业务逻辑交给了JAVABEAN.
我只是现在学习得有点迷惑了,因为看的书是 06年 wrox 出版的 JSP程序设计.而像这些编程语言什么的,技术是每天都在更新,进步的.不知道我该怎么学下去了,我自认为,学Servlet学得还行,而JSP也应该很快上手的,只是,现在多了个EL 和 JSTL,就觉得挺不习惯的.想自己先做一个 像网上商城的东西.
而且,去找了JSTL的下载,发现 最近修改时04年??那是不是 一直到现在,它的版本都没有得到更新...那还有学习的必要么?
表述略乱,只是想多问问关于JAVA WEB 这个领域的知识,希望也有跟我一样在学习的人一起来讨论吧,或者得到大神的点拨.
谢过~ jsp java web servlet --------------------编程问答-------------------- 现在都用框架开发了,像jsp里的<% %> <%! %>基本不用了,
偶尔还能见到<%= %>

jstl和el表达式当然还是要用到的了。。。 --------------------编程问答--------------------
引用 1 楼 flagiris 的回复:
现在都用框架开发了,像jsp里的<% %> <%! %>基本不用了,
偶尔还能见到<%= %>

jstl和el表达式当然还是要用到的了。。。

用 框架就是 用 Strus ,Spring这些咯..那学习到怎么样的基础上能去学习这些框架...另外,我发现 用JSP写的网站大多是 银行网站,那以后 出来工作的话,大概什么公司需要 JSP程序员.. --------------------编程问答--------------------
引用 1 楼 flagiris 的回复:
现在都用框架开发了,像jsp里的<% %> <%! %>基本不用了,
偶尔还能见到<%= %>

jstl和el表达式当然还是要用到的了。。。


另外...找不到去哪里下载JSTL, 也不太懂 怎么配置JSTL。
我用的是 tomcat5.5 --------------------编程问答--------------------
引用 3 楼 Hope_Kelvin 的回复:
引用 1 楼 flagiris 的回复:现在都用框架开发了,像jsp里的<% %> <%! %>基本不用了,
偶尔还能见到<%= %>

jstl和el表达式当然还是要用到的了。。。

另外...找不到去哪里下载JSTL, 也不太懂 怎么配置JSTL。
我用的是 tomcat5.5


就要这两个jar包
http://download.csdn.net/detail/liyanhui1001/3599368

然后网上搜一下用法就可以了。。。

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ page import="java.util.*,cn.tci.test.*" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!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>Insert title here</title>
</head>
<body>
<c:out value="jstl" />
</body>
</html>
--------------------编程问答--------------------
引用 4 楼 flagiris 的回复:
引用 3 楼 Hope_Kelvin 的回复:引用 1 楼 flagiris 的回复:现在都用框架开发了,像jsp里的<% %> <%! %>基本不用了,
偶尔还能见到<%= %>

jstl和el表达式当然还是要用到的了。。。

另外...找不到去哪里下载JSTL, 也不太懂 怎么配置JSTL。
我用的是 tomcat5.5

就要这两个jar包
ht……


谢谢了,全部搞定了~~嘿嘿~
--------------------编程问答-------------------- JSTL用的还是比较多的。jsp里面嵌入java代码到时挺少的了。一般都用js写函数了。 --------------------编程问答-------------------- JSTL用得还是比较多的. --------------------编程问答--------------------
引用 6 楼 bingLoVezi 的回复:
JSTL用的还是比较多的。jsp里面嵌入java代码到时挺少的了。一般都用js写函数了。

你说的用JS写函数  是JavaScript 写么。。。。JS不是做前端效果的么 --------------------编程问答--------------------
引用 7 楼 wjg19890301 的回复:
JSTL用得还是比较多的.


努力学习 哈哈 --------------------编程问答-------------------- JSTL和EL的使用得看公司了,用servlet开发用的就相对比较多, 用SSH开发就几乎不用了, 不过就算用servlet开发,一般也不会在jsp中写大的代码,JS(JavaScript)功能很强大,可以做出很炫的页面效果,也可以实现一些逻辑,前台美工用js美化页面,后台用js实现一些简单的功能,比如简单的表单非空验证,数据合法性验证之类的 --------------------编程问答-------------------- jsp本身是可有可无的,它仅仅用于展示数据,只要没有业务逻辑就符合编码规范了,它标签库就更加是可选项,我从来不使用这些,因为仅仅为了使代码看上去和页面语言融为一体而使用另一种作用近乎相同的语言,这样做代价太大,得不偿失。 --------------------编程问答--------------------
引用 11 楼 xodbc 的回复:
jsp本身是可有可无的,它仅仅用于展示数据,只要没有业务逻辑就符合编码规范了,它标签库就更加是可选项,我从来不使用这些,因为仅仅为了使代码看上去和页面语言融为一体而使用另一种作用近乎相同的语言,这样做代价太大,得不偿失。

貌似是啊  只要 JSP+JAVABEAN+SERVLET 就可以把业务逻辑,表象和控制分离了。而且,就能开发一般的web项目了。
但,好歹 JSTL和EL 是技术 也有时间,就学一并学习了吧。 --------------------编程问答--------------------
引用 10 楼 lwlwax 的回复:
JSTL和EL的使用得看公司了,用servlet开发用的就相对比较多, 用SSH开发就几乎不用了, 不过就算用servlet开发,一般也不会在jsp中写大的代码,JS(JavaScript)功能很强大,可以做出很炫的页面效果,也可以实现一些逻辑,前台美工用js美化页面,后台用js实现一些简单的功能,比如简单的表单非空验证,数据合法性验证之类的

Servlet 是个非常强大的东西, 他能完成一切 JSP 能完成的东西。 --------------------编程问答-------------------- 用jstl还是有很多好处的,虽然jsp都可以搞定 --------------------编程问答--------------------
引用 10 楼 lwlwax 的回复:
JSTL和EL的使用得看公司了,用servlet开发用的就相对比较多, 用SSH开发就几乎不用了, 不过就算用servlet开发,一般也不会在jsp中写大的代码,JS(JavaScript)功能很强大,可以做出很炫的页面效果,也可以实现一些逻辑,前台美工用js美化页面,后台用js实现一些简单的功能,比如简单的表单非空验证,数据合法性验证之类的


其实...突然间发现一个问题想请教.
我之前都是 直接在Tomcat 的 wepapps 下新建 web项目 ,然后 写的servlet 都是放在WEB-INF文件夹下的classes文件夹里。
我现在用 MyEclipse 去写 java web 项目....发现,在MyEclipse下创建的web项目里 WEB-INF文件夹下没有classes 子文件夹,那 我要写servlet,是不是要在WEB-INF下新建个classes文件夹,把servlet写在里面,还是随便在外面 建一个包,然后在web.xml中部署?? --------------------编程问答-------------------- 多多了解,用到了在精研,至少你要知道有这么个技术,用到时能很快上手 --------------------编程问答-------------------- 现在都用标签吧,你可能刚用的时候有一些不习惯,我一开始使用标签的时候也是不习惯,有这样一个想法用标签还不如内嵌java代码呢,就是你打的《%%》这个东西,现在我标签用多了,发现,能用标签的就用标签,不能用标签的也要写个自定义标签上去,内嵌代码的话太难看了,用标签多么一目了然,你还是慢慢习惯用标签吧,标签才是王道 --------------------编程问答-------------------- 后面你要转的地方还很多,比如ongl表达式,ongl表达式更强大,他兼容el,jstl,去用ognl吧,后面你会觉得,刚把jsp标签用熟练了,你又要转战freemarker标签了 --------------------编程问答-------------------- 用myeclipse开发工具,jstl在你新建一个WEB工程的时候它会自动把包给你导进去。你只要把它引进去就行了。大部分人多觉得jsp主要是用来做前端界面的,所以很多大公司都不希望jsp里面出现java片段。但是我们却不得不用,jstl这个时候就派上用场了,而且它内容也不多,记住几个常用的就行。 --------------------编程问答--------------------
引用 19 楼 MS20HJ 的回复:
用myeclipse开发工具,jstl在你新建一个WEB工程的时候它会自动把包给你导进去。你只要把它引进去就行了。大部分人多觉得jsp主要是用来做前端界面的,所以很多大公司都不希望jsp里面出现java片段。但是我们却不得不用,jstl这个时候就派上用场了,而且它内容也不多,记住几个常用的就行。

是, 现在都知道怎么在myeclipse中去用JSTL 了,然后 用JSTL一定都要结合EL 来用。
在用的时候又出现了问题
例如下面这段代码 

<c:set var="guess" value="12"/>
    <c:if test="${(guess >= 10) && (guess<=20))} ">
     <b>You are in range!</b>
    </c:if>

然后 打开这个JSP 页面 会出错。而且 错误提示就是在这里


type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: /register.jsp(30,4) "${(guess >= 10) && (guess<=20))} " contains invalid expression(s): javax.servlet.jsp.el.ELException: Encountered ")", expected one of ["}", ".", ">", "gt", "<", "lt", "==", "eq", "<=", "le", ">=", "ge", "!=", "ne", "[", "+", "-", "*", "/", "div", "%", "mod", "and", "&&", "or", "||", "?"]
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:198)
org.apache.jasper.compiler.JspUtil.validateExpressions(JspUtil.java:597)
org.apache.jasper.compiler.Validator$ValidateVisitor.getJspAttribute(Validator.java:1109)
org.apache.jasper.compiler.Validator$ValidateVisitor.checkXmlAttributes(Validator.java:934)
org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:706)
org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1442)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2166)
org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2216)
org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2222)
org.apache.jasper.compiler.Node$Root.accept(Node.java:457)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2166)
org.apache.jasper.compiler.Validator.validateExDirectives(Validator.java:1481)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:174)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:326)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:307)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:295)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:565)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.36 logs.
--------------------编程问答-------------------- EL很多用到JSTL偶尔也会用到 --------------------编程问答--------------------
引用 20 楼 Hope_Kelvin 的回复:
引用 19 楼 MS20HJ 的回复:
用myeclipse开发工具,jstl在你新建一个WEB工程的时候它会自动把包给你导进去。你只要把它引进去就行了。大部分人多觉得jsp主要是用来做前端界面的,所以很多大公司都不希望jsp里面出现java片段。但是我们却不得不用,jstl这个时候就派上用场了,而且它内容也不多,记住几个常用的就行。
是, 现在都知道怎么在myeclipse中去用JSTL 了……

<c:if test="${(guess >= 10) && (guess<=20))} ">

这个地方多了个括号 --------------------编程问答--------------------
引用 22 楼 cqrf2006 的回复:
引用 20 楼 Hope_Kelvin 的回复:引用 19 楼 MS20HJ 的回复:
用myeclipse开发工具,jstl在你新建一个WEB工程的时候它会自动把包给你导进去。你只要把它引进去就行了。大部分人多觉得jsp主要是用来做前端界面的,所以很多大公司都不希望jsp里面出现java片段。但是我们却不得不用,jstl这个时候就派上用场了,而且它内容也不多,记住几个……

呃...好像不是这个问题,这里是多了个 括号,是我打错了。 但是把那个多余的括号去掉之后 还是一样的错误。  不知道为什么。。。因为我也是 试了很多次的。
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,