场景
许多同学在开发过程中经常会遇到一个问题,怎么去定义一个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是有语义的,
如果你想强调角色就可以把角色放到比较突出的位置比如子域名。
这个具体让项目负责人去定义,如果项目负责人不确定找人沟通。