Struts2之数据类型转换(一)

如果我们在网页表单上填写数字,那么在后台我们是否需要手工把字符串转化为数字呢?

 

我们编写以下的程序:

1.创建文件login.jsp,核心内容如下:

<form action="login.action">
        username: <input type="text" name="username"> <br>
        password: <input type="password" name="password"><br>
        age: <input type="text" name="age"> <br>
        date: <input type="text" name="date"> <br>
        <input type="submit" value="submit">
    </form>

2.创建文件login_result.jsp核心内容如下:

username: ${requestScope.username}<br>
    password: ${requestScope.password }<br>
    age: ${requestScope.age }<br>
    date: ${requestScope.date }<br>

打印出四个变量的内容。

3.在struts.xml配置如下:

<action name="login" class="com.test.action.LoginAction">
            <result name="success">/login_result.jsp</result>
        </action>

4.最后我们编写LoginAction类。

因为表单上我们编写了四个内容,所以类中对应四个变量。

 

package com.test.action;

import java.util.Date;

public class LoginAction
{
    private String username;
    private String password;
    private int age;
    private Date date;

    //set and get method

    public String execute()
    {
        return "success";
    }
}

然后我们重新部署程序,发现运行是正常的,说明struts2自动帮我们完成了转换,当然如果我们填写的数据不合法,例如age填写了字符串,那么会抛出异常。

 

事实上,对于Java内置的数据类型,struts2会自动帮我们完整转化。但是对于我们自定义的类型,我们必须手工进行转化。

时间: 2024-10-07 23:26:59

Struts2之数据类型转换(一)的相关文章

(转)struts2:数据校验,通过XWork校验框架实现(validation.xml)

转载自:http://www.cnblogs.com/nayitian/p/3475661.html struts2:数据校验,通过XWork校验框架实现(validation.xml) 根据输入校验的处理场所的不同,可以将输入校验分为客户端校验和服务器端校验两种.服务器端验证目前有两种方式: 第一种: 参考:struts2:数据校验,通过Action中的validate()方法实现校验,图解 第二种: 使用validate()方法校验时,如果Web应用中存在大量Action就需要多次重写val

struts2中的类型转换

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

框架 day28 Struts2-封装数据,类型转换,数据校验,国际化,拦截器

封装数据(重要) 1.1普通字段,action属性[★★] *编写表单,提供表单元素,<input name="" /> name的值为普通字符串,及javaweb编写内容. <inputname="userName"> *将name的值当成action属性(property),提供setter方法 publicvoid setUserName(String uesrName){} //用于封装数据 private String userNa

Objective-C数据类型、数据类型转换

数据类型 1.Objective-C数据类型可以分为:基本数据类型.对象数据类型和id类型. 2.基本数据类型有:int.float.double和char类型. 3.对象类型就是类或协议所声明的指针类型,例如: NSAutoreleasePool *pool ,其中,NSAutoreleasePool是一个类,NSAutoreleasePool *是它指针类型或叫对象类型. 4.id类型可以表示任何类型,一般只是表示对象类型,不表示基本数据类型,所以刚才的变量可以声明pool也可以声明为id

数据类型转换-运算符

##基本数据类型转换 - 默认顺序是 * byte->short->int->long->float->double - 自动提升规则(针对二元操作符) * 所有的byte,short,char型会自动提升为int型 * 若一个操作数是long类型,则另一个操作数也会转换为long类型,计算的结果类型也是long类型 * float类型,double类型跟long类型的提升规则一样 - 注意 * 默认浮点型是double类型,默认整型是int类型 * 举例说明: ``` fl

Eclipse-运行符-数据类型转换-环境变量配置

1.能够使用Eclipse快捷键 ctrl + /   单行注释:再按一次则取消: ctrl + shift + /  多行注释:  ctrl + shift + \  取消多行注释: ctrl + shift + f  格式化代码 ctrl + d  删除光标所在行 shift + enter 光标所在行的下方增加一行空白,无论光标在该行的什么位置 ctrl + alt + 向下箭头  向下重复增加该行代码 alt + shift + x  运行代码 alt + / 自动补全  (Syso会自

简谈-Python的输入、输出、运算符、数据类型转换

输出: 格式化输出: 看到了 % 这样的操作符,这就是Python中格式化输出. 换行输出: 在输出的时候,如果有 \n 那么,此时 \n 后的内容会在另外一行显示 输入: 在python2.7当中,使用:raw_input(),在python3中不能使用.Python3只有input() 在python2中的input()把用户输入的东西当成式子(字符)了.所以在python2中一般用raw_input() python3中的input与python2中的raw_input()功能一样 运算符

JavaScript中数据类型转换总结

在js中,数据类型转换分为显式数据类型转换和隐式数据类型转换. 1, 显式数据类型转换 a:转数字: 1)Number转换: 代码: var a = "123"; a = Number(a); 注意: a)如果转换的内容本身就是一个数值类型的字符串,那么将来在转换的时候会返回自己. b)如果转换的内容本身不是一个数值类型的字符串,那么在转换的时候结果是NaN. c)如果要转换的内容是空的字符串,那以转换的结果是0. d)如果是其它的字符,那么将来在转换的时候结果是NaN. 2)pars

Arduino中数据类型转换 float/double转换为char 亲测好使,dtostrf()函数

如何轻松玩转Arduino单片机,当我在进行数据转换的时候,遇到了问题,尝试了C语言和C++中的好多函数,都没有达到将float型数据转换为char型的目的.苦苦查阅资料后,终于找到了一个大神级函数!!!dtostrf(),可以轻松实现数据类型from   float   to  char .            get it 格式如下: char* dtostrf(double _val,signed char _width, unsigned char prec, char* _s) 参数