该用户从未签到
|
(1)首先创建一个新的Web工程,这是一个普通的Web应用。6 w4 L) x& D5 C+ f% J
6 Q; ^4 Z! n2 j. r
(2)将struts2框架中必须使用的jar文件拷贝到web-inf/lib目录中,为Web应用提供Struts2开发的支持。
7 H, P+ r, b5 N7 C 9 M1 i/ N) R$ Y2 t
(3)创建配置文件9 ]- y" Y) s0 G2 I o6 h0 D' ]1 y* i7 W' `
Struts2有一个核心配置文件,默认文件名为struts.xml,该文件需要放在claspath中。通常将它存放在src目录下。
! x, Q5 L$ f1 Q! Q( f5 J& N) i1 E2 _; `
struts.xml文件内容需要按照固定的格式结构编写:: ^7 q+ z+ C5 v4 @$ [( m
a、首先配置格式校验
% V. L6 T! _# V- j$ X0 G 在struts2-core-2.5.5.jar的根目录中获得struts-2.5.dtd。( W2 a+ e/ Z7 G3 A% Y. v
在Eclipse中,打开windows -> preferences -> XML -> XML Catalog -> Add,这将打开一个新增窗口。: d- l# z$ N9 j, w3 T& c
将struts-2.5.dtd配置进去。; a* L; ?. c+ e3 H$ D
1 ]1 k. p3 W& n( h* L b、编写struts.xml内容:) o Q* f4 V% s& O3 v) O, Z
<?xml version="1.0" encoding="UTF-8" ?>. G) |) @/ [7 h% s, R& @7 Z
<!DOCTYPE struts PUBLIC
5 n R( u0 q# c) u4 @ "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
( g8 [" L6 Y, Z/ P! b& u8 \ "http://struts.apache.org/dtds/struts-2.5.dtd">
0 t; t9 Q% c4 @+ M" Q5 Q0 l <struts>0 P {9 G/ z# ?
</struts>6 C, `; ~" F+ m) z3 k
6 }. P, E5 {; p$ r, M$ W( ` 注意:struts.xml名字的大小写。创建在src目录中,不是WEB-INF中。
" u* \& o) K1 ~+ i% \
# s2 ~; U! N. P3 b A (4)配置控制器
& d- F! f3 I4 g! \ 在web.xml中配置Struts2的控制器。这是一个由Struts2提供的Filter,它负责拦截所有的HTTP请求,并交由Struts2框架处理。
. v4 {( k* y5 A! f <filter>
% A' B' Z/ i- r& G <filter-name>struts2</filter-name>
7 f7 _! g9 A) z, A W <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
0 t% E: x, x. ]: |% g </filter>& s. D& d1 e7 A4 v! O) h; h
<filter-mapping>) ~) ~8 C* F7 J7 m0 o
<filter-name>struts2</filter-name>
" f1 u( ]7 F* y' n <url-pattern>/*</url-pattern>3 I& t- T- R4 z2 _
</filter-mapping>
& a9 g0 o. h0 g! C h2 `7 X$ q/ A/ m0 z' v& Q' g
注意:<url-pattern>/*</url-pattern>,这里使用"/*"模式匹配请求的URL地址。
5 ?2 l* A: r; }. z' @& X , e4 z; X! ~% d1 e4 {& G
(5)Web应用目录结构
+ }: }& }- D3 r$ D DemoWeb5 s) T" J3 z& H% J& T! J( F) l! ^+ k
|---index.jsp2 d; x' p; s `$ ^1 b
|---Web-inf
( n2 }9 l& R8 |6 H L- k& A7 F |---web.xml Struts2的启动配置
9 A8 i; H( F( O M |---classes. b; t' n% [# H3 C+ E$ ~
|---struts.xml Struts2的核心配置文件
2 Z( L$ G) ~) S, l |---lib Struts2框架中的jar文件
1 P/ O% I% r! n |---struts2-core-2.x.x.jar
$ a. ^- J8 f! q& D |---ognl-2.6.x.jar
/ X% b7 n8 @4 }2 q |---freemarker-2.3.x.jar
2 M" t- w1 C, C2 U; B1 o' _$ t" @: b |---commons-logging-1.x.x.jar2 ?8 a# Z3 b" i8 z: [% [' P
|---commons-fileupload-1.2.1.jar
5 M! u/ Q; K; q. j; r' F |---commons-io-2.4.jar
; v' a, B" G/ i5 b, K |---commons-lang3-3.4.jar
4 N) e; `) `& v0 R% Q |---javassist-3.20.0-GA.jar8 Y" U; W& }5 J* B- q
|---log4j-api-2.7.jar
: v! j; e* a, I7 ]5 W ! r4 X f6 \* s/ S9 S( U
1 m" R* d2 p. u+ l) @! [
|
|