Struts1.x学习总结
Myeclipse8.5或更高版本集成了Struts1.x版本 所以可以从软件里直接进行导包、配置文件等,非常方便,初期导包配置文件自动步骤如下:
当然也可以自己导包,然后新建一些配置文件,jar包自己去网上找资源
如果是程序自己配置,就会在WEB-INF下自动生成一个配置文件:
初期的配置都已经配好了,如果自己配置,那就找一份复制下,或者拷贝里面内容到自己建的xml里。
web.xml也要配置起来,如果自动配置已经写的差不多了,自己配置请看下图:
另外可以写一个Model层,里面主要是业务逻辑,与数据库读取数据操作,一般这个java类里会调用Form这个类,因为这个类封装了来自网页form表单的数据,使用它的get、set方法进行数据读写。
另外写个action层,这里就是动作的实现,action这个动作类可以调用Model层的业务逻辑java类,这个类必须继承Action这个类,然后重写里面的一个
execute()方法.
简单理理逻辑吧:首先说说Action这个类最后返回的ActionForward→这个东西调用参数mapping的findForward()方法,方法里参数就是在struts-config里forward的Name属性,指向一个jsp网页。
接着说说action这个配置里的Name属性,这个里面如例子中的”name=
saveProductForm” 指的是Form类的别名。 Path属性里的路径就是请求路径,就是保存那个表单的action请求,如图:
Scope=Request属性是作用域,type就是指请求对应的java类。
可以说<action-mapping>这个配置是核心配置,里面包括了form类,作用域,以及action动作类,请求路径+最后forward的即execute返回的路径页面。
参考地址:http://www.cnblogs.com/xudong-bupt/archive/2013/04/06/3002258.html
PS:处理类也可以继承DispatchAction,如下,写的非常不错:
DispatchAction就是可以让你重复利用一个Action来处理一类业务,而不用去定义若干个Action。比如,你的日志的添加、删除、修改,你就可以放在一个Action中,然后定义parameter,如parameter="method",你就可以新建几个方法来处理这几个业务,如新建一 个add的作为添加。你访问的时候就是xxx.do?method=add,当然parameter的值是可以随便定义的,一般习惯用 parameter="method",你可以使用你喜欢的单词,如parameter="what",访问的时候就是xxx.do?what=add
Tips: a.重定向(绝对路径包括项目名) response.sendRedirect("/ext/mystruts/search.jsp");
b.转发(相对路径):request.getRequestDispatcher("/mystruts/save.jsp").forward(request,response);
参考地址:http://www.cnblogs.com/xuekyo/archive/2012/05/22/2512846.html