Spring实战之Bean定义中的SpEL表达式语言支持操作示例

网友投稿 376 2023-07-06

Spring实战之Bean定义中的SpEL表达式语言支持操作示例

Spring实战之Bean定义中的SpEL表达式语言支持操作示例

本文实例讲述了Spring实战之Bean定义中的SpEL表达式语言支持操作。分享给大家供大家参考,具体如下:

配置

xsiBkPkqsVjmlns:xsi="http://w3.org/2001/XMLSchema-instance"

xmlns:p="http://springframework.org/schema/p"

xmlns:util="http://springframework.org/schema/util"

xsi:schemaLocation="http://springframework.org/schema/beans

http://springframework.org/schema/beans/spring-beans-4.0.xsd

http://springframework.org/schema/util

http://springframework.org/schema/util/spring-util-4.0.xsd">

location="classpath:test_zh_CN.properties"/>

p:name="#{T(java.lang.Math).random()}"

p:axe="#{new org.crazyit.app.service.impl.SteelAxe()}"

p:books="#{ {confTest.a , confTest.b} }"/>

xsiBkPkqsVjmlns:xsi="http://w3.org/2001/XMLSchema-instance"

xmlns:p="http://springframework.org/schema/p"

xmlns:util="http://springframework.org/schema/util"

xsi:schemaLocation="http://springframework.org/schema/beans

http://springframework.org/schema/beans/spring-beans-4.0.xsd

http://springframework.org/schema/util

http://springframework.org/schema/util/spring-util-4.0.xsd">

location="classpath:test_zh_CN.properties"/>

p:name="#{T(java.lang.Math).random()}"

p:axe="#{new org.crazyit.app.service.impl.SteelAxe()}"

p:books="#{ {confTest.a , confTest.b} }"/>

location="classpath:test_zh_CN.properties"/>

p:name="#{T(java.lang.Math).random()}"

p:axe="#{new org.crazyit.app.service.impl.SteelAxe()}"

p:books="#{ {confTest.a , confTest.b} }"/>

p:name="#{T(java.lang.Math).random()}"

p:axe="#{new org.crazyit.app.service.impl.SteelAxe()}"

p:books="#{ {confTest.a , confTest.b} }"/>

二 资源文件

a=\u300a\u8f7b\u91cf\u7ea7Java EE\u4f01\u4e1a\u5e94\u7528\u5b9e\u6218\u300b

b=\u300a\u75af\u72c2Java\u8bb2\u4e49\u300b

三 接口

Axe

package org.crazyit.app.service;

public interface Axe

{

String chop();

}

Person

package org.crazyit.app.service;

import java.util.*;

public interface Person

{

public void useAxe();

public List getBooks();

public String getName();

}

四 Bean

Author

package org.crazyit.app.service.impl;

import java.util.*;

import org.crazyit.app.service.*;

public class Authttp://hor implements Person

{

private Integer id;

private String name;

private List books;

private Axe axe;

// id的setter和getter方法

public void setId(Integer id)

{

this.id = id;

}

public Integer getId()

{

return this.id;

}

// name的setterhttp://和getter方法

public void setName(String name)

{

this.name = name;

}

public String getName()

{

return this.name;

}

// books的setter和getter方法

public void setBooks(List books)

{

this.books = books;

}

public List getBooks()

{

return this.books;

}

// axe的setter方法

public void setAxe(Axe axe)

{

this.axe = axe;

}

public void useAxe()

{

System.out.println("我是"

+ name + ",正在砍柴\n" + axe.chop());

}

}

SteelAxe

package org.crazyit.app.service.impl;

import org.crazyit.app.service.*;

public class SteelAxe implements Axe

{

public String chop()

{

return "钢斧砍柴很快!";

}

}

五 测试类

package lee;

import org.springframework.context.*;

import org.springframework.context.support.*;

import java.util.*;

import org.crazyit.app.service.*;

public class SpELTest

{

public static void main(String[] args)

{

ApplicationContext ctx = new

ClassPathXmlApplicationContext("beans.xml");

Person author = ctx.getBean("author" , Person.class);

System.out.println(author.getBooks());

author.useAxe();

}

}

六 测试结果

[《轻量级Java EE企业应用实战》, 《疯狂Java讲义》]

我是0.06178107142599454,正在砍柴

钢斧砍柴很快!

更多关于java相关内容感兴趣的读者可查看本站专题:《Spring框架入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Spring Batch批处理框架使用解析
下一篇:SpringSecurity框架下实现CSRF跨站攻击防御的方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~