我想将Servlet称为第一个文件

时间:2015-06-11 12:05:45

标签: java jsp servlets

我想将Servlet称为第一个执行欢迎文件的文件。

在这个servlet中,我正在从数据库中检索数据并将其呈现在第一页的显示页面。

我需要的是当我运行程序时

或者

  

网址应为 - http://localhost:8083/projectName/servletUrl

     

不是http://localhost:8083/projectName/

  

如果网址为http://localhost:8083/projectName,则应该点击servlet(/servletUrl)而不是welcome file

4 个答案:

答案 0 :(得分:1)

修改此文件WebContent - > WEB-INF - > lib - > web.xml

  

只有在创建项目时勾选了Generate web.xml部署描述符,才能看到它。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"          
xmlns="http://xmlns.jcp.org/xml/ns/javaee"    
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID"    
version="3.1">
<display-name>Database_Conn</display-name>
<welcome-file-list>
    <welcome-file>ServletURLpattern</welcome-file>
 </welcome-file-list>
</web-app>

答案 1 :(得分:0)

我使用过这样的servlet映射:

<servlet-mapping>
      <servlet-name>Controller</servlet-name>
      <url-pattern>/</url-pattern>
</servlet-mapping>

关键部分是匹配所有可能URL的URL模式,除非您为其他servlet添加另一个servlet映射。

答案 2 :(得分:0)

将您的servlet URLpattern配置为位于webapp的<welcome-file>文件夹中的web.xml文件中的WEB-INF,如下所示:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
    id="WebApp_ID" version="3.1">

    <display-name>ProjectName</display-name>

    <welcome-file-list>
        <welcome-file>ServletURLpattern</welcome-file>
    </welcome-file-list>
</web-app>

假设你使用eclipse作为IDE和servlet version 3 or 3.1而不是手动创建web.xml

答案 3 :(得分:0)

    <servlet>  
       <servlet-name>PenServlet</servlet-name>  
       <servlet-class>com.sun.PenServlet</servlet-class>  
       <load-on-startup>0</load-on-startup>  
    </servlet>
  

这里load-on-startup是web.xml的一个属性,它将首先加载   如果它具有最低的整数。例如,如果你有3个servlet   在web.xml中提到如

    <servlet>  
       <servlet-name>PenServlet1</servlet-name>  
       <servlet-class>com.sun.PenServlet1</servlet-class>  
       <load-on-startup>1</load-on-startup>  
    </servlet>
    <servlet>  
       <servlet-name>PenServlet0</servlet-name>  
       <servlet-class>com.sun.PenServlet0</servlet-class>  
       <load-on-startup>0</load-on-startup>  
    </servlet>
    <servlet>  
       <servlet-name>PenServlet2</servlet-name>  
       <servlet-class>com.sun.PenServlet2</servlet-class>  
       <load-on-startup>2</load-on-startup>  
    </servlet>
  

然后,首先在Web应用程序中加载load-on-startup 0           那么1和2等等..           您需要使用它来获取数据并将其设置为您的第一页或返回
          来自带有加载数据的servlet的页面。