用java写web应用时候,是不是需要每写servlet的时候都要配置web.xml文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用java写web应用时候,是不是需要每写servlet的时候都要配置web.xml文件相关的知识,希望对你有一定的参考价值。

java编写web应用的时候,当使用servlet 3.0之后,不需要配置web.xml文件,使用如下注解形式即可:

@WebServlet(urlPatterns = "/simple", asyncSupported = true, 
loadOnStartup = -1, name = "SimpleServlet", displayName = "ss", 
initParams = @WebInitParam(name = "username", value = "tom") 

public class SimpleServlet extends HttpServlet … 
参考技术A

Servlet3.0以后提供了属性注解功能,你直接在类文件里做属性注解,作用和web.xml配置相同。样例如下

@WebServlet(urlPatterns = "/simple", asyncSupported = true, 
loadOnStartup = -1, name = "SimpleServlet", displayName = "ss", 
initParams = @WebInitParam(name = "username", value = "tom") 

public class SimpleServlet extends HttpServlet … 

参考技术B 1、原生态写java web,是必须要一一对应写到配置文件的。
2、有三种选择:
一,自己写个过滤器,拦截servlet请求并处理也可以。
二,用jsp也可以办成这事,只不过,是jsp来写和请求了,jsp和servlet等价,jsp开发效率要高些。
三,用拦截器框架,像Struts、SpringMvc、nutz都有这样的功能。
试下看吧。本回答被提问者和网友采纳
参考技术C 可以不配置这个文件。自己写框架来开发就会省很多事。 参考技术D 恩,是的,不过我建议你使用Struts,自己可以不用配,框架帮你管理,比较方便

java web浏览器访问工程前面添加一级目录学习笔记

有的时候因为nginx和f5策略问题需要在访问系统的时候前面添加一个前缀以区分不通地方需要用同一个工程的情况;

举个例子:当访问localhost:8080/webDemo/demo/shafei.jsp时,需要用另一种访问方式:localhost:8080/sf/webDemo/demo/shafei.jsp;

用sf的标志来区分不同地方需要访问该系统;

该如何实现呢:

这个需要在tomcat的server.xml中配置改工程:

找到<host>标签,在该标签中填入一下代码:

<Context path="sf/webDemo"  docBase="/webDemo/demo/shafei.jsp"   ></Context

以上是关于用java写web应用时候,是不是需要每写servlet的时候都要配置web.xml文件的主要内容,如果未能解决你的问题,请参考以下文章

java web浏览器访问工程前面添加一级目录学习笔记

pycharm每写一个程序都要设置一下edit configurations的script吗

Web应用体系结构

gulp将header/footer引入页面

雷军语录:写程序有写诗一样的感觉

Struts1.3——Struts入门