为啥使用Hibernate开发web项目的时候在servlet头上使用@webServlet(name="index",urlPatterns="/index&q

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥使用Hibernate开发web项目的时候在servlet头上使用@webServlet(name="index",urlPatterns="/index&q相关的知识,希望对你有一定的参考价值。

会报404错误呢?

  编写好Servlet之后,接下来要告诉Web容器有关于这个Servlet的一些信息。在Servlet 3.0中,可以使用标注(Annotation)来告知容器哪些Servlet会提供服务以及额外信息。例如在HelloServlet.java中:
  @WebServlet("/hello.view")
  public class HelloServlet extends HttpServlet
  只要在Servlet上设置@WebServlet标注,容器就会自动读取当中的信息。上面的@WebServlet告诉容器,如果请求的URL是“/hello.view”,则由HelloServlet的实例提供服务。可以使用@WebServlet提供更多信息。
  上面的@WebServlet告知容器,HelloServlet这个Servlet的名称是Hello,这是由name属性指定的,而如果客户端请求的URL是/hello.view,则由具Hello名称的Servlet来处理,这是由urlPatterns属性来指定的。在Java EE相关应用程序中使用标注时,可以记得的是,没有设置的属性通常会有默认值。例如,若没有设置@WebServlet的name属性,默认值会是Servlet的类完整名称。
  当应用程序启动后,事实上并没有创建所有的Servlet实例。容器会在首次请求需要某个Servlet服务时,才将对应的Servlet类实例化、进行初始化操作,然后再处理请求。这意味着第一次请求该Servlet的客户端,必须等待Servlet类实例化、进行初始动作所必须花费的时间,才真正得到请求的处理。
参考技术A 跟hibernate没啥关系吧
去查查webservlet这个注解吧
目测是url和servlet映射用的追问

是映射用的,写这个可以不在web.xml生成多余代码

追答

那就是你映射的有问题啊

以上是关于为啥使用Hibernate开发web项目的时候在servlet头上使用@webServlet(name="index",urlPatterns="/index&q的主要内容,如果未能解决你的问题,请参考以下文章

使用 Maven 管理项目

为啥我在尝试实现 Hibernate 多对多映射时遇到此错误?

javaEE开发为啥要用到DTO层,该怎么处理

手机移动端web开发的时候为啥要用js跳转链接来代替a标签的跳转?

使用Maven搭建Struts2+Spring3+Hibernate4的整合开发环境

maven 项目 hibernate 配置