struts2环境搭建helloword


例一、目标页面显示  ”我的第一个struts应用程序“

1.建立一个动态web项目

2.在WEBINF-lib下粘贴对应必须的jar包

3.配置web.xml:

    <filter>
   <filter-name>struts2</filter-name>                                                                                                                       //随意,开心就好
   <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>       //ctrl+shift+t 输入strutspre显示的那个类的类名就是了
   </filter>
 <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
 </filter-mapping>

4.在src下建立一个包在里面写添加一个类作为action类:HelloAction

    package com.struts.action;
    public class HelloAction {                                            //action类中出了set/get方法外的方法都设为String类的方法 

                                                                                                    
     private String result;
      public String execute()                      
{
result="我的第一个struts应用程序";
return "success";
}
public String getResult() {
return result;
}
public void setResult(String result) {
this.result = result;
}
}

5.在src下建立对应action类的struts.xml文件


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC                                                                                 //这三行是struts.xml必备
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    "http://struts.apache.org/dtds/struts-2.3.dtd">

 <struts>
 <package name="struts" extends="struts-default">
   <action name="hello" class="com.struts.action.HelloAction" method="execute">   //action name 为访问action的网页后缀 class为对应的action文件的全类名 method为需要                                                                                                                                                         执行action文件中的什么方法
     <result name="success">/a.jsp</result>                                      //result name=“”为action文件String函数的返回值是什么    访问action后范围到a.jsp页面,在a.jsp中可以访问                                                                                                                                     //action中的属性
     
   </action>
   </package>
 </struts>

6.在webcontent下建a.jsp

  <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>hellostruts2</title>
</head>
<body>
  ${result }                               
</body>
</html>

完成!

启动tomcat运行 http://localhost:8088/8.1/hello

--------------------------------------------------------------------------------------------------------------------------------------------

例二、登陆信息验证(在例一项目中接着做)

建项目,导入jar包,配置web.xml例一已经做了


在com.struts.action包中建class   : loginAction

package com.struts.action;
public class loginAction {
 private String username;
 private String userpass;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getUserpass() {
return userpass;
}
public void setUserpass(String userpass) {
this.userpass = userpass;
}
 public String execute()
 {
if("mr".equalsIgnoreCase(username)&&"123".equals(userpass))
return "success";
 
return "login";
 }
}


strut.xml中写匹配上面action类的

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    "http://struts.apache.org/dtds/struts-2.3.dtd">
 <struts>
 <package name="struts" extends="struts-default">
   <action name="hello" class="com.struts.action.HelloAction" method="execute">
     <result name="success">/a.jsp</result>
   </action>
   <action name="LoginA" class="com.struts.action.loginAction" method="execute">
     <result name="success">/token/succ.jsp</result>
     <result name="login">/token/index.jsp</result>
    </action>

   </package>
 </struts>


在webcontent下建文件token 建jsp:index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
  <s:form action="LoginA">                                                     //匹配struts.xml中的action name的内容

     <s:label value="登录信息"></s:label>
     <s:textfield name="username" label="用户名"></s:textfield>
     <s:password name="userpass" label="密码"></s:password>
     <s:submit value="登录"></s:submit>
    </s:form>
</body>
</html>

在webcontent下建文件token 建jsp:succ.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
   Succ
</body>
</html>

完成! 在index.jsp开始访问


-----------------------------------------------------------------------------------------------------------------------------------------------

流程:

由网址后缀如....login 到struts.xml文件中找对应的action name 

然后根据后面的 class找到对应的action类(class文件)

然后再根据后面的method 执行action文件中的对应方法,

根据返回值在structs的result中跳转到目标位置返回返回浏览器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值