为什么有些java项目访问地址是以.dll结尾的?

有的java项目是以*/admin/crawler-config.dll?形式访问的,但是对应目录里都是jsp文件,请问是如何实现的,如何找到源文件?
运行环境是tomcat 7.0

阅读 3.6k
4 个回答

将Action 对应的Servlet mapping 映射到*.dll 即可。

*/admin/crawler-config.dll , .dll只是一个请求后缀而已,而且这个接口请求到的并不是你的jsp,只是这个接口对应的Controller(控制器), 在Controller里返回了jsp而已。

拿Spring mvc举一个栗子:
请求的接口:

http://localhost:9080/product/list.dll

在spring mvc里, 只需要配置DispatcherServlet的时候配置拦截所有.dll结尾的请求就可以了:

<servlet>
        <servlet-name>test</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/customed-servlet-configuration/spring-mvc.xml</param-value>
        </init-param>
        <load-on-startup>2</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>test</servlet-name>
        <url-pattern>*.dll</url-pattern>
    </servlet-mapping>

最终请求到的地方:

clipboard.png

最后再这个controller里返回的就是product列表的jsp

你还可以改成.php呢,这个随意,用来隐藏技术实现的,但是稍微花点功夫也能看出来,意义不大

这个只是在使用框架的时候配置文件中进行配置即可 ,可以是任何后缀,和源文件的形式无关。Action 或者说 Controller 会完成关系映射

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题