实习日记第五天

2023 年 6 月 9 日           星期五           地点:软通极客人才学院

主要内容:深入学习JSP,完成作业。

       今天是企业认识实习的第五天,也是我学习的最后一天,今天主要是深入学习一下JSP以及完成老师布置的作业,温习一下之前所学的知识。

       上午的课程首先学习高级JSP。第一部分是页面组成,页面的元素分为静态内容、标准动作、指  令、表达式、小脚本、声明以及注释。老师强调Servlet做动态页面响应这种方式有两个问题,第一个是有大量的字符串拼接操作,操作复杂。第二个是前端工程师修改页面代码困难,而为了解决以上问题sun公司给出了:Java Server Page——简称JSP技术,JSP是为了同时满足动态生成网页和简化页面书写的需求诞生的。在JSP文件的编写过程中,共有三种注释方法。第一种是HTML的注释,将输出到客户端。第二种是JSP注释,不翻译到Java文件中,JSP注释只有在JSP文件中可见。第三种是在Java脚本中注释,将翻译到Java文件中,依然是注释语句。其次老师讲了JSP指令的概念,JSP可以通过指令元素而影响容器翻译生成Java类的整体结构。指令的语法为:<%@ directive attr1="value1" attr2="value2" %>其中,directive为指令名,attr指该指令对应的属性名,一个指令可能有多个属性。JSP中常用的指令有三个,分别为page、include和taglib,我们主要学习其中的两个,分别为page指令和include指令。taglib指令老师说将在JSTL标签章节学习。page指令是最复杂的一个指令,共有13个属性。page指令作用于整个JSP页面,可以将指令放在JSP页面任何一个位置。page指令属性的import属性用来引入JSP文件需要使用的类。pageEncoding属性用来设置JSP文件的页面编码格式。session属性用来设置JSP页面是否生成session对象。该属性默认值为true,可以设置成fals。ession属性值设置为false后,该JSP翻译生成的类中将没有内置对象session,该JSP不参与。errorPage属性设置JSP页面的错误页面。当JSP中发生异常或错误却没有被处理时,容器将请求转发到错误页面。显然,当页面将发生异常,而且并没有对异常进行处理,那么将跳转到错误页面,例如定制的error.jsp。isErrorPage属性默认值是false,可以设置为true。在JSP的错误页面中,将isErrorPage设置为true,则该页面翻译生成的Java类中,将生成exception内置对象。include指令是JSP中另外一个常用指令,用来静态包含其他页面。所谓静态包含,指的是在翻译期间,把包含的页面也翻译到当前页面的Java文件中,所谓Java源文件就实现“二合一”。

        下午讲了JSP的标准动作概念,JSP规范中定义了一系列的标准动作。Web容器按照规范进行了实现,可以解析并执行标准动作。标准动作使用XML语法:<jsp:action_nameattribute1="value1" attribute2="value2"></jsp:action_name>其中action_name表示标准动作的名字,attribute1和attribute2是标准动作的若干个属性。我们将学习常用的3种标准动作,forward、include、param。forward动作:在JSP页面中进行请求转发,类似在Servlet中调用RequestDispatcher的forward方法进行请求转发。include动作:在JSP页面中,进行动态包含。如下代码所示:<jsp:include page="top.jsp"></jsp:include>上述代码是动态包含,即在运行期访问被包含的页面,并将响应结果同包含页面的响应结果合并,生成最终响应。类似在Servlet中调用RequestDispatcher的include方法进行包含。因为是动态包含,所以可以在包含时传递请求参数。此外,老师特别强调了include标准动作与include指令的区别,第一点静态包含include指令,而动态包含 include标准动作。第二点nclude指令的属性是file,实现静态包含,发生在翻译阶段,将包含的jsp文件翻译进去 include标准动作的属性是page,实现动态包含,发生在请求阶段,将包含的jsp文件直接翻译成java文件。param动作往往作为子动作使用,为forward和include动作传递参数。第二部分讲述了EL表达式&EL的内置对象。EL全称:Expression Language,其语法是${ 表达式},作用是代替jsp中脚本表达式的功能,简化对java代码的操作。其次分别讲了EL使用—获取作用域的值,EL使用—解析复杂数据,EL使用—执行运算,EL的11个内置对象使用。最后老师为我们讲了JSTL的核心标签库使用。Sun公司,推出了一套java标签的标准,根据这个标准,自己制作了一套标签,给所有的Java程序员使用,这个标签就是JSTL。JSTL由JCP指定标准,提供给Java Web开发人员一个标准通用的标签函数库,它和EL取代传统直接在页面上嵌入Java程序的做法,以提高程序可读性、维护性和方便性。最后的时间都留给我们自己上机测试啦!

        下午就离开实习基地了,在这里学到了许多Java知识也学习到了该公司的企业文化,希望在今后的学习过程里能够不断前进,学习更多的知识,更好的将知识应用于实践!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值