Struts2笔记——8.类型转换

浏览器服务器之间的数据通信不可能有丰富的数据类型,实际上http参数都是字符串类型的。因此必须在服务器端完成数据类型的转换。Struts2有强大的内建转换机制,类型转换可以依赖于OGNL表达式。开发者也可以自己创建类型转换器。


内建的类型转换器和基于OGNL类型转换

Struts2可以完成大多数常用的类型转换。借助于OGNL,Struts2允许以另一种简单方式请求参数转换成符合类型。比如表单需要提交的action中有一个user类型属性,那么提交的时候直接使用user.name和user.pass即可将表单数据传给user实例的相应属性。这种方式能够将普通的http请求参数(字符串)转化为符合类型对象(user对象,而非普通的String,int等)。演示代码如下:

<s:form action="lalala/login">
<s:textfield name="user.name" label="U" />
<s:textfield name="user.gender" label="gender"/>
<s:textfield name="username" label="username"/>
<s:submit value="adg"/>
</s:form>

此表单会将username中内容赋给login中的username属性,将name与gender赋给login中user实例的name与gender属性。

<s:property value="user.gender"/><br/>
<s:property value="user.name"/><br/>

在success视图页,通过property标签提取相关属性值。

时间: 2024-08-02 08:23:47

Struts2笔记——8.类型转换的相关文章

struts2中的类型转换

类型转换 所有的页面与控制器传递的数据都是String类型,在对其进行处理时可能会用到各种的数据类型,程序无法自动完成数据类型的转换,这就需要我们在代码中进行手手动操作,这个过程就称为类型转换. 内置类型转换器 在Web应用程序中,用户在视图层输入的数据都是字符串,业务控制层在处理这些数据时,就必须把从视图层传递过来的字符串进行类型转换.Struts2提供了简单易用的数据类型转换机制,struts2提供的类型转换如下: 1)String:将int.long.double.boolean.Stri

Struts2入门(三)——类型转换

一.前言 笔者一直觉得,学习一个知识点,你首先要明白,这东西是什么?有什么用?这样你才能了解.好了,不说废话. 1.1.类型转换为何存在?什么是类型转换? 在MVC框架中,都是属于表示层解决方案,都需要负责收集用户请求的参数,并且将请求参数传给应用的控制器组件,但是,这里有一个问题,客户端提交的请求参数都是字符串数据类型,而java这门语言本身就是强类型语言,所以我们需要类型转换,就是把字符串类型转化为你所需要的类型. 在MVC框架中,表示层数据处理分为两个方法:客户端输入数据,服务端输出数据:

Struts2笔记——9.输入校验

校验分为客户端校验跟服务器校验.客户端主要依靠javascript代码完成,服务器端校验通过在程序中的编程完成.客户端仅能防止正常的误操作从而减低服务器的负载,而服务器端则可以防止恶意的攻击. 编写校验规则文件 Struts2提供了基于验证框架的输入校验,因此我们只需要编写简单的配置文件,框架就会自动帮我们进行服务器客户端校验.有了这套框架,我们无需对代码进行任何修改,仅仅增加一个校验规则文件即可.在想要进行校验的action目录下创建一个ActionName-validation.xml文件作

Struts2 笔记

对于上周学的Struts2 进行一个简单的小结: Struts2功能主要分为:过滤器, 数据校验,类型转换,结果类型,上下文,拦截器,ognl,i18n,模型驱动. Struts2的过滤器:StrutsPrepareAndExecuteFilter 这是Struts2的核心,在web.xml中配置 1 <filter> 2 <filter-name>struts2</filter-name> 3 <filter-class>org.apache.struts

Struts2笔记(学struts2只需要这一篇文章)

1.struts2框架引入到web项目中      1.把struts2相关jar包引入到项目中 2.把struts2的配置文件直接放到src下面,名字要叫做struts.xml.(运行时配置文件会被框架自动读取).      注意:如果struts.xml文件中不能自动提示标签,把相应的dtd文件配置上去. 3.在web.xml文件中配置struts2框架的过滤器.     这个过滤器的作用:拦截struts2框架中的action.     注意:如果不配置这个filter,struts2框架

Struts2笔记03——架构(转)

原始内容:https://www.tutorialspoint.com/struts_2/basic_mvc_architecture.htm 从一个比较高的层次来看,Struts2是一个pull-MVC(或者MVC2)框架. Struts2的 Model-View-Controller 模式通过以下五个核心组件实现: Actions Interceptors Value Stack / OGNL Results / Result types View technologies Struts2和

struts2笔记11-OGNL

1.OGNL Object-Graph Navigation Language,对象-图 导航语言,可以方便的操作struts2值栈对象 2.对象栈操作方法 (1)action普通属性的访问方法 <s:property value="[n].pName"/> 从对象栈第n个对象开始查找pName属性的值: <s:property value="[0].pName"/>,表示从栈顶对象开始查找,而从栈顶对象开始查找又可以省略索引: <s:

java学习笔记5——类型转换

今天毕向东老师讲解了类型转换,其用途似乎不是很广泛,但是感觉很有意思,估计很多同学学习后有点头晕,于是将老师讲解的几点,总结为以下代码中,相信经过对比,能对此次教程有着更透彻的了解 class TypeConversion { public static void main(String[] agrs) { byte b =2;//由于2是常量,系统会自动判断2是否在bate范围内,所以可以赋值给b,而下一句中右边的b为变量,系统无法判断,故而自动升级为int型 //b=b+3;//自动转换:这

Struts2笔记——11.文件下载

Struts2提供了stream结果类型,是专门用于支持文件下载功能的. 实现文件下载的action类 这个类与普通action实现类的唯一区别就是,这个action类需要提供一个返回InputStream的方法.该方法是被下载文件的入口.代码如下.如果想要实现控制下载等一系列其他的功能,只需要在execute方法中实现即可. public class download extends ActionSupport { private String inputPath; public String