时间:2021-05-20
本文实例讲述了Spring实战之Bean定义中的SpEL表达式语言支持操作。分享给大家供大家参考,具体如下:
一 配置
<?xml version="1.0" encoding="GBK"?><!-- 指定Spring配置文件的根元素和Schema 导入p:命名空间和util:命名空间的元素 --><beans xmlns="http://.properties"/> <!-- 配置setName()的参数时,在表达式中调用方法 配置setAxe()的参数时,在表达式中创建对象 配置调用setBooks()的参数时,在表达式中访问其他Bean的属性 --> <bean id="author" class="org.crazyit.app.service.impl.Author" p:name="#{T(java.lang.Math).random()}" p:axe="#{new org.crazyit.app.service.impl.SteelAxe()}" p:books="#{ {confTest.a , confTest.b} }"/></beans>二 资源文件
a=\u300a\u8f7b\u91cf\u7ea7Java EE\u4f01\u4e1a\u5e94\u7528\u5b9e\u6218\u300bb=\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<String> getBooks(); public String getName();}四 Bean
Author
package org.crazyit.app.service.impl;import java.util.*;import org.crazyit.app.service.*;public class Author implements Person{ private Integer id; private String name; private List<String> books; private Axe axe; // id的setter和getter方法 public void setId(Integer id) { this.id = id; } public Integer getId() { return this.id; } // name的setter和getter方法 public void setName(String name) { this.name = name; } public String getName() { return this.name; } // books的setter和getter方法 public void setBooks(List<String> books) { this.books = books; } public List<String> 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程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
相关阅读:EditPlus中的正则表达式实战(1)EditPlus中的正则表达式实战(2)EditPlus正则表达式实战(3)EditPlus中的正则表达式实战
SpringEL表达式语言,支持在XML和注解中表达式,类是于JSP的EL表达式语言。在Spring开发中经常涉及调用各种资源的情况,包含普通文件、网址、配置文
这篇文章主要介绍了spring表达式语言SpEL用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下(1)
jsp中定义实体bean获取bean的属性值,并将值输出到页面上;EL表达式:${实体对象名称}el表达式取数据时,通常用.号,.号取不出来就用[]pageCo
为了使JSP写起来更加简单。表达式语言的灵感来自于ECMAScript和XPath表达式语言,它提供了在JSP中简化表达式的方法。JSPEL语言定义EL(Exp