|
该用户从未签到
|
(1)首先创建一个新的Web工程,这是一个普通的Web应用。6 u: _1 v, O' R5 `5 n$ }- c6 z
) C5 P$ z8 l! ^8 A% W6 N
(2)将struts2框架中必须使用的jar文件拷贝到web-inf/lib目录中,为Web应用提供Struts2开发的支持。2 W. d6 ^* \; W. }' e0 t' x* j
% y# [% Y$ j9 K y2 y; ?8 P- @
(3)创建配置文件
& y9 _, ?7 r" L: G! _- z Struts2有一个核心配置文件,默认文件名为struts.xml,该文件需要放在claspath中。通常将它存放在src目录下。8 J" m3 N8 F( s% _( f
- Q2 ^4 K, g4 V. k
struts.xml文件内容需要按照固定的格式结构编写:
& u; U$ F" J7 Y& ?6 N( v a、首先配置格式校验
: P. z N6 t) i; h6 C: j( n- d0 u& v7 q 在struts2-core-2.5.5.jar的根目录中获得struts-2.5.dtd。7 g" V2 V% w. s+ W- { a
在Eclipse中,打开windows -> preferences -> XML -> XML Catalog -> Add,这将打开一个新增窗口。4 q9 h0 M4 Q; _( [' p, m
将struts-2.5.dtd配置进去。: G0 U) i" u9 k
) M5 f9 B' k+ T+ B
b、编写struts.xml内容:: o8 P0 j) N0 [% r; z: \. H
<?xml version="1.0" encoding="UTF-8" ?>
# b i/ N! X9 O <!DOCTYPE struts PUBLIC1 M e% G# H! L- q% d& Y0 P7 [# g
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"' e; Y, k1 B' J, E' G& ]1 j$ Y
"http://struts.apache.org/dtds/struts-2.5.dtd">
{) H( o0 `0 c x+ F+ X3 F <struts>, p7 w3 t5 v- J' u, s! ?
</struts>+ I4 n8 d' |9 ?/ ~% C, Z! t2 P
! L: r% @" Q l8 a
注意:struts.xml名字的大小写。创建在src目录中,不是WEB-INF中。
B$ k: l' I1 e) c$ ~ I
2 S6 o: f) K4 q' n0 }4 Z# R (4)配置控制器- I# F C) n. R2 V: v+ R
在web.xml中配置Struts2的控制器。这是一个由Struts2提供的Filter,它负责拦截所有的HTTP请求,并交由Struts2框架处理。
1 v1 O3 c0 p1 a# Q; q) I <filter>
0 f6 n( g; A0 G: O" S <filter-name>struts2</filter-name>
: c) W* h5 e( `8 _; D <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
" f* D/ t/ t. m1 X/ A* v9 X/ C </filter>' ~' P7 n6 |) `5 x& r
<filter-mapping>
: m) r! ~' j# O% U9 T; m <filter-name>struts2</filter-name>
8 W% I4 {. t% c8 L5 s <url-pattern>/*</url-pattern>1 ?" V; ?3 o5 @
</filter-mapping>2 W& K& G* B+ I& E
; o+ f$ d( J* L8 m! X. Y 注意:<url-pattern>/*</url-pattern>,这里使用"/*"模式匹配请求的URL地址。# O1 w( z, E0 \- `$ N0 M4 I0 E
. @ y' w! q2 b/ [5 \8 z- ] (5)Web应用目录结构
- ?2 J# l! k" R# f5 s DemoWeb5 }( t! n( F$ R" k! ~/ a
|---index.jsp, T+ j% ?, O# M& h$ f, A: } l
|---Web-inf 2 J$ Y, O6 Y s5 E" @
|---web.xml Struts2的启动配置) X. O1 q7 x* t+ }9 | q
|---classes: f8 B3 y$ G* ~1 U, q2 w3 T1 S( H/ k) x
|---struts.xml Struts2的核心配置文件
. {. k. g1 C' l9 j |---lib Struts2框架中的jar文件
0 t7 H! s. C9 n' _ |---struts2-core-2.x.x.jar
% V. ]9 |9 O: u, s5 p* q |---ognl-2.6.x.jar' y5 A: |* \9 I, u$ }. z
|---freemarker-2.3.x.jar
8 Q4 P' q* ?3 V2 X7 p" f |---commons-logging-1.x.x.jar
F) c5 e- k8 o |---commons-fileupload-1.2.1.jar; J( i, Z# q: a' |
|---commons-io-2.4.jar1 {# g7 {" E, T& g
|---commons-lang3-3.4.jar
% Q- ^/ z+ _. j$ \1 \ |---javassist-3.20.0-GA.jar
+ o, W5 c0 g; _6 Z9 W |---log4j-api-2.7.jar
5 I5 r, L+ S! U2 y* Z0 \
8 F- M9 Q+ ~8 Q& ^) w8 H- H. a2 k% J/ Z
|
|