.do 文件是在项目里面进行配置的一个标记,比如:<form action="login.do"  method=post>这是用于提交表单的动作,最终还是调用的 .jsp 文件,如下图:

在MVC的项目中一般不会直接去访问JSP,都是通过.do来转发。

这样做的好处是:
1 所有请求全部通过action来转发,这样便于整体框架的处理。比如,可以加入登陆到某个页面的权限控制,只需要在配置文件中配置,而不用再每个JSP文件中加入相关的逻辑。
2 与数据库,文件等底层存储层连接,读取数据的代码可以在类(action)中执行。这样做,一方面可以将很多方法复用,另一方面使JSP页面的代码变得简单而容易维护。
3 其实.do也就是MVC当中的C,是控制器。在整个系统中起到中央枢纽的作用。先通过它的话就可以把逻辑代码隐藏在后台,使JSP文件作为单纯的VIEW分离出来,降低了系统的耦合性。

搂主的话:
"比如说regist.do对应的就是regist.jsp这个页面,通过网页可能所有的跳转都是跳到regist.do去注册,但实际上直接输入regist.jsp应该也是可以打开一样的页面去注册"
回答:没错,的确是可以的。不过这样做的话扩展性就没有先经过.do那样好。比如以后系统里加入了新的要求,只有权限大于5的人才能进入这个页面。直接访问.jsp的方法的话,要在jsp里加入判断的代码,如果权限小于5的话跳转到其他画面;不过如果只是这一张页面还好,但是如果系统有200张jsp,而且每张jsp要求的权限都不一样的话,这样修改起来就很困难了。用.do转发的方法的话,可以在配置文件中配置访问每个action所需要的权限,然后在系统的中央处理器(servlet)里面加入一个判断,去校验每个用户的session,从里面取得当前用户的权限并且与action的需要权限相对比,如果不匹配就直接跳到其他页面。这样不管整个系统有多少张页面,只要有这个配置,当用户需求发生变化时只要改改配置文件就可以完成任务了。

“什么时候该用.do什么时候用.jsp呢?还是,一般只有首页,比如登陆就用.jsp,而除了这张页面以外,其他的业务处理都最好用.do来实现???”
回答:原则上说是所有的页面都要有.do,即使这张页面很简单,没有后台处理得也需要。因为如果以后用户的需求一旦变更就可以容易得来对应。对于登陆页面来说也是这样,不过要多做一步处理。比如,真正的登陆页面是login.jsp,那么做法是这样:给用户的地址其实是另一张页面index.jsp,然后在index.jsp里面通过脚本来控制页面自动跳转到其他的url,这个url就是.do,例如login.do,然后在login.do里面返回login.jsp地地址,这样登陆页面也在这个框架的控制以内了。

jsp页面什么时候用 .do 和 .jsp相关推荐

  1. 从一个jsp页面跳转到另一个jsp页面时的参数传递

      1.从一个jsp页面跳转到另一个jsp页面时的参数传递 (1)使用request对象获取客户端提交的信息 login.jsp页面代码如下: [java] view plaincopy <%@ ...

  2. jsp页面中文 contenttype=text/html;c,JSP中文乱码问题解决

    大家在JSP的开发过程中,经常出现中文乱码的问题,可能一至困扰着大家,现把JSP开发中遇到的中文乱码的问题及解决办法写出来供大家参考. 首先了解一下Java中文问题的由来:Java的内核和class文 ...

  3. 关于springmvc 只能在index.jsp页面显示图片的处理办法jsp页面无法显示图片

    首先,已经配置好了mvc对静态资源的处理 只有index,jsp可以显示图片 其他页面同样的代码则不显示 后来折腾了半天,发现 index是static的父目录的级别文件 可以向下访问 但是其他的js ...

  4. idea2020新建一个jsp页面_有关idea2019版的jsp配置小教程

    idea的配置 目录: 1.配置tomcat 2.创建项目设置tomcat 3.如何在一个页面显示多个项目 4.当jsp出现了函数报错的解决方法 1. 配置tomcat 如图,点击设置 点击+号,添加 ...

  5. jsp页面中div怎么显示html,jsp怎么把div隐藏

    在web页面中,经常需要使用select控件来显示div的显示与隐藏,实现这个方法主要用到了setAttribute方法. 以下为示例代码: 通过选择项显示不同的结果 function showdiv ...

  6. 如何解决JSP页面的乱码问题

    本文介绍JSP页面经常出现中文乱码的问题,可能一至困扰着您,我现在把我在JSP开发中遇到的中文乱码的问题及解决办法写出来供大家参考. 一.JSP页面显示乱码 下面的显示JSP页面(display.js ...

  7. 简单的在jsp页面操作mysql

    简单的在jsp页面操作mysql ---恢复内容开始--- 上一篇讲了在DOS界面下操作mysql 现在我们来说说怎么在jsp页面中操作mysql 要用jsp页面操作mysql需要jdbc(不是非要j ...

  8. JSP页面中调用Spring Bean

    前言 spring boot 2.0.3.RELEASE spring mvc view : jsp JSP页面中调用Spring Bean 在 JSP 页面获得 WebApplicationCont ...

  9. springmvc为什么不能拦截jsp页面?

    文章目录 一,拦截器的用法 二,不拦截jsp页面的问题 三,防止SpringMVC拦截器拦截js等静态资源文件 一,拦截器的用法 1. 编写拦截器类 继承HandlerInterceptorAdapt ...

  10. jsp 页面刷新_如何应用XML+XSLT+AJAX组合技术实现无刷新数据查询

    软件项目实训及课程设计指导--如何应用XML +XSLT +AJAX组合技术实现无刷新的数据查询的应用实例 1.在Web应用系统项目中添加一个实现查询的请求页面searchBook.jsp (1)创建 ...

最新文章

  1. 2021年春季学期-信号与系统-第八次作业参考答案-第十二小题
  2. usb网络linux系统安装教程,Linux系统入门学习:如何在树莓派上安装USB网络摄像头...
  3. SAP CRM Collection wrapper的publish_current用法
  4. HDU 3966 Aragorn's Story (树链点权剖分,成段修改单点查询)
  5. 数据库系统工程师考点分析
  6. mysql无法创建新用户_如何mysql禁止创建新用户
  7. Linux开发cocos2dx程序环境搭建
  8. 白鹭引擎egret wing编辑器提示报错 egret 命令不存在 乱码的情况解决方法
  9. java 静态传值到构造器_java 静态初始化块,初始化块,构造器执行顺序
  10. TypeScript接口用法(基础)
  11. AutoCADDCL对话框设计示例八
  12. 一线互联网公司Java高级面试题总结
  13. eslint php,eslint配置
  14. (Scrapy框架)爬虫2021年CSDN全站综合热榜标题热词 | 爬虫案例
  15. 电脑版美食大战老鼠放置html,美食大战老鼠2
  16. Win10喇叭图标出现红叉提示未安装任何音频输出设备
  17. 到底游戏中有什么是让你沉迷游戏的呢
  18. 在用户计算机上的万维网客户程序是( ),在用户计算机上的万维网客户程序是()...
  19. Go 调用 Java 方案和性能优化分享
  20. 设置Jenkins语言为中文或英文

热门文章

  1. 转 Git-fatal: unable to access 'xxx' : Could not resolve host: xxx
  2. 浏览器,图片格式及特点
  3. 为什么不算法?常用算法概要大纲!
  4. JavaScript必须了解的知识点总结【转】
  5. jquery_Ajax
  6. IOS7开发~Xcode5制作framework
  7. php5配置与IIS中isapi筛选器不能加载PHP的解决办法
  8. [原]超快速搞定linux的vnc
  9. 兼容IE8以下,获取className节点的元素(document.getElementsByClassName()兼容写法)。
  10. java实现高性能的数据同步