您的位置:首页 > 编程语言 > Java开发

Struts2整体学习(第一天)

2011-09-14 13:31 197 查看
终于把电脑弄出声音了,不用再让我天天面对一个哑巴了,高兴!从今天开始,学习Struts2,看视频,敲代码,做笔记,写文章!

Struts2入门及基本配置

Struts2来源与webwork以及Struts

开发环境:

IDE:MyEclipse8.0

Container:Tomcat6.0

在Tomcat目录下,conf下的server.xml文件中,最后添加

<Context path="\Struts2" docBase="C:\DocumentsSettings\Administrator\Workspaces\MyEclipse 8.x\Struts2\WebRoot" reloadable="true" />

目的是:修改项目的class文件或者配置文件,Tomcat自动重启,比较方便,但是当项目部署好之后,reloadable="false"

开发Struts2程序需要的jar包:

Commons-logging 日志包

Freemarker

Ognl

Struts2-core-2.0.11

Xwork

新建一个工程:

我要做的是登录

在web.xml中,添加一下内容

<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>

使得项目中所有的请求都得到Struts2的过滤

Struts2中配置请求的文件是struts.xml,要求这个文件一定要保存在项目的class目录下,所以,将它新建到src目录下,编译后就在class下了。

在struts.xml中写当前应用的Struts的所有应用信息

在src中新建一个action包,新建action类,不用继承任何类(和Struts1不一样)

private String username;

private String password;

添加get、set方法

public String execute() throws Exception{

return "success";

}

当客户端发送来请求,Struts2会自动到action中的set方法赋值,所以定义的属性并没有和Jsp页面中的属性值有直接联系,而是通过set方法赋值(和Struts1不一样,Struts1是通过Form类,封装对象)

在页面中显示数据的时候,用EL表达式比较简单

username:${requestScope.username }

现在在struts.xml中添加信息

<package name="struts2" extends="struts-default">

<!--这的extends是指struts2这个包继承后边这个包--!>

<action name="login" class="tbk.struts.action.LoginAction">

<!--这的name是和Jsp页面中Form表单的Action值相同,去掉.action

这个class指处理Action的类

--!>

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

<!--result指结果需要跳转到的页面,其实不用写name="success",系统默认的就是--!>

</action>

</package>

好了,项目可以运行了。现在总结一下Struts2的执行流程

用户提交表单,发出请求,到struts.xml中找到相匹配的Action,再到相应了Action类中执行execute()方法,返回结果,到strutsx.xml中,匹配相应的结果,转到相应的页面(转发),显示。

第一天,没有太多的理论,后边会有的,最重要的是把这个功能实现。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: