SSH项⽬与SSM项⽬的进⼊⾸页的⽅法
SSH项⽬中:
jsp页⾯⼀般都是存放在WEB-INF下⾯的⽬录下,这样我们就不能直接访问到这些jsp页⾯了,保证了页⾯的安全性。
在struts的管理中,是利⽤action来实现页⾯的跳转,进⼊index.jsp即页⾯的⾸页,我们采⽤的⽅法是:
(1)在WEB-INF的这样⽬录下⾯建⽴⼀个index.jsp页⾯,页⾯中加⼊⼀句话,⽤来中转到项⽬中的⾸页:
<jsp:forward page="项⽬中的jsp页⾯的路径">,⽐如:WEB-INF/jsp/index.jsp
(2)在l中有个⽂件是:
<welcome-file> index.jsp</welcome-file>
有了这句话,就可以在浏览器的地址栏进⼊到这个⽂件。
进⼊到⾸页。
struts是采⽤的过滤器的⽅式,所以在l的<url-pattern></url-patter>中可以使⽤/*的⽅式来访问路径。也可以采⽤.do或者.action的⽅式。
但是SpringMVC就不能使⽤/*的⽅式来访问。
SSM项⽬中进⼊⾸页的⽅法:
⽅法⼀:在l中使⽤.action或者.do或者.html的⽅式来访问⽹页的时候。
此时⼀般将js,css,images这些静态资源放在WEB_ROOT下⾯,如果放在web-inf下⾯是访问不到的。
当采⽤上⾯⽅式的访问的时候,静态资源SpringMVC会⾃动解析这些静态资源。
举个,do的形式。
(1)
第⼀步:修改WEB.XML中的<welcome_list>index.do</welcome_list>
第⼆步: @RequestMapping(“/index”)采⽤此⽅式返回逻辑视图index
这种⽅式可以直接输⼊地址访问。
(2)第⼆种⽅式就是在web_root下⾯创建⼀个index.jsp页⾯,然后使⽤,跳转的⽅式跳到项⽬本⾝的index.jsp中。
.html或者.action使⽤⽅法同理。
后期补充:当⽤户访问⼀个系统的时候,我们往往需要进⾏⽤户的拦截验证操作,即⽤户登录权限的控制。这个时候我们需要使⽤到。
⽤户请求到DispatherServlet中,DispatherServlet调⽤HandlerMapping查Handler,HandlerMapping返回⼀个拦截的链⼉(多个拦截),springmvc中的是通过HandlerMapping发起的。
所以这个时候设置进⼊⾸页的⽅式也可以是:在web_root下⾯创建⼀个index.jsp页⾯:
在loginController层写⼀个跳转的页⾯:
这⾥的first是⾸页的逻辑视图名。在web-inf/jsp/first.jsp
但是如果设置了拦截,因为我们这⾥设置的是.action的形式,所以得这样设置访问。
否则url⽆法拦截,因为我们在数据库中url都是.action的形式。
在企业开发,使⽤实现⽤户认证(⽤户登陆后进⾏⾝份校验拦截),⽤户权限拦截。
当在SSM项⽬中,l中使⽤/的⽅式访问⽹页的时候,此时,静态资源⽆论放在web-root下⾯还是web-inf下⾯,都需要配置资源映射。进⼊⾸页此时⽐较简单:下⾯⽅法即可
我们需要写⼀个controller来控制页⾯的跳转:
@Controller
public class PageController {
//打开⾸页
@RequestMapping("/")
public String pageIndex(){
return "index";
}
}
(2)springMVC的配置⽂件中的配置
<!-- 利⽤这个来进⾏配置注解映射器和注解适配器 -->
<mvc:annotation-driven></mvc:annotation-driven>
<!-- 配置jsp试图解析器,配置试图解析器的前缀和后缀,程序中不⽤指定前缀和后缀 -->
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
jsp创建(3)这⾥配置访问⽂件的前缀和后缀,⽐如这⾥的返回值是index,加上前缀和后缀,访问路径是“/”即根路径,这样就可以访问到index.jsp 了。
这个src的路径就是根路径,访问这⾥⾯的⽂件就是在浏览器输⼊:
就可以访问到。
总结:
在SSM项⽬中:
所以使⽤.do,.action,.html的时候,在@RequestMapping中必须使⽤/+index进⼊⾸页。此时不能忘记在l的<welcome_file>中添加index.action或者index.do的访问
当使⽤/的时候,可以使⽤/进⼊⾸页。但是此时不能忘记进⾏静态资源的映射。
另外.html的⽅式是伪静态化页⾯,便于seo进⾏搜索,因为搜索引擎是⽐较喜欢html静态页⾯的,利⽤伪静态化可以便于搜索引擎收录。伪静态化直接在l的访问页⾯访问直接设置*.html的访问⽅式即可,⽤法跟*.do或者*.action的⽅式⼀样。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论