今天在做PetStore时要用到doubleselect,但数据需要从数据库里提取.说说简单,做做难啊,下面,给大家看下代码:
sql1:
引用
DROP TABLE IF EXISTS `petstore`.`category`;
CREATE TABLE `petstore`.`category` (
`category_id` int(10) unsigned NOT NULL auto_increment COMMENT '类别ID',
`category_name` varchar(45) character set utf8 NOT NULL COMMENT '类别名' ...
比如,当我要添加一个信用卡的时候,我需要信用卡的CardType, 这些数据是存在数据库中的,我要先通过action 的一个 create方法,取到信用卡的类型: public String create()...{ creditCardTypeList = this.creditCardTypeService.getList(); & ...
OGNL(Object Graphic Navigation Language,对象图导航语言)是一种功能强大的EL(Expression Language,表达式语言,JSP2.0规范),Struts2的核心表达式语言,OGNL是一个开源JAVA项目,但因为使用Struts2,我们完全不需要知道OGNL到底里面是什么东东,只需要按照Struts2的规则知道如何使用就OK了!第二章已经说过(请参看第二章的OGNL结构图),Struts2将Action中的实例压入值栈(ValueStack,值栈,Struts2的根对象,可以把它简单的理解为List,只不过它遵循堆栈的特点,先进后出!),sess ...
拦截器与aop是密切相关的,从某种程度上说,两者可以等同起来.aop是程序在特定切面通过系统自动插入特定方法.aop面向是程序运行中各个步骤,以一种松耦合方式来组合业务处理的各个步骤.
在aop的编程方式中,有三个重要概念
a.目标对象:包含被拦截方法的原始对象
b.被插入的处理方法:定义在拦截器中,会在被被拦截方法之前,之后自动执行的方法.
c.代理对象:以目标对象为蓝本,由系统创建的新对象
理解了上面三个概念,其实拦截器的实现就一句话:
代理对象是系统自动生成的,它与目标对象就一些区别,不仅包括了原始对象的方法,还在目标方法前后插入了拦截器的方法.而我们系统在执行的时候,用到的是 ...
今天在处名命空间时,发现一个奇怪的现象,之前我写过关于它的文章,是说,见议所有路径前面都加上 / .现在看来,这样说不完全正确.
在没有用到strtus2标签的表单里,action这里加里加上/*.action是会出错的
而用到标签的表单加上/却不会出错.
例:命名空间为:/user
<s:form action="/user/login.action">
<s:textfield name="login.username" label="Username"></s:textfield>
<s:password name="login.password" ...
如果开发过struts1.0的朋友应该知道其与servlet API是偶合的,然而struts2将Action与servlet API进行解偶.它方便了单元测试.struts2提供了三种方法对servlet API进行解偶.下面就这三种方法讲解一下: 1.ActionContext 这个接口对应到servlet API是HttpServletRequest其中的两个主要方法get和 put 对应到HttpServletRequest的是getAttribute和setAttribute.这样,我们只需要在execute中用ActionContext接口就能间接地操纵serv ...
一个初学者很容易出错的地方是,struts中路径的问题.比如struts.xml中,请看以下两行语句<result >/success.jsp</result> <result>success.jsp</result> 我也说不出个所以然来,好像是指向根目录的意思,如果不写,应该不能指定.但并不是所有的时候都必须加上,如果用到命名空间的时候就必须加上. 建议,只要是路径,都给加上.
struts2没有提供自己的请求解析器,也就是说,struts2不会自己区处理multipart/form-data的请求,它需要调用其他请求解析器,将HTTP请求中的表单域解析出来,但struts2在原有的上传解析器上作了进一步封装,更进一步简化了文件上传
Struts2的struts.properties配置文件中,配置struts2的上传文件解析器
struts.multipart.parser=jakarta (srtuts2默认),也可以设置为常用的cos,pell等
配置上传页面:
引用<html xmlns="http://www.w3.org/1999/x ...
Spring是一个强有力的java程序框架,其被广泛应用于java的程序中。它用POJO提供了企业级服务。Spring利用依赖注入可以获得简单而有效的测试能力。Spring beans,依赖关系,以及服务所需要的bean都将在配置文件中予以描述,配置文件一般采用XML格式。然而XML配置文件冗长而不易使用,在你进行一个使用了大量bean的大项目中它将变得难以阅读和控制。
在这篇文章中我将给你展示12种的有关Spring XML配置文件的最佳技巧。它们中的一些具有更多的实际意义,而不仅是最好的技巧。请注意另外一些因素,例如域模型的设计,会影响到XML配置,但是这篇文章更关注于XML配置的可 ...
和大家分享一个不错的编写properties文件的Eclipse插件(plugin),有了它我们在编辑一些简体中文、繁体中文等Unicode文本时,就不必再使用native2ascii编码了。您可以通过Eclipse中的软件升级(Software Update)安装此插件,步骤如下:
1、展开Eclipse的Help菜单,将鼠标移到Software Update子项,在出现的子菜单中点击Find and Install;
2、在Install/Update对话框中选择Search for new features to install,点击Next;
3、在Install对话框中点击New ...
记得以前学习struts1.3的时候,很不明白,为什么要把验证放到服务器端,这样不是会降低服务器的执行效率吗?当然,对于struts这样一个大型的开源组织来说,不会笨到这样.今天看来的确需要在服务器端采用这样的验证机制.
因为,如果仅在客户端利用JavaScript或其它脚本语言来编写的验证仅能对于一般用户.对于恶意用户是不起作用的,我们可以想象一下,在做struts项目的时候,有个请求转发机制,无论是struts1.0还是struts2.0,都可以不通过jsp页面来向服务器端输入数据.而是通过:
....do?参数 或....action?参数的形式.这样就可以饶过客户端的数据验证.
然 ...
类型转换与输入校验的流程:
1.首先Struts2对客户端伟来的数据进行类转换
2.类型转换完后再进行validate()输入校验
3.如果类型转换和输入校验都没有错误发生,那么再进入execute()方法,最后输出
注意:如果类型转换不成功,也同样进行输入校验!
今天在开发一个用户登陆验证时,发现一个非常有意思的问题,我的LoginAction-Validation.xml中一开始这样写: <?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2 ...
- 浏览: 11273 次
- 性别:

- 来自: 杭州

- 详细资料
搜索本博客
我的相册
温总理
共 27 张
共 27 张
最近加入圈子
最新评论
-
再次发现一个struts2中命 ...
<form action="<%=request.getContex ...
-- by zyx_0219 -
再次发现一个struts2中命 ...
...
-- by 我很丑,但是我也不温柔 -
警告 - 女鬼病毒
...
-- by lordhong -
doubleselect:如何数据从 ...
值得注意的是jsp这里,必须在form里加上name属性,名字随意 不加上的话 ...
-- by visionary_2006 -
doubleselect:如何数据从 ...
我也遇到了相同的问题@@。没有解决啊。。。lz知道怎么解决了没有。。
-- by xiaomogui






评论排行榜