一, 从controller往视图传递值,controller---->视图
1)简单类型,如int, String,直接写在controller方法的参数里,是无法传递到视图页面上的(经测试)。
(而用@RequestParam("name")注解,可以从视图上,或地址中加name=传递到controller方法里)
2)可以用Map<String, Object>,其键值可以在页面上用EL表达式${键值名}得到,
3)也可以用Model类对象来传递,有addAttribute(key, value)方法,其键值可以在页面上用EL表达式${键值名}得到,
如果用addAttribute(value)这个方法,会将类型名的首字母改成小写后,作为键值名传递过去,例如"ok"在页面上用${string}得到,而一个复合类对象,如User类对象,页面上用${user}得到该对象,用${userpropertyName}得到其属性,这是用Model的一大优势。
例如,modeladdAttribute(new User("my姓名","我的爱好有游泳打球"));
这样页面上就能用${username}和${userhobby}打印对应属性
@RequestMapping(value={"/","/hello"})
public String hello(int id,Map<String,Object> map) {
Systemoutprintln(id);
Systemoutprintln("hello");
mapput("hello", "world");
return "hello";
}
@RequestMapping(value="/say")
public String say(@RequestParam int id,Model model) {
Systemoutprintln("say");
modeladdAttribute("hello", "value");
//使用Object的类型作为key,String-->string
modeladdAttribute("ok");
return "hello";
} >
如果一个变量只有几种可能的值,则可以定义为 枚举类型 。所谓“枚举”是指将变量的值一一列举出来,变量的值只限于列举出来的值的范围内。
声明枚举类型用 enum 开头。例如:
声明了一个枚举类型enum weekday,则可以用此类型来定义变量。例如:
也可以直接定义枚举变量,例如:
其中sun、mon、…、sat称为 枚举元素 或 枚举常量 。
说明:
1、在C编译中,对枚举元素按常量处理,故称为 枚举常量 。它们不是变量,不能进行赋值。例如 sun = 7; mon = 1; 是错误的。
2、枚举元素作为常量,是有值的。C语言编译按定义时的顺序使它们的值为0、1、2……也可以在定义时,指定枚举元素的值,例如:
3、枚举值可以用来作判断比较。例如:
4、一个证书不能直接赋值给一个枚举变量。例如 workday=1; 是错误的。它们属于不同的类型。应该先进性强制类型转换,然后才能赋值。例如:
相当于将序号为2的枚举元素赋值给workday,相当于
如果数值是尽可能连续的可以用一个数组存放对应的字符串
类似 char xxx[] = {"zero", "one", "two", "three",};
如果不是写一个函数类似
char f(int x)
{
switch (x)
{
case 1: return "one";
case 5: return "five";
case 10: return "ten";
}
return "unknown";
}
在已知可能输入值情况下,我们常常会用到枚举类型。在java中,怎么自定义枚举类型的值呢?请参考如下代码:
[java] view plaincopy
public enum Point {
Satisfaction(1), Dissatisfied(-1);
private final int val;
private Point(int value) {
val = value;
}
public int getValue() {
return thisval;
}
}
在调用的时候,可以用PointSatisfaction 和PointDissatisfied,如下所示:
[java] view plaincopy
Judge(mContenxt, mGuid, PointDissatisfied);
在方法Judge中,可以用getValue获取枚举的值。如下所示:
[java] view plaincopy
public void Judge(Context context,String logGuid, Point point){
int point = pointgetValue();
}
mysql怎么获取数据表字段enum类型的默认值 本节主要内容: MySQL数据类型之枚举类型ENUM MySQL数据库提供针对字符串存储的一种特殊数据类型:枚举类型ENUM,这种数据类型可以给予我们更多提高性能、降低存储容量和降低程序代码理解的技巧
以上就是关于java springmvc 页面枚举类型作为怎样查询条件并传递参数到controller全部的内容,包括:java springmvc 页面枚举类型作为怎样查询条件并传递参数到controller、枚举类型、C语言中的枚举类型等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)