JSP详解(1)

tech2022-10-10  104

什么是JSP

JSP本质上就是一个Servlet,JSP主要负责与用户交互,将最终的界面呈现给用户,HTML+JS+CSS+Java的混合文件。

返回一个网页页面

在前面的Servlet中,我们想客户端返回的都是一个字符串,比如"hello world" 那么如何返回一个页面呢? (1)创建一个简单的html页面 新建记事本,输入: 保存退出,修改后缀名为html 双击打开 一个简单的网页就创建好了 2.在Servlet中怎样返回这个页面呢? (1)最笨的方法 将网页的源码一行一行的放在doGet()方法里 编译运行 显示我们自定义的页面 这个方法虽然可以,但是很显然,太麻烦,非常麻烦,实际的开发中没人会这么做 这个时候就要使用JSP了 3.我们在前面说过,在IDEA中创建一个新的web项目时,会自动生成index.jsp文件 其中代码为; 当我们编译运行项目时,浏览器会自动打开,打开的默认界面就是index.jsp文件内定义的界面, 当我们在网页地址内输入我们自定义的地址是,这个页面才会加载我们的Servlet,比如前面的输出一个字符串或者一个页面 4.在web下新建一个jsp文件test.jsp 写入内容 编译运行,在打开的页面地址内输入test.jsp,回车 当服务器接收到一个后缀是jsp的请求时,会将该请求交给JSP引擎去处理,每一个JSP页面第一次被访问的时候,JSP引擎会将其翻译成一个Servlet文件,再由Web容器调用Servlet完成响应。

标题

单纯从开发的角度来看,JSP就是在HTML中嵌入Java程序 具体的嵌入方式有三种: 1.JSP脚本–执行Java逻辑代码 在html文件中添加这样一行代码:

<% Java代码 %>

就可以了 在上面创建的test.jsp中添加Java代码 编译运行,再打开的页面地址内访问test.jsp,回车 可以发现,在页面内只显示了h1之间的内容 而我们Java中的hello world并没有显示在页面,而是显示在IDEA的控制台上 这是什么原因造成的? 当我们在服务器上访问jsp文件时,遇到<% %>内的Java代码时,会首先复制这段Java代码,将其复制到继承HttpServlet类的Servlet类的doGet()方法内。 例如 可以看出,如果想将内容输出到浏览器页面上,就必须通过write方法,而我们的Java并没有write方法,仅有System.out.println,因此hello world只是被输出到本地的控制台中,并不会被显示到浏览器页面中

2.JSP声明 – 定义Java方法

<%! 声明Java方法 //只能在这里面定义方法,不能调用方法 //调用方法只能在<% %>内 %>

3.JSP表达式 – 把Java对象直接输出显示在页面上

<%=java变量%>

编译运行项目,在浏览器打开的页面地址中访问test.jsp 可以看到helloworld已经显示在页面上了

最新回复(0)