doget,dopost和service的关系

servlet为啥不用service方法 而要用dopost和doget?

form提交有两种方式比较常见,一个是get一个post

追问:知道啊

追问:正因为service接受到数据之后会智能的选择是post请求还是get请求也调用相应的doPost方法和doGet方法 那我们就写一个service方法 不是很简单么 为什么很多时候还要在doGet方法里写了代码之后 再在doPost方法里调用doGet方法都要得 这不是给自己找麻烦吗?

==========================================================================================

doPost的提交地址栏是看不到提交信息的,是安全的提交方式
doGet的提交地址栏是可以看到明文信息的
现在如果有一张登陆页面,你用service这样不是密码就失去意义了么?
追问
怎么会呢?   你在表单里用method=“post”   然后在servlet用service方法处理一样的啊
回答
那现在有如下需求,要你在post的提交的时候坐一些事情,在get提交的时候做另外一些事情,你怎么办?还有,表单一般的提交方式都设置为post,,,get是给超级链接用的,一般来说。。。。
追问
一个表单只可能提交给一个servlet吧   那这个表单的method肯定是固定了的   要么是post  要么是get    你说需要在post的提交的时候坐一些事情,在get提交的时候做另外一些事情  那我就用两个servlet来接受两个不同的表单就OK了  而且每个servlet实现各自的功能  降低耦合  也需要分开写啊  你的第二个一般来说省略了    看不明白
回答
难道只有表单可以提交么,我不可以直接在地址栏输入内容?你去看一下百度的搜索,你直接在地址栏是可以输入内容的,这就是get提交的方便之处,有一张网页,里面或许有敏感信息,不便于用get 方式提交,而有一些参数又是不敏感的,就直接用get方式提交了(比如搜索商品),你说同一张网页我一个请求过去,还要分两个servlet处理?

这样吧,想一个最简单的例子,比如有一个登陆界面,你用post提交可以进入页面,但是你如果直接在地址栏输入地址(就是get方式)直接不给你访问页面,你说是不是应该分开两个方法?
追问
要是直接在地址栏输入内容   然后提交   那就全都是用的get方式提交的啊  不可能会带有post信息啊
   提交一个网页的时候   可能同时以get和post两种方式提交吗?
回答
楼主,比如有一张银行的用户界面,地址是
现在你比如要在进行登陆操作才可以访问,你登陆的信息是通过post提交没问题,如果对了就跳转到那张页面,是不是?现在如果你用service这个方法,没有把get方式给禁用掉,那么用户是不是可以直接在地址栏里输入访问那张页面呢?只要用户知道网页的地址,是不是所有信息都暴露了?

这是在百度知道看到的两组问答,从对话中就可以理解这三者之间的关系~(≧▽≦)/~啦啦啦。。。。。。。。。

经验分享 程序员 微信小程序 职场和发展