今天新班开学典礼,我必须出席,所以,上午安排这个班的学员们练习昨天讲解的SimpleFormController。
一两个学员瞒着我,外出找公司面试了几把,最后问了我几道令他们心虚的几道面试题,下午我先为大家分析了这几道面试题:
1.在使用new关键字创建某个类的实例对象时,构造方法抛出了异常,这时候,程序有没有在内存中创建出该类的实例对象呢?请说出理由!
2.对于一个类中的构造方法来说,是否要考虑与该类中的其他方法之间的线程安全吗?请说出理由!
3.如果程序中没有任何变量引用一个外部类对象,但有变量引用其中的内部类对象,请问外部类对象是否会被垃圾回收器回收?请说明理由!
接着,我就着我们写成的书稿,给大家详细过了一下EL表达式,由<c:out>和<c:if>标签引出了如何在WEB应用中引用JSTL标签库。
学员们应重点掌握EL表达式中有哪些隐含对象可用:pageContext、pageScope、requestScope、sessionScope、applicationScope、param、paramValues、header、headerValues、cookie、initParam等等。特别是要注意表达式
${cookie.userName}得到的是一个Cooike对象,而不是名称为userName的cookie值。
由让JSP页面是否支持EL表达式,引出了web.xml配置文件中的<jsp-property-group>元素,可以通过配置其中的<scripting-invalid>元素,让JSP页面中的脚本代码无效。
接着讲解了EL表达式中的运算符,特别是empty和?条件运算符。最后讲解了EL表达式中的自定义函数。