一个URL的物理文件的体现
场景
许多同学在开发过程中经常会遇到一个问题,怎么去定义一个url?以及定义一个url之后怎么根据一个url定义文件。
公司组织一次内部培训,为了把这次培训的内容以博客的形式共享出来。
URL与文件的关系
我们假设已经定义好了一个url,先不管如何定义下面会有讨论。
定义好一个url之后我们其实按照规范就已经将url对应的物理文件创建好了。
格式:
子域名.uxuexi.com/一级目录/二级目录.后缀
url与文件的对应关系
子域名 :====>web项目的名称
一级目录 : ====>module以及jsp文件夹的名称
二级目录 : ====>module中的入口函数以及viewService中函数的名称
后缀 :====>.json或者.html
举例
kecheng.uxuexi.com/teaeval/list.html
kecheng是项目的名称:

teaeval是module的名称:

list就是module中的入口函数的名称:

form的名称:
如果你需要传递参数就需要创建一个form来接受参数,不管是一个参数还是多个参数。
form的命名为:TeacherEvalListForm

viewService的名称:

viewService中的方法名称:

jsp的名称:

也就是说你们定义完url之后基本上把这些文件建好
启动项目在浏览器输入地址就可以看到返回值了。
下面的内容可以帮助大家在定义一个url的时候提供一些思路:
概念一:URL的组成
定义一个符合规范的url。
url里的每一部分都可以从三个维度去提取;
维度一:角色
这个要根据你项目中的角色去定义,比如:优学习目前有老师,学生,教研,
那么我们在定义url的时候要去考虑这个url主要是针对谁(角色)的操作,这样
我们就可以确定这个url中应该体现角色。
维度二:模块
分模块我们可以从以下几个方向去找:
产品原型
一般的产品都会画一个原型以便我们理解产品的流程,而且他们也会划分产品的模块,
所以我们可以直接从原型之中就可以去确定这个模块的名字。
比如:

资源分类
项目之中实实在在存在的实体,比如:优学习中的视频。
服务
这里的服务可以从我们平台中定义的基础服务(base层)中获取,比如

维度三:功能
功能可以分为资源展示和页面交互。
资源展示:特指各种资源详情,建议:www.uxuexi.com/studio/234987.html
交互:页面中的交互,比如:搜索,提交,发布,下架,上架等,直接进行翻译即可。
概念二:URL的路径规划
下面就根据上面的维度看看怎么来确定一个URL,
一个URL大致有以下几个部分组成
子域名.uxuexi.com/一级目录/二级目录.后缀
比如:kecheng.uxuexi.com/studio/12345.html
我们可以从以上三个维度来确定我们的域名:
1.把一个角色当做子域名:
大致格式为:角色.uxuexi.com/模块/功能.后缀
student.uxuexi.com/info/setphone.html
2.把一个模块当做一个域名:
大致格式为:模块.uxuexi.com/角色/功能.后缀
order.uxuexi.com/teacher/list.html
order.uxuexi.com/student/list.html
3.把一个功能当做一个域名
很多的网站会把搜索单独做为一个域名,比如:search.jd.com
总结
以上三个维度,角色,模块,功能没有什么先后顺序,因为URL是有语义的,
如果你想强调角色就可以把角色放到比较突出的位置比如子域名。
这个具体让项目负责人去定义,如果项目负责人不确定找人沟通。
一个URL的物理文件的体现的更多相关文章
- 怎么通过URL访问到服务器上的物理文件
目的 :搞清楚在jsp页面中如何引用static目录结构中的静态资源 一.URL URL的全称是统一资源定位符,俗称网页地址(网址),如同在网络上的门牌,是因特网上标准的资源的地址(Address). ...
- Visual Studio(VS2012) Project&(Solution) 虚拟文件夹 & 物理文件夹
今天发生个怪事:在 Solution Explorer 中,x project 内建立文件夹(folder)时,同时在磁盘目录下也创建了同名的文件夹. 1, 原本:应该只是创建一个“虚拟文件夹”用来“ ...
- restful架构风格设计准则(二)以资源为中心,一个url
读书笔记,原文链接:http://www.cnblogs.com/loveis715/p/4669091.html,感谢作者! 1.REST是一种架构风格,其核心是面向资源,简化设计,降低开发的复杂性 ...
- 【转】[.Net] 确定当前网站的物理文件路径
确定当前网站的物理文件路径 在应用程序中,您可能需要确定服务器上的文件或其他资源的路径.例如,如果应用程序以编程方式对文本文件进行读写操作,则必须为用于读取和写入的方法提供该文件的完整物理路径. 将物 ...
- 从输入一个URL到页面渲染的流程简介
首先说明以下是我参考网上答案和自己的思考,给出自己的想法,如果有问题,欢迎大家吐槽从用户在浏览器中输入一个URL,到整个页面渲染,这个过程中究竟发生了什么呢?今天先简单写下整个过程,后面再一点点完善. ...
- asp.net 5 中应用程序根目录及物理文件根目录的获取方式 此文已过期,不再适应rc1以后的版本
之前看了asp.net5,小弟就试着用了用,做了个小网站练习一下,有一个小模块需要上传图片到wwwroot下的images文件夹,但是aspnet5 发生了翻天复地变化,之前获取网站根目录的的方法不再 ...
- 从输入一个URL到页面呈现,网络上都发生了什么?
归纳一下其中涉及到前端的一些基础知识,主要包括:http协议.web标准.w3c标准等. 这个问题虽然只有两个2个动作:输入URL和呈现页面,但这背后发生了很多"有趣" ...
- sqlserver错误"试图扩大物理文件时,MODIFY FILE 遇到操作系统错误 112(磁盘空间不足。)。"处理
正常还原的时候报错: Microsoft SQL-DMO (ODBC SQLState: 42000)---------------------------试图扩大物理文件时,MODIFY FILE ...
- 网易笔试题:浏览器中输入一个url后回车到返回页面信息的过程
You enter a URL into the browser输入一个url地址 The browser looks up the IP address for the domain name浏览器 ...
随机推荐
- 基于 SailingEase WinForm Framework 开发优秀的客户端应用程序(1:概述)
本系统文章将详细阐述客户端应用程序的设计理念,实现方法. 本系列文章以 SailingEase WinForm Framework 为基础进行设计并实现,但其中的设计理念及方法,亦适用于任何类型的客 ...
- Spring Batch在大型企业中的最佳实践
在大型企业中,由于业务复杂.数据量大.数据格式不同.数据交互格式繁杂,并非所有的操作都能通过交互界面进行处理.而有一些操作需要定期读取大批量的数据,然后进行一系列的后续处理.这样的过程就是" ...
- 不使用Ajax,如何实现表单提交不刷新页面
不使用Ajax,如何实现表单提交不刷新页面? 目前,我想到的是使用<iframe>,如果有其他的方式,后续再补. 举个栗子: 在表单上传文件的时候必须设置enctype="mul ...
- 使用nodemailer发送邮件
今天闲来无事,一时兴起看了下如果使用javascript来发送邮件.经过调研发现,nodeJs可以实现这个功能. 具体的步骤如下: 1.安装依赖 npm install nodemailer -g ( ...
- Python标准模块--multiprocessing
1 模块简介 multiprocessing模块在Python2.6中引入.最初的multiprocessing是由Jesse Noller和Richard Oudkerk在PEP 371中定义.就像 ...
- Log4net入门(SQL篇)
我们在Log4net入门(回滚日志篇)中详细讲述了如何将日志信息输出到日志文件中,在这一篇中,我们将讲述如何将日志文件写入SQL Server数据库,以方便我们分析统计日志信息. 首先,我们在SQL ...
- IIS7禁用单个静态文件的缓存配置方法
IIS7中,想将一个经常修改的静态文件设置为不可缓存,在IIS配置界面里怎么也找不到... 一番google之后在stackoverflow里边发现了这样一段回答,最终解决了问题: just stum ...
- boost::function的用法
本片文章主要介绍boost::function的用法. boost::function 就是一个函数的包装器(function wrapper),用来定义函数对象. 1. 介绍 Boost.Func ...
- YYModel 源码解读(二)之NSObject+YYModel.h (1)
本篇文章主要介绍 _YYModelPropertyMeta 前边的内容 首先先解释一下前边的辅助函数和枚举变量,在写一个功能的时候,这些辅助的东西可能不是一开始就能想出来的,应该是在后续的编码过程中 ...
- ASP.NET Core 中文文档 第一章 入门
原文:Getting Started 翻译:娄宇(Lyrics) 校对:刘怡(AlexLEWIS) 1.安装 .NET Core 2.创建一个新的 .NET Core 项目: mkdir aspnet ...