struts入门

 最近在学struts。没有多久。决定把我的学习过程写下来。

我用的struts2.0.14,和Jdeveloper。服务器jdeveloper内嵌有OC4J。

 

其实对于新手来说struts的版本和工具并没有什么好大的要求,你用windows记事本来写一样的可以。

 

 

今天我就写了个登录的入门。

 

 

 

在jdeveloper里面他顶层是一个application,下面接着是project。

刚刚打开时,是一个空的app,然后新建有一个空的project。

 

然后我一次创建了两个jsp页面,login.jsp和done.jsp,struts.xml和一个action。建好后层次图:

 

 

然后倒入struts的包:

这些都是最少需要的包。下载我就不用说了吧。

 

 

接下来就是写jsp页面了。

code:


<%@ page contentType="text/html;charset=GBK"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
    <title>O(&cap;_&cap;)O~~</title>
    <style type="text/css">
      body {
      background-color: #f7f7f7;
}
    </style>
  </head>
  <body><div align="center">
      <s:form action="login" method="POST" namespace="">
        <s:textfield label="姓名" name="name"/>
        <s:textfield label="性别" name="sex"/>
        <s:reset value="重置"/>
        <s:submit value="提交"/>
      </s:form>
    </div></body>
</html>

 

 

大家要注意这句:<%@ taglib prefix="s" uri="/struts-tags"%> 不能少哦。

 

然后是done.jsp,这里我们只是做个标记就好了。

 <body>done.jsp</body>

 

 

然后是配置struts.xml文件


<?xml version="1.0" encoding="GBK" ?>
<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
        "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="test" extends="struts-default">
    <action name="login" class="actions.LoginAction">
        <result name="done" >/done.jsp</result>
         <result name="failed" >/login.jsp</result>
         <result name="input" >/login.jsp</result>
    </action>
</package>
</struts>

 

package的  extends  属性 是指明继承。

class,指定了这个action的class文件。java类

result的name属性的意思是 ,如: 当action返回done字符串时,我们就到done.jsp.另外两个类似。

上面的文档申明不能掉。

 

总结结构式package——》action——》returns   有了package就能很好的对action进行分类。至于他更多的功能,下回分解。

 

接下来是web.xml

<?xml version = '1.0' encoding = 'GBK'?>
<web-app 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" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee">
     <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <welcome-file-list>
        <welcome-file>login.jsp</welcome-file>
    </welcome-file-list>
</web-app>

 

 

这个的主要作用就是把所有的请求转发到控制器。它其实就是一个过滤器。

 

然后是action。


package actions;


public class LoginAction{


    private String name;
    private String sex;
    public LoginAction() {
   
    }
   
    public String execute(){
        return "done";
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getSex() {
        return sex;
    }
}

 

其实action是个POJO(POJO:就是再简单不过的java类)他不依赖servletAPI,一改struts1的坏处。里面的变量,要和login页面的输入框的名字要一样,这样当请求转发到action的时候,struts2就可以把JSP页面输入框的参数通过setter来放置在action里面。

 

就这样就OK了。

 

点击运行,默认的服务器是OC4J。

 

 

由于我们没有验证,所有点提交就可以了。

 

结果:

 

 

 

大家一定要注意struts.xml文件的配置,不要漏掉什么了。

 

今天我就做到这里吧。

更新:纳米盘下载地址:http://d.namipan.com/d/6c6f49cbd633d68f6385b334d435ce6aeb3c32961d893f00。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值