草庐IT

day24-服务器端渲染技术02

服务器端渲染技术0211.EL表达式11.1EL表达式介绍EL表达式全称:ExpressionLanguage,是表达式语言EL表达式主要是代替jsp页面的表达式脚本EL表达式输出数据时,比jsp的表达式脚本简洁EL表达式基本语法:$底层其实走的还是jsp表达式脚本,可以理解为就是一个语法糖11.2EL表达式快速入门el_qs.jsp:el表达式的快速入门el表达式的快速入门1.jsp表达式脚本名字:2.el表达式名字:${name}注意:EL表达式在输出null时,输出的是空串""jsp脚本在输出null时,输出的是“null”字符串11.3EL常用输出形式EL表达式常用输出Bean的普通属

day24-服务器端渲染技术02

服务器端渲染技术0211.EL表达式11.1EL表达式介绍EL表达式全称:ExpressionLanguage,是表达式语言EL表达式主要是代替jsp页面的表达式脚本EL表达式输出数据时,比jsp的表达式脚本简洁EL表达式基本语法:$底层其实走的还是jsp表达式脚本,可以理解为就是一个语法糖11.2EL表达式快速入门el_qs.jsp:el表达式的快速入门el表达式的快速入门1.jsp表达式脚本名字:2.el表达式名字:${name}注意:EL表达式在输出null时,输出的是空串""jsp脚本在输出null时,输出的是“null”字符串11.3EL常用输出形式EL表达式常用输出Bean的普通属

day27-过滤器Filter02

Filter过滤器025.Filter过滤器生命周期Filter生命周期图解验证-Tomcat来创建Filter实例,只会创建一个实例packagecom.filter;importjavax.servlet.*;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpSession;importjava.io.IOException;/***1.filter在web项目启动时,由Tomcat来创建Filter实例,只会创建一个实例*2.会调用filter的默认无参构造器,同时会调用init()方法,只会

day27-过滤器Filter02

Filter过滤器025.Filter过滤器生命周期Filter生命周期图解验证-Tomcat来创建Filter实例,只会创建一个实例packagecom.filter;importjavax.servlet.*;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpSession;importjava.io.IOException;/***1.filter在web项目启动时,由Tomcat来创建Filter实例,只会创建一个实例*2.会调用filter的默认无参构造器,同时会调用init()方法,只会

【Java并发入门】02 Java内存模型:看Java如何解决可见性和有序性问题

如何解决其中的可见性和有序性导致的问题,这也就引出来了今天的主角——Java内存模型。一、什么是Java内存模型?导致可见性的原因是缓存,导致有序性的原因是编译优化,那解决可见性、有序性最直接的办法就是禁用缓存和编译优化,但这样虽然解决了问题,但也导致带来的性能优化都没了。因此,解决方案是:提出一套规则和方法,是程序员能在该禁用的时候禁用,不该禁用的时候不禁用。Java内存模型规范就是来解决这个问题的——提供按需禁用缓存和编译优化的方法具体来说,这些方法包括volatile、synchronized和final三个关键字,以及六项Happens-Before规则,这也正是本期的重点内容。二、H

【Java并发入门】02 Java内存模型:看Java如何解决可见性和有序性问题

如何解决其中的可见性和有序性导致的问题,这也就引出来了今天的主角——Java内存模型。一、什么是Java内存模型?导致可见性的原因是缓存,导致有序性的原因是编译优化,那解决可见性、有序性最直接的办法就是禁用缓存和编译优化,但这样虽然解决了问题,但也导致带来的性能优化都没了。因此,解决方案是:提出一套规则和方法,是程序员能在该禁用的时候禁用,不该禁用的时候不禁用。Java内存模型规范就是来解决这个问题的——提供按需禁用缓存和编译优化的方法具体来说,这些方法包括volatile、synchronized和final三个关键字,以及六项Happens-Before规则,这也正是本期的重点内容。二、H

【java8新特性】02:常见的函数式接口

Jdk8提供的函数式接口都在java.util.function包下,Jdk8的函数式类型的接口都有@FunctionInterface注解所标注,但实际上即使没有该注解标注的有且只有一个抽象方法的接口,都可以算是函数式接口。在JDK8中内置的四大核心函数式接口如下:函数式接口接口类型参数类型返回类型作用Stream流中的应用场景Consumer消费型接口Tvoid对类型为T的对象进行操作,包含方法为accpet(Tt)如forEach、peek等方法的函数式接口都是Consumer类型Supplier供给型接口无T返回类型为T的对象,包含方法为Tget()如collect等方法的某些方法重载

【java8新特性】02:常见的函数式接口

Jdk8提供的函数式接口都在java.util.function包下,Jdk8的函数式类型的接口都有@FunctionInterface注解所标注,但实际上即使没有该注解标注的有且只有一个抽象方法的接口,都可以算是函数式接口。在JDK8中内置的四大核心函数式接口如下:函数式接口接口类型参数类型返回类型作用Stream流中的应用场景Consumer消费型接口Tvoid对类型为T的对象进行操作,包含方法为accpet(Tt)如forEach、peek等方法的函数式接口都是Consumer类型Supplier供给型接口无T返回类型为T的对象,包含方法为Tget()如collect等方法的某些方法重载

day02-Spring基本介绍02

Spring基本介绍025.简单模拟Spring基于XML配置的程序5.1需求说明自己写一个简单的Spring容器,通过读取beans.xml,获取第一个Javabean:Monster的对象,给该对象属性赋值,放入到容器中,并输出该对象信息也就是说,不使用spring原生框架,我们自己简单模拟实现,目的是了解Spring容器的简单机制5.2思路分析5.3代码实现引入dom4j.jar包MyApplicationContext.java:packagecom.li.myapplicationcontext;importcom.li.bean.Monster;importorg.dom4j.Do

day02-Spring基本介绍02

Spring基本介绍025.简单模拟Spring基于XML配置的程序5.1需求说明自己写一个简单的Spring容器,通过读取beans.xml,获取第一个Javabean:Monster的对象,给该对象属性赋值,放入到容器中,并输出该对象信息也就是说,不使用spring原生框架,我们自己简单模拟实现,目的是了解Spring容器的简单机制5.2思路分析5.3代码实现引入dom4j.jar包MyApplicationContext.java:packagecom.li.myapplicationcontext;importcom.li.bean.Monster;importorg.dom4j.Do