取list里的值(java)

取list里的值(java),第1张

这要看你是怎么放到List里面去的了。

如果是两个集合嵌套。就这样就这样取值

for

(int

i

=

0;

i

<

listsize();

i++)

{

List

alist

=

(List)listget(i)

for

(int

j

=

0;

j

<

alistsize();

j++)

listget(j);

}

如果是一个集合一个javabean。

for

(int

i

=

0;

i

<

listsize();

i++)

{

JavaBean的类名

bean

=

(JavaBean的类名)listget(i);//get(i)方法返回一个Object,对Object转型

beangetName();//这样就获取到值了。

}

JavaBean 是一种JAVA语言写成的可重用组件

JavaBean有三个特性:

1、javaBean必须是一个public的类

2、JavaBean有一个不带参数的构造函数,如果public类的构造函数包含参数的话,那这个类不能做为JavaBean

3、JavaBean通过 getProperty获取属性,通过setProperty设置属性

声明JavaBean:

<jsp:useBean id="cart" scope="session" class="comjackyShoppingCart"></jsp:useBean>

使用JavaBean:

<jsp:getProperty name="cart" property="quantity" />

注意使用时的name属性要和声明时的id属性一致。

Servlet中调用javabean当然是直接new了,在JSP中用<jsp:usebean id="objectName" class="BeanName">

id对应的就相当于对象名,一个reference,class对应的是javabean的类名,全路径

比如说现在有一个bean

文件名是DBUtiljava(是指DBUtil所在的包)

那么在servlet中要调用该bean时

import DBUtiljava;//前面的是指DBUtil所在的包

DBUtil dbutil = new DBUtil();

之后就可以用dbutil方法名

调用DBUtil bean中的方法了

Xstream

需要的jar包

xpp3_min-114cjar

xstream-131jar

作用:

将xml字符串转换为java对象,或者将java对象转换为xml字符串

核心类:XStream xs = new XStream();

准备工作,先创建两个java类:City和Province

@XStreamAlias("city")

public class City {

private String name;

public String getName() {

return name;

}

public void setName(String name) {

thisname = name;

}

}

@XStreamAlias("province")

public class Province {

@XStreamAsAttribute()

private String name;

@XStreamImplicit(itemFieldName = "city")

private List citys;

public List getCitys() {

return citys;

}

public void setCitys(List citys) {

thiscitys = citys;

}

public String getName() {

return name;

}

public void setName(String name) {

thisname = name;

}

}

第一:将java类转换为xml字符串

XStream xs = new XStream();

String xml = xstoXML(JavaBean);

打印的字符串会将类的包名作为xml的标签,以及里面的字段都会变成标签。

例如将City类变为xml字符串:

武汉

将Province变成xml字符串

湖北

武汉

所以为了能将打印的字符串变为我们所想要的格式,可以使用Xstream提供的注解进行格式化输出

提供便捷注解

@XStreamAlias(别名) 对类和变量设置别名

@XStreamAsAttribute  设置变量生成属性

@XStreamOmitField  设置变量 不生成到XML

@XStreamImplicit(itemFieldName = “hobbies”) 设置集合类型变量 别名

使注解生效

xStreamautodetectAnnotations(true);

第二:将xml字符串变为java对象

Object xsfromXML(InputStream input);  //将一个下买了指定的流变为java对象

Object xsfromXML(String xml)  //将xml字符串变为java对象

Object xsfromXML(InputStream input,Object root)  ?

Object xsfromXML(String xml,Object root)  ?

注意:转换的xml文档必须与Java对象  的格式对应

例如:将下面xml字符串转换为Java对象

武汉

则进行转换时候:

XStream xs = new XStream();

Object o = xsfromXML(in);

若对应的java格式一定是:

包名为:comdomain

类名为:City

里面有一个成员属性:name  提供setter/getter方法

若不是则可以使用别名:

a为类设置别名

xsalias("city", Cityclass);

b为属性添加别名

xstreamuseAttributeFor(Blogclass,"author");

能不能通过注解将 xml转换为制定的java对象  

能,手动用方法添加别名

   

javaBean在MVC设计模型中是model,又称模型层,在一般的程序中,我们称它为数据层,就是用来设置数据的属性和一些行为,然后我会提供获取属性和设置属性的get/set方法JavaBean是一种JAVA语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean通过提供符合一致性设计模式的公共方法将内部域暴露成员属性。众所周知,属性名称符合这种模式,其他Java类可以通过自身机制发现和 *** 作这些JavaBean属性。用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。JavaBean书写规范:(1)JavaBean类必须是一个公共类,并将其访问属性设置为public,如:publicclassuser{}(2)JavaBean类必须有一个空的构造函数:类中必须有一个不带参数的公用构造器,例如:publicUser(){}(3)一个javaBean类不应有公共实例变量,类变量都为private,如:privateintid;(4)javaBean属性是具有getter/setter方法的成员变量。也可以只提供getter方法,这样的属性叫只读属性;也可以只提供setter方法,这样的属性叫只写属性;如果属性类型为boolean类型,那么读方法的格式可以是get或is。例如名为abc的boolean类型的属性,它的读方法可以是getAbc(),也可以是isAbc();一般JavaBean属性以小写字母开头,驼峰命名格式,相应的getter/setter方法是get/set接上首字母大写的属性名。例如:属性名为userName,其对应的getter/setter方法是getUserName/setUserName。但是,还有一下几种特殊情况:1、如果属性名的第二个字母大写,那么该属性名直接用作getter/setter方法中get/set的后部分,就是说大小写不变。例如属性名为uName,方法是getuName/setuName。2、如果前两个字母是大写(一般的专有名词和缩略词都会大写),也是属性名直接用作getter/setter方法中get/set的后部分。例如属性名为URL,方法是getURL/setURL。3、如果首字母大写,也是属性名直接用作getter/setter方法中get/set的后部分。例如属性名为Name,方法是getName/setName,这种是最糟糕的情况,会找不到属性出错,因为默认的属性名是name。所以在JavaBean命名时应该注意符合以上命名规范。综上述文章,为大家讲解了Java中的bean用法的介绍,以及书写规范。

  Spring容器提供了一种管理方法,致力于解决我们各个层级之间的对象的调用关系。

  我们通常调用各层级对象的时候,需要不断创建对象,一次访问就需要创建两个对象;如果我们使用Spring容器,将不同层级的对象放入容器中,每次使用的时候调用容器中的对象,就不用创建那么多对象,达到节约内存空间的目的。简单来讲,Spring容器就是存储JavaBean对象的容器。

  BeanFactory是一个接口,需要创建继承的子类对象。下图是其继承结构图:

方式二:使用ClassPathApplicationContext获取容器类

  这个方法替代了方式一,是我们创建容器类对象主要使用的方法。

方式三:使用FileSystemXmlApplicationContext来获取容器对象

  这种方式在创建对象的时候需要传入配置文件的绝对路径,这个方法可以使用项目外部的配置文件

  IOC(inversion of controller)指的是控制反转,简单来书,就是讲创建对象的过程或者创建对象的权限交给了spring框架来帮我们处理,我们不用再通过new的方式来创建JavaBean对象,这个过程就叫做IOC。

首先在applicationContext中配置我们的对象

然后从容器中获取我们的JavaBean对象

创建bean的工厂类

在配置文件中进行配置

获取JavaBean对象

创建工厂类的方式与上面相同

在配置文件中进行配置

获取JavaBean对象

Bean属性scope可以声明bean的作用域范围,Bean的作用域范围有四种:

我们可以在JavaBean类中添加init-method与destroy-method两个方法,实现bean在初始化和关闭的时候调用的方法,然后在配置文件中进行配置。

JavaBean类

配置文件

  DI(dependency injection)指的是依赖注入,简单来说就是使用spring框架对我们的JavaBean对象赋值的过程。

使用上文中创建的JavaBean类

注意:一定要给属性生成对应的setter方法

配置JavaBean类的属性

从容器中获取我们的JavaBean对象

在JavaBean中生成带所有属性的构造方法

在配置文件中申明JavaBean对象

申明的另一种方法:

调用JavaBean的属性

  P名称空间与C名称空间其实都是不存在的虚拟空间,主要是用于简化我们的spring为JavaBean属性赋值时的配置。

添加P名称空间与C名称空间到schema

通过setter方法进行赋值:

等价于:

通过构造方法进行赋值

等价于:

  Spel表达式,类似于jstl与el表达式的语言,spring可以支持我们在为属性赋值的时候,通过spel表达式来进行更改我们的属性值。

创建一个含有集合属性的JavaBean类

为集合属性注入值

一、 JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。

Json建构于两种结构:

1、“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 如:

{

“name”:”jackson”,

“age”:100

}

2、值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)如:

{

“students”:

[

{“name”:”jackson”,“age”:100},

{“name”:”michael”,”age”:51}

]

}

二、java解析JSON步骤

A、服务器端将数据转换成json字符串

首先、服务器端项目要导入json的jar包和json所依赖的jar包至builtPath路径下(这些可以到JSON-lib官网下载:>

以上就是关于取list里的值(java)全部的内容,包括:取list里的值(java)、什么是javabean简述javabean的特点、Servlet如何调用JavaBean等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9492006.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存