
Struts2
事后诸葛亮
深入浅出!
展开
-
struts2——配置文件通配符!!!
<br />在struts2中使用通配符,配置文件如下:<br /><struts> <package name="actions" extends="struts-default" namespace="/actions"> <action name="Student*" class="com.struts2.action.StudentAction" method="{1}"> <result>/Student{1}_success.jsp</res原创 2010-09-25 16:19:00 · 1816 阅读 · 1 评论 -
struts2——拦截器原理模拟!!!
Mainpublic class Main { public static void main(String[] args) { new ActionInvocation().invoke(); }}ActionInvocationpublic class ActionInvocation { private int index = -1; private Action action = new Action(); private List interceptors = new原创 2010-09-28 15:30:00 · 551 阅读 · 0 评论 -
struts2——OGNL表达式!!!
<br /> <ol> <li>访问值栈中的action的普通属性: username = <s:property value="username"/> </li> <li>访问值栈中对象的普通属性(get set方法):<s:property value="user.age"/> | <s:property value="user['age']"/> | <s:property value="user[/"age/"]"/> | wrong: <%--<s:property value="us原创 2010-09-27 11:21:00 · 594 阅读 · 0 评论 -
struts2——自定义拦截器!!!
import com.opensymphony.xwork2.ActionInvocation;import com.opensymphony.xwork2.interceptor.Interceptor;public class MyInterceptor implements Interceptor { public String intercept(ActionInvocation invocation) throws Exception { long start = Syste原创 2010-09-28 16:35:00 · 550 阅读 · 0 评论 -
struts2——常用标签!!!
<br />property:<br />Ognl取值:<s:propertyvalue="username"/><br />取值为字符串: <s:propertyvalue="'username'"/><br />设定默认值: <s:propertyvalue="admin"default="管理员"/><br />设定HTML: <s:propertyvalue="'<hr/>'" escape="false"/><br /> <br />set:<br />Struts2.0中使用name,Strut原创 2010-10-18 20:58:00 · 567 阅读 · 0 评论 -
struts2 & jquery & json !!!
<br />所需要的jar包:<br />commons-beanutils-1.7.0.jarcommons-collections-3.2.jarcommons-fileupload-1.2.1.jarcommons-io-1.3.2.jarcommons-lang-2.3.jarcommons-logging-1.0.4.jarcommons-logging-1.1.jarezmorph-1.0.3.jarfreemarker-2.3.13.jarjson-lib-原创 2010-10-19 15:36:00 · 669 阅读 · 0 评论 -
struts2——s:doubleselect标签!!!
doubleselect:1)里面。2) 4)一级列表需要一个list,而二级列表需要一个map。5)top代码一级列表当前选中的项。map.get(top.deptno)代表根据部门编号找到map里面对应的员工集合。6)一个jsp页面上出现了两个action:原创 2010-10-21 10:34:00 · 4183 阅读 · 0 评论 -
struts2——运行原理!!!
1.1 简单例子<br />先做一个最简单的struts2的例子:在浏览器中请求一个action,然后返回一个字符串到jsp页面上显示出来。<br /> <br />第一步:把struts2最低配置的jar包加入的项目中。<br /> commons-logging-1.0.4.jar<br /> freemarker-2.3.8.jar<br /> ognl-2.6.11.jar<br /> struts2-core-2.0.11.jar<br />原创 2010-10-22 12:03:00 · 4069 阅读 · 1 评论 -
struts2——s:select标签!!!
struts2 UI标签的缺点:1)struts2会自动给ui标签加上样式,要改变它非常麻烦。2)struts2的ui标签和javascript结合不是很好。3)有些ui标签存在bug和很多怪异的想象,不好调试和控制。struts2的ui标签有四种主题(theme):simple,xhtml(默认),css_xhtml,ajax。Simple主题是不带样式的,一般使用它。html源码:请选择张三李四王五原创 2010-10-21 10:17:00 · 2290 阅读 · 1 评论 -
struts2——s:checkboxlist标签!!!
checkboxlist:1)checkboxlist默认是横着排列,要想竖着排列就比较麻烦,,要覆盖strut2的css或者覆盖struts2的方法。2)同样的环境,把后面一个checkboxlist的name改为map:默认就全部选中了,不知道什么原因。jsp:Html源码:原创 2010-10-21 10:27:00 · 4309 阅读 · 0 评论 -
struts2——optiontransferselect标签!!!
这里用到的后台数据是“struts2——s:select标签!!!”里面的!!!jsp:html:原创 2010-10-21 12:38:00 · 1460 阅读 · 0 评论 -
struts2——处理异常!!!
<br />public class Test extends ActionSupport { public String execute() throws Exception { try { int i = Integer.parseInt("ing"); } catch (Exception e) { return "error"; } return "success"; }}<br /><struts> <constant name="st原创 2010-09-27 21:11:00 · 576 阅读 · 0 评论 -
struts2——Tags!!!
property: property 取值为字符串: property 设定默认值: property 设定HTML: set 设定adminName值(默认为request 和 ActionContext): set 从request取值:原创 2010-09-27 14:34:00 · 540 阅读 · 0 评论 -
struts2——动态方法调用(dmi)!!!
<br />暴露一个类的一个方法,可以这样:<br /> <package name="user" namespace="/user" extends="struts-default"> <action name="user" class="User" method="add"> <result name="success">/hello.jsp</result> </action> </package><br />调用的时候:h原创 2010-09-25 14:42:00 · 853 阅读 · 0 评论 -
struts2好简单——HelloWord!!!
从前有一个很不错的mvc框架叫struts1,从前还有一个更不错的mvc框架叫webwork,struts1因为推出时间比webwork早,所以做得比较瞥的东西反而流行起来了。struts1一想,这样下去不行,总有一天会被webwork超越的。它们俩一商量,就合并了。于是就出现了struts2,用的主要是webwork的技术,名字叫struts2。第一步:把jar包放到项目中第二步:下一个jsp页面原创 2010-09-24 22:56:00 · 714 阅读 · 0 评论 -
Struts2——访问web元素!!!
<br />取得Map类型request,session,application的引用:<br />第一种:(不推荐使用,因为依赖于容器)<br />import java.util.Map;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;public class LoginAction1 extends ActionSupport { private M原创 2010-09-26 09:43:00 · 580 阅读 · 0 评论 -
struts2——action!!!
<br />由于前面已经做过一个struts2的helloword了,后面我就不再讲加入jar包和web.xml的配置了,他们都完全一样,你可以理解我默认做过了这些事情了!!!除非有变化的地方我才会说。<br />/* * 这是第一种实现自定义action的方法,不推荐使用。 * 因为如果你们的类里面没有execute方法,struts2就不知道调了。 */public class MyAction1 { public String execute() { return "succ原创 2010-09-25 10:53:00 · 575 阅读 · 0 评论 -
觉悟——路径的问题!!!
struts2中的路径问题是根据action的路径而不是jsp路径来确定,所以尽量不要使用相对路径。解决办法非常简单,统一使用绝对路径。但是还有一个问题在struts2中“/”相当于:http://localhost:8080/a/,而在tomcat中“/”只是相当于:http://localhost:8080/。还是有解决办法,记得用myeclipse的时候jsp页面前面它都要自动生成一段东西,那个东西现在这里就用到了:在使用路劲的时候就这样:b.jsp。如果觉得每个跳转都要这样写也麻烦,那就加一句话到h原创 2010-09-25 11:36:00 · 542 阅读 · 0 评论 -
struts2——action接受参数!!!
<br />第一种在action里面定义属性,自动生成get和set方法,struts2会自动set进去。<br />public class UserAction extends ActionSupport { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } ...}原创 2010-09-25 17:25:00 · 821 阅读 · 1 评论 -
struts2——ValueStack,模块包含,默认action!!!
<br />ValueStack:<br />在action中放键值对,在页面拿:<br />this.addFieldError("f", "v1");this.addFieldError("f", "v2");<br /><%@taglib uri="/struts-tags" prefix="s" %><s:fielderror fieldName="f" theme="simple"/><br /><s:property value="errors.f[0]"/><br /><s:p原创 2010-09-26 16:16:00 · 575 阅读 · 0 评论 -
struts2——i18n!!!
<br />struts2国际化有三种级别:<br />第一:action级别。资源文件名字必须和action名字一样,如:actionname_zh_CN.properties。<br />第二:package级别。资源文件名字必须为:package_zh_CN.properties这种形式。<br />第三:项目级别。(struts1只支持这种)资源文件名字随便取:随便取_zh_CN.properties。<br />项目级别的国际化还要在配置文件里面加:<constant name="struts.c原创 2010-09-28 13:58:00 · 882 阅读 · 0 评论 -
struts2——文件上传!!!
<br />import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;import com.opensymphony.xwork2.ActionSupport;public class Test extends ActionSupport { private原创 2010-09-29 10:24:00 · 535 阅读 · 0 评论 -
struts2——result配置!!!
<br /><struts> <package name="resultTypes" namespace="/r" extends="struts-default"> <!-- 全局结果集 --> <global-results > <result name="mainpage">/main.jsp</result> </global-results> <!--转发,不写,默认也是它。--> <action na原创 2010-09-26 17:21:00 · 1120 阅读 · 1 评论 -
struts2——optgroup!!!
这里用到的后台数据是“struts2——s:select标签!!!”里面的!!!jsp:html:张三李四原创 2010-10-21 12:39:00 · 1991 阅读 · 0 评论