刚刚学习了SSH框架,为了尽快熟练使用,故尝试使用SSH框架搭建一个购物网站后台,首先将网站的主页、注册页面、登录页面导入项目Web目录下
之后配置web.xml文件,设置拦截器,将所有url交给Struts2处理
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
此时再配置struts.xml文件,将拦截的url做处理
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd">
<struts>
<package name="hello" namespace="/" extends="struts-default">
<action name="login" class="bean.Test" method="execute">
<result name="success">/WEB-INF/src/login.html</result>
<result name="error">/WEB-INF/src/index.jsp</result>
</action>
</package>
</struts>
此时,当访问url : localhost:8080/skycat/login就会交给这个action处理,成功时返回login.html,失败放回index.jsp页面
处于安全考虑,需要将所有的资源放在WEB-INF下,避免直接的url访问,而是通过Action映射访问。