设置java web工程中默认访问首页的几种方式

时间:2023-03-09 04:08:09
设置java web工程中默认访问首页的几种方式

1.demo中最常见的方式是在工程下的web.xml中设置(有时候根据业务可能需要设置action,在action中处理逻辑加载跳转什么的,比较少):

<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

2.使用Urlrewrite地址重写,优点还是挺多的,比如安全性能,具体可以百度下,下面介绍使用方式:

首先还是导入 urlrewrite 的jar包,在web.xml中配置

<!-- urlRwrite过滤器-->
<filter>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>

然后在WEB-INF目录下 新建  urlrewrite.xml

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 4.0//EN"
"http://www.tuckey.org/res/dtds/urlrewrite4.0.dtd">
<urlrewrite decode-using="UTF-8">
<!-- 规则自己定义 实现URL的重写
之前项目上的,这里简单看下,理解即可
--> <outbound-rule encodefirst="true">
<from>/service/login/login</from>
<to>/</to>
</outbound-rule>
<outbound-rule encodefirst="true">
<from>^(.*);jsessionid=.*$</from>
<to>$1</to>
</outbound-rule>
<outbound-rule match-type="wildcard">
<from>*;jsessionid=*</from>
<to>$1</to>
</outbound-rule>
<rule>
<from>/$</from>
<to>/service/login/login</to>
</rule> </urlrewrite>

简单说下:

UrlRewrite匹配模式:正则表达式和通配符匹配

rule 是主要规则节点,from 和to是它下面的两个子节点,from:请求的URL,to:转到的真实的URL。

其他的看下UrlRewrite文档可以更好的理解

3.nginx设置首页

这也是比较常用的一种方法,nginx大多公司也在用这个服务,很成熟。nginx的反向代理等方面还是很值得研究学习的,好了,不多说,下面看如何配置

在配置文件的 location 中设置访问页。直接上代码

 server {
keepalive_requests 100; #单连接请求上限次数。
listen    111;    #监听端口
server_name 127.0.0.1; #监听地址
location ~*^.+$ { #请求的url过滤,正则匹配,
#root path; #根目录
#index #设置默认页
proxy_pass http://myserver; #请求转向自定义的服务器列表
}
}

 建议大家看看nginx的使用及原理。

4.Tomcat 设置项目首页

更改 tomcat中server.xml和web.xml即可实现  

设置java web工程中默认访问首页的几种方式

在<Host></Host>中添加<Context path="虚拟目录的名字" docBase="你要设置的网站根目录" debug="0"/>

设置java web工程中默认访问首页的几种方式

在web.xml中修改此配置,设置访问页就可以了。