一、概述

刚开始学习Javaweb开发的小伙伴都有一个疑惑:用jsp开发前端还是用HTML开发前端呢?

这个疑惑的来源主要是:刚接触完前端但又不深入学习js,接着学习jsp,发现老师们都一直用着jsp做页面进行教学,发现自己一直没有使用过HTML文本做页面。

  原因:不明确区分HTML和jsp,不知道静态页面和动态页面的作用

虽然jsp里面有HTML标签,但是HTML是静态页面,而jsp是动态页面

简单的说:1. HTML不能直接访问数据库的信息(静态页面都不行),它们都需要使用js来调用后台接口(比如使用AJAX实现异步请求)来实现数据访问--纯前端

     2. jsp是使用特定标签(JSTL标签)来调用Java代码来访问数据库信息(为了理解简单就这么说了)

     流程: 1. 浏览器->输入网址->服务器响应->返回XX.html

       2. 浏览器->输入网址->服务器响应->将.jsp解析成静态页面->返回XX.jsp或者/servlet配置文件的路径(没有后缀名)

二、对比静态页面和动态页面

 1. 静态页面(使用HTML):

    全异步,完全通过ajax获取数据和构建页面;

    开发和调试页面方便,不依赖后端;

    压力在客户端,可能没有jsp安全;

    接口代码需要新增较多(控制层)

 2. 动态页面(使用jsp):

    通过EL语言、JSP标记库(如JSTL标签库)等等来获取数据、构建页面以及调用方法,动态数据通过ajax获取;

    前端页面的实现和调试麻烦,依赖后端,不能独立开发;

    压力在服务器端,因为所有逻辑都在后台,相对安全,数据存放在服务器端;

综述:都可以独立作为web开发,但不推荐;而是应该根据不同的页面功能需求使用不同技术
   . 大多数查询类页面,上动态数据比较少,使用html+AJAX,前端负责js异步调用api接口,这样页面改版时,不需要再改jsp,耦合大大降低;
   . 但对于复杂的页面,动态数据很多,比如支付下单(可能当前页面需要后台很多同步的逻辑校验)的页面还是走jsp。

另外,如果一个页面在异步加载数据之前由于数据还没出来而严重影响到了体验和流程交互,则建议还是同步走jsp,选择局部使用ajax。

以上是个人在学习的路途遇到的问题和解决问题时得出来的浅显的总结,若有不对之处,还望各路大佬指出和说明!

欢迎转载:https://www.cnblogs.com/dennyLee2025/p/10465074.html

JavaWeb开发使用jsp还是html做前端页面的更多相关文章

  1. 带你玩转JavaWeb开发之四 -如何用JS做登录注册页面校验

    今日内容 使用JQuery完成页面定时弹出广告 使用JQuery完成表格的隔行换色 使用JQuery完成复选框的全选效果 使用JQuery完成省市联动效果 使用JQuery完成下列列表左右选择 使用J ...

  2. 绝对精品推荐做前端的看下:Web前端开发体会十日谈

    20151208感悟: 前端人的角度来看的话,感觉像是阅读一个大牛前端的全部武功的一个秘籍说明,里面的思想高价值蛋白真是太多太多,推荐看. Web前端开发体会十日谈 一直想写这篇“十日谈”,聊聊我对W ...

  3. 从cocos2d-html5中提取出来的,用做前端开发的框架——cc.js

    从cocos2d-html5中提取出来的,用做前端开发的框架——cc.js /************************************************************* ...

  4. 【详细】总结JavaWeb开发中SSH框架开发问题(用心总结,不容错过)

    在做JavaWeb的SSH框架开发的时候,遇到过很多的细节问题,这里大概记录下 我使用的IDE是Eclipse(老版本)三大框架:Spring4.Struts2.Hibernate5 1.web.xm ...

  5. JavaWeb---总结(一)JavaWeb开发入门

    一.基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 静态web资源( ...

  6. JavaWeb学习总结(一)——JavaWeb开发入门

    http://www.cnblogs.com/xdp-gacl/p/3729033.html 只为成功找方法,不为失败找借口! JavaWeb学习总结(一)--JavaWeb开发入门 一.基本概念 1 ...

  7. JavaWeb学习总结(一)——JavaWeb开发入门(转载)

    转载自http://www.cnblogs.com/xdp-gacl/p/3729033.html感谢孤傲苍狼的分享. 一.基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意 ...

  8. 李兴华JavaWeb开发笔记

    李兴华JavaWeb开发笔记 1.Java语法-基础 环境变量-JAVA_HOME, PATH, ClassPath 变量名 作用 举例 JAVA_HOME 指向JDK目录 C:\Program Fi ...

  9. Javaweb开发中URL路径的使用

    看到博客园孤傲苍狼的web系列文章中有关于URL路径的使用文章后,感觉自己对URL的使用清楚了很多,自己再对着动手写一遍以加深记忆. JavaWeb开发中常看到URL以"/"开头, ...

随机推荐

  1. 效果CSS实现三角

      <view class="hd"></view>.hd {   content: "";   height: 16rpx;   wi ...

  2. 数据分析之pandas常见的数据处理(四)

    常见聚合方法 方法 说明 count 计数 describe 给出各列的常用统计量 min,max 最大最小值 argmin,argmax 最大最小值的索引位置(整数) idxmin,idxmax 最 ...

  3. Java实例---计算器实例

    1.计算器上的键的显示名字 1.0 继承JFrame类 public class Calculate extends JFrame { } 1.1定义常量 /** 计算器上的键的显示名字 */ pub ...

  4. 添加PHP扩展模块

    php安装好后,可能在初次安装时,会有些模块会有遗漏,但是我们又不想重新编译php,因为耗时是比较长的.我们可不可以在不重新编译安装php的情况下,来为php单独添加某一个模块呢?查找资料,发现还是有 ...

  5. 查看oracle数据库最近执行了哪些sql语句

    SELECT b.sql_text, --content of SQL a.machine, --which machine run this code a.username, a.module, - ...

  6. ZT 王国维先生“人生三大境界”的具体含义是什么?

    昨夜西风凋碧树.独上高楼,望尽天涯路. 衣带渐宽终不悔,为伊消得人憔悴. 众里寻他千百度,蓦然回首,那人却在,灯火阑珊处. 这三句本来都是言情话相思的佳句,却被王国维用以表现“悬思——苦索——顿悟”的 ...

  7. Template-Driven Forms 模板驱动式表单

    Angular 4.x 中有两种表单: Template-Driven Forms - 模板驱动式表单 (类似于 AngularJS 1.x 中的表单 ) Reactive Forms - 响应式表单 ...

  8. 【CSS-flex】圣杯布局(Holy Grail Layout)、输入框的布局、悬挂式布局、固定的底栏

    1.圣杯布局(Holy Grail Layout) 其指的是一种最常见的网站布局.页面从上到下,分成三个部分:头部(header),躯干(body),尾部(footer).其中躯干又水平分成三栏,从左 ...

  9. .Net Sokcet 异步编程

    一.概述 使用Socket 进行实时通讯,如果使用APM,只需要一个Socket类即可.如果使用EAP,则还需要一个SocketAsyncEventArgs类.本文以EAP的方式展开讨论. Socke ...

  10. http_post_data发送数据的获取方式

    private function http_get_data($url){ $ch = curl_init($url) ; curl_setopt($ch, CURLOPT_RETURNTRANSFE ...