Struts2写一个登陆及配置详解

 

步骤 :

  1. 创建一个web工程

2、导入jar包

3在web.xml配置核心控制器

<filter>

      <filter-name>struts2</filter-name>

      <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>

   </filter>

   <filter-mapping>

      <filter-name>struts2</filter-name>

      <url-pattern>*.action</url-pattern>

   </filter-mapping>

 

有有其他filter的情况下 struts2核心控制器应该写在最后面。

 

4.在SRC下的struts.Xml

<!-- package name是用来标识同一xml中的packge -->

   <!-- packge namespaceaction name 组成action的访问路径 ,默认是/ -->

      <!-- extends 固定写法 struts-default 举个例子就像servlet一样需要继承httpservlet

      这里的extends的值会被该包下的action标签中的classpath所继承从而使普通的类与 action关联 -->

   <package name="logindemo" extends="struts-default" namespace="/">

      <!-- action nameaction的访问名称 后面不需要写.action -->

      <!-- action class关联类的path-->

      <action name="login" class="com.action.login">

         <!--result name=execute()中的返回值 默认为success -->

         <result name="success" >/login.jsp</result>

         <result name="error">/loginError.jsp</result>

      </action>

   </package>

Action类

private String name;

   private String pwd;

  

   public String execute()

   {

      if("aa1122".equals(name)&&"123456".equals(pwd))

      {

         return "success";

      }else

      {

         return "error";

      }

   }

   public String getName() {

      return name;

   }

   public void setName(String name) {

      this.name = name;

   }

   public String getPwd() {

      return pwd;

   }

   public void setPwd(String pwd) {

      this.pwd = pwd;

   }

Action带参数的话需要相应的get set方法如上,且名称要与jsp表单中的name要一致

 

Jsp页面

<form action="login.action" method="post">

      用户名:<input type="text" name="name"><br/>

      :<input type="password" name="pwd"><br/>

      <input type="submit" value="登陆">

   </form>

Jsp页面2

<body>

   <h1>登陆成功!!</h1><br/>

   <!-- ${}取出参数 -->

   <a>用户名:</a>${name }

</body>

 

其他配置

      

<!-- 解决乱码 -->

   <constant name="struts.i18n.encoding" value="UTF-8"></constant>

   <!-- 自定义action扩展名 可以添加多个,隔开-->

   <constant name="struts.action.extension" value="action,,dgg,"></constant>

   <!-- 设置开发模式,提供友好的错误信息 -->

   <constant name="struts.devMode" value="true"></constant>

   <!-- 团队协作开发模式 引入其他的strutsxml配置文件-->

   <include file="com/user/User.xml"></include>

<!-- methodaction在对应java类要执行的方法,默认是execute -->

      <action name="user" method="user"></action>

 

这些设置都可以在导入的jar包的struts-core/org/apache/struts2/default.properties文件中找到

 

全局设置

<!-- 配置全局结果集 -->

      <global-results >

        <result name="index">/index.jsp</result>

      </global-results>

to be continue。。

猜你喜欢

转载自blog.csdn.net/u012777599/article/details/88824831