jsp是运行在服务器的,是java MVC 中的V (视图),是在服务器端组装的页面,在组装过程中,遇到Java代码,则执行代码,遇到html标签,则不执行,准备输出到页面.为了防止jsp中有大量代码,Java还提供了jstl(Java标准标签库),里面有一些函数,比如,,这些函数背后其实是对应的Java类,遇到这些标签,则去执行对应的Java类,进行一些逻辑判断或者某些操作.在执行过程中,还会遇到取值问题,遇到el标签,例如$ ,这些标签去哪取值呢?当然是MVC中的model(模型),比如一些实体类,这些类可能已经被放到了一些域对象里面,比如request,session,值栈等等.从这些域对象中取出的值有的是用于函数判断,有的是用于标签取值使用.
等到整个jsp加载完成后,所需要的数据已经完全准备完毕,比如函数判断要不要展示的标签,或者循环多次展示的标签等,然后把准备好的html数据传输给浏览器,在浏览器进行解析,生成我们看到的页面.
以上是jsp动态生成页面的方式.
后来javascript来搅局,有了ajax等异步获取服务器数据的技术,可以不通过jsp也可以在页面获取到服务器的数据,通过ajax去访问服务器,获取到所需的数据后,再动态插入到对应的标签里面去就可以了.
领取专属 10元无门槛券
私享最新 技术干货