请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

我使用的是jsp+servlet实现zTree树的,控制层里的代码用servlet应该怎么去写

因为我是初学者,使用jdbc+jsp+servlet实现后台管理,看着源代码写的,然后控制层使用的restful的url方式不知道怎么去写,能给点建议吗


正在回答

4回答

源生活 2017-10-14 16:50:17

自己用一个servlet拦截所有请求,拦截到以后,解析url的内容、提交方式来转发到具体的处理逻辑servlet,比如/a/1,你解析出这样的url,知道要转发给aservlet,并且1是参数值,servlet是能拿到这些信息的,具体处理逻辑就看你自己了,可以参照完整版代码里对权限动作的拦截,我那个里面就是对url规则的判断处理。

1 回复 有任何疑惑可以回复我~
  • 老师,不知道怎么写怎么办
    回复 有任何疑惑可以回复我~ 2017-10-15 21:24:43
  • 具体点,想实现应该分哪几步?哪一步不知道怎么实现?一句话:就是不会写,这不是一个好问题,也不是一个好学生,就好像在问:我数学不会,怎么办?让人很难回答
    回复 有任何疑惑可以回复我~ 2017-10-15 21:41:40
  • 就是怎么写一个servlet拦截并解析url内容以及提交方式,
    回复 有任何疑惑可以回复我~ 2017-10-15 21:43:30
源生活 2017-10-15 22:28:04

问你几个问题,如果回答不上来,不建议再自己用servlet实现RESTful:

1、你知道servlet怎么拦截所有请求吗?

2、你知道servlet怎么获取拦截到的url吗?

3、你知道servlet怎么获取请求的method吗?

4、你知道servlet怎么向servlet转发吗?对了,这里还不是转发的问题,如果用一个总servlet来转发,比较好的方式需要用到反射,你对反射的了解如何?很熟吗?

如果以上问题都能回答,再往下看:

你准备怎么处理总的servlet向各个子servlet的转发?比如:

      拦截到的url是 /abc/123或是/def/456,你怎么知道应该把每种url转发给哪一个子servlet?你想好整个处理过程了吗?

如果前4个问题都能回答,最后一个问题想不出来我可以给思路,请你用前4个问题的答案,来换最后一个附加题的解决方案。

0 回复 有任何疑惑可以回复我~
源生活 2017-10-15 22:15:48

还有,如果是初学者,不需要勉强用servlet完全实现所有用框架实现的部分,对你来说太难了,先实现业务逻辑,而不是实现框架本身的功能,不用resultful也一样能实现功能,而且这个课程本身就不是针对初学者的,主要是在讲框架,可以不用这个来练习servlet,慕课上专门讲servlet的课是有的。我不知道你什么目的?

0 回复 有任何疑惑可以回复我~
源生活 2017-10-15 22:13:48

这实际是对Spring已经实现的过程的再次实现,先参照最终版里CommonUtil里的contains方法,对url是否在允许访问范围内的判断,正则匹配是比较简单的,无论是/abc/123还是/abc/456,对应的其实都是/abc/*这样一规则,首先你要确定你拦截下来的url是符合 /abc/*这样的规则的,然后再去解析【*】这个位置对应的值是什么,这已经不是技术问题了,而是逻辑问题,问的再细一点我就要写代码了,这样对你来说没有任何意义,纯粹是求代码的。

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信