请问JSP和Java之间的关联关系到底在什么地方呢?请给我解释一下。
长久以来,我都听周围人说javascript,jsp这些类似与脚本语言的语言(他们好象都和HTML语言相关),但目前就我所接触到的一些javascript以及jsp语言的...
长久以来,我都听周围人说javascript,jsp这些类似与脚本语言的语言(他们好象都和HTML语言相关),但目前就我所接触到的一些javascript以及jsp语言的一些小例题来看,却感觉不到他们和java有什么联系,我一直都觉得他们之间几乎没有关系。例如下面:
这是一个java小程序:
public class A
{
public static void main(String args[])
{
System.out.println("Hello the world");
}
}
而同时这是jsp的:
<html>
<head>
</head>
<body>
</body>
<%@ page pageEncoding = "gb2312"%>
<center>
<%out.println("世界你好");%>
</center>
</html>
个人觉得这两者之间几乎没关系啊?????java程序是在类中,在{ }中写程序,感觉很正规,而后者几乎就是脚本吗?????不知道那位高手可以解释一下呢?最好能够给我找一个他们两者相关的例子(100多行即可)?同时还想知道,现在在开发的项目中是否都要java和什么jsp混写?没有那个地方是单写java或者jsp的吗?(因为本人当初的HTML学的不好,所以比较怵脚本类语言,更加偏爱正式的编程语言),麻烦各位了,如能够帮助在下解除疑惑,必当重重感谢(最好能够给出两者相关的例子)。 展开
这是一个java小程序:
public class A
{
public static void main(String args[])
{
System.out.println("Hello the world");
}
}
而同时这是jsp的:
<html>
<head>
</head>
<body>
</body>
<%@ page pageEncoding = "gb2312"%>
<center>
<%out.println("世界你好");%>
</center>
</html>
个人觉得这两者之间几乎没关系啊?????java程序是在类中,在{ }中写程序,感觉很正规,而后者几乎就是脚本吗?????不知道那位高手可以解释一下呢?最好能够给我找一个他们两者相关的例子(100多行即可)?同时还想知道,现在在开发的项目中是否都要java和什么jsp混写?没有那个地方是单写java或者jsp的吗?(因为本人当初的HTML学的不好,所以比较怵脚本类语言,更加偏爱正式的编程语言),麻烦各位了,如能够帮助在下解除疑惑,必当重重感谢(最好能够给出两者相关的例子)。 展开
9个回答
展开全部
我认为jsp只是一种技术,而不是一种语言,就好象ajax一样。而java则是一种语言。
我理解的jsp,它包括html,js(或其他脚本语言),以及java程序片段,就好象你贴的代码。其中写在<%%>里面的就是纯java代码,哦,当然,<%@ page pageEncoding = "gb2312"%> 这个不是,这是在说这个jsp的编码方式。我建议楼主看些入门级的jsp书籍,这些都是很基础的东西。
至于说两者相关的例子,也许本人水平不够,不知道这两者有什么相关的,在我看来两者几乎没什么关系,除了jsp上可能会有一些java代码。另外,jsp在执行的时候实际上是被应用服务器编译成为class文件,这倒是很像java文件编译之后的class文件的感觉。实际上jsp是在severlet之后出现的。而severlet就是一个java类,他们继承自HttpSeverLet(大概是这个类吧,记不清了),所以可以认为jsp在被执行之前也被编译成了一个java类,也算是相关的地方吧。
我理解的jsp,它包括html,js(或其他脚本语言),以及java程序片段,就好象你贴的代码。其中写在<%%>里面的就是纯java代码,哦,当然,<%@ page pageEncoding = "gb2312"%> 这个不是,这是在说这个jsp的编码方式。我建议楼主看些入门级的jsp书籍,这些都是很基础的东西。
至于说两者相关的例子,也许本人水平不够,不知道这两者有什么相关的,在我看来两者几乎没什么关系,除了jsp上可能会有一些java代码。另外,jsp在执行的时候实际上是被应用服务器编译成为class文件,这倒是很像java文件编译之后的class文件的感觉。实际上jsp是在severlet之后出现的。而severlet就是一个java类,他们继承自HttpSeverLet(大概是这个类吧,记不清了),所以可以认为jsp在被执行之前也被编译成了一个java类,也算是相关的地方吧。
展开全部
上面的各位都已经回答的很完整了
我也来热闹一下
象你贴上去的代码虽然看不上什么关系
我认为一些小的项目基本上用jsp+javaBean就可以解决 在javaBean里写java代码,jsp在执行的时候实际上是被应用服务器编译成为class文件,在jsp页面当中内嵌教少的java代码是好的(最好没有),javabean是用纯java语言编写注重逻辑的处理,而jsp主要关注的是页面的显示,在jsp中使用<jsp:usebean>即可引用javabean;
如果是大型 的项目用到的就更多了比如Struts+Hibernate+Spring+Ajax
无论项目的大小使用javabean维护更新起来也很方便,jsp建立在java基础上的
我也来热闹一下
象你贴上去的代码虽然看不上什么关系
我认为一些小的项目基本上用jsp+javaBean就可以解决 在javaBean里写java代码,jsp在执行的时候实际上是被应用服务器编译成为class文件,在jsp页面当中内嵌教少的java代码是好的(最好没有),javabean是用纯java语言编写注重逻辑的处理,而jsp主要关注的是页面的显示,在jsp中使用<jsp:usebean>即可引用javabean;
如果是大型 的项目用到的就更多了比如Struts+Hibernate+Spring+Ajax
无论项目的大小使用javabean维护更新起来也很方便,jsp建立在java基础上的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你只看到了jsp的表象,并没有理解它的实质。jsp其实本质也是个java程序。你可以打开你本机/tomcat/work文件夹看一下。jsp编译后的文件都放在那里。你打开看一下就会明白。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果你用web容器是Tomcat,看一下tomcat\work\Standalone\localhost目录下的文件,你就明白了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
同意上面 gongxiubin和 lubezhang的提议,去web容器的工作目录下,找到你对应的jsp文件的编译后结果(这个命名虽然不同,但是可以看出来),补充说明如下:
jsp本身是java语言的一种脚本化技术,web容器会将jsp文件转换成java类来执行,并将执行后的输出(html+js)发送给客户端浏览器。
js、html属于浏览器的脚本文件,其真正的解释、应用者是web浏览器如IE等。对于java程序和jsp程序来说,都是一种输入。
因此,程序设计的时候千万要记得,jsp中的java代码,是在程序输出到浏览器之前,后台就已经处理过了的;jsp中的js代码,后台是不能执行的;在后台输出之后,其中的方法什么的后台是无法更改的,除非后台输出一份新的js让前台来解释(相当于将前台页面或者js脚本重新换过)。
jsp本身是java语言的一种脚本化技术,web容器会将jsp文件转换成java类来执行,并将执行后的输出(html+js)发送给客户端浏览器。
js、html属于浏览器的脚本文件,其真正的解释、应用者是web浏览器如IE等。对于java程序和jsp程序来说,都是一种输入。
因此,程序设计的时候千万要记得,jsp中的java代码,是在程序输出到浏览器之前,后台就已经处理过了的;jsp中的js代码,后台是不能执行的;在后台输出之后,其中的方法什么的后台是无法更改的,除非后台输出一份新的js让前台来解释(相当于将前台页面或者js脚本重新换过)。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
最基本的就是用jsp+servlet开发。你说的java类就可以看做servlet,servlet是处理业务逻辑的,而jsp是来做展示用的,jsp在执行的时候首先要编译成servlet,再由jvm编译成类文件。
你上面所写的java类只不过是做测试用的,算不上什么类,不过就是个main方法,并没有干什么事情。
public class QQMangerServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String action = request.getParameter("action");
if (action == null)
action = "";
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String action = request.getParameter("action");
System.out.println("action= " + action);
if (action == null)
action = "";
if (action.equalsIgnoreCase("QQList")) {
DatabaseUtil db = new DatabaseUtil();
Connection con = db.connectionDatabase();
ResultSet rs = db.selectQQ();
request.setAttribute("rs", rs);
request.getRequestDispatcher("/page/QQList.jsp").forward(
request, response);
}
上面是一个servlet的部分内容。你看下把
你上面所写的java类只不过是做测试用的,算不上什么类,不过就是个main方法,并没有干什么事情。
public class QQMangerServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String action = request.getParameter("action");
if (action == null)
action = "";
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String action = request.getParameter("action");
System.out.println("action= " + action);
if (action == null)
action = "";
if (action.equalsIgnoreCase("QQList")) {
DatabaseUtil db = new DatabaseUtil();
Connection con = db.connectionDatabase();
ResultSet rs = db.selectQQ();
request.setAttribute("rs", rs);
request.getRequestDispatcher("/page/QQList.jsp").forward(
request, response);
}
上面是一个servlet的部分内容。你看下把
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |