该用户从未签到
|
(1)首先创建一个新的Web工程,这是一个普通的Web应用。7 N9 S. V3 _$ D, x3 M
" E; F& x; n& y4 F (2)将struts2框架中必须使用的jar文件拷贝到web-inf/lib目录中,为Web应用提供Struts2开发的支持。
6 W5 [: L0 V8 h- f [8 Q3 `9 S% } ) s2 J: u" x. O V! i; z
(3)创建配置文件
1 @, B0 N7 V3 [) ]9 _ Struts2有一个核心配置文件,默认文件名为struts.xml,该文件需要放在claspath中。通常将它存放在src目录下。
- Q2 ~( w8 }+ t7 G7 I9 A) o9 q1 B' y" U* A
struts.xml文件内容需要按照固定的格式结构编写:
, Y' w# ~, a9 p9 a/ l" p a、首先配置格式校验
' H, Z( ?1 W- G, Z 在struts2-core-2.5.5.jar的根目录中获得struts-2.5.dtd。$ _5 U: z( |( W" d$ M
在Eclipse中,打开windows -> preferences -> XML -> XML Catalog -> Add,这将打开一个新增窗口。! y# u `2 j, l7 N# r- H
将struts-2.5.dtd配置进去。1 L% h& h! j; R! w5 v) k. p
) N Z0 w3 o4 Y1 r$ O b、编写struts.xml内容:
9 f. ~* W6 N' ]& R- u6 a <?xml version="1.0" encoding="UTF-8" ?>
7 j3 i* u, W% [ <!DOCTYPE struts PUBLIC
0 j9 w4 f" Q8 ~( A/ d "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"3 [: T6 _ y0 k7 U
"http://struts.apache.org/dtds/struts-2.5.dtd">" P9 G7 I) u* ~" g% _" Y
<struts>4 ]- G9 m5 d3 {8 p
</struts>
* z' q- M( p; ` . g& Z h5 W1 N1 d8 A
注意:struts.xml名字的大小写。创建在src目录中,不是WEB-INF中。
% {; y, I$ r. U
! V! j# A6 O: e/ _( `6 x (4)配置控制器) ]4 E# Z$ b% P5 `, {
在web.xml中配置Struts2的控制器。这是一个由Struts2提供的Filter,它负责拦截所有的HTTP请求,并交由Struts2框架处理。
" }# t" a: _0 e6 M+ F <filter>
" e1 a4 K: F) }9 O( J! A# G* v) }8 q <filter-name>struts2</filter-name>
* i: v, _4 d7 i( F4 T M. ?( `. L <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>& l- r4 |+ G0 E0 D( z
</filter>' r' e/ w* o% X, c
<filter-mapping>
; [- I/ c* W( F9 B. G9 o <filter-name>struts2</filter-name>
5 S) O7 Y! H" H w <url-pattern>/*</url-pattern>
/ `3 ]- D# ?! L) C" C </filter-mapping>9 e/ `* z6 ~$ w/ n2 W K
9 P% ?$ h+ A4 h+ ^& e/ Y 注意:<url-pattern>/*</url-pattern>,这里使用"/*"模式匹配请求的URL地址。3 Z8 F: W T1 U- M0 Z! R
* Z$ x$ N4 o {$ e3 f9 }
(5)Web应用目录结构, V: Z5 F3 Y3 {+ G6 P- Y4 }
DemoWeb
' \& T/ Q: |6 y% D9 ~: K2 ]2 Y% b; g% X |---index.jsp
6 v9 U# y7 [1 z p1 Q6 V4 @( M2 x |---Web-inf
| ~7 G6 v! L |---web.xml Struts2的启动配置
. I7 G) Q6 v& G& S! \) O% X |---classes+ ^0 `4 J6 i" H) u: \
|---struts.xml Struts2的核心配置文件) E! t: x% E0 b
|---lib Struts2框架中的jar文件
/ C1 Q# W% _% b6 H& Z |---struts2-core-2.x.x.jar' Z |2 I4 [% b
|---ognl-2.6.x.jar
* T( J# g c9 h/ r+ v* V4 v |---freemarker-2.3.x.jar
# j, j+ e. v9 z, p e |---commons-logging-1.x.x.jar
0 J1 w6 i- ^2 v5 I' V5 L9 Q3 T |---commons-fileupload-1.2.1.jar5 T+ M0 \ l5 d T
|---commons-io-2.4.jar
9 z' U( a/ z# H& K& m1 G |---commons-lang3-3.4.jar" g, f2 P4 S. n G
|---javassist-3.20.0-GA.jar
4 c) \$ }0 ~ g4 S" T9 Q |---log4j-api-2.7.jar
( R# J' B1 Y9 P M
j; S9 L5 M* k, {% |8 Z4 B3 w; e# j! y# r n( }* Q$ ?
|
|