61. 更为精彩的是自动代理的方式来总体配置各分散类中方法的事物属性,结合使用 DefaultAdvisorAutoProxyCreator, TransactionAttributeSourceAdvisor 和 TransactionInterceptor (我还需要详细理清楚)(P181)
62. 当使用自动代理时,MethodMapTransationAttributeSource 就能很多的派上用场了,它的 methodMap 属性中可以指定哪个类的哪个方法,可以使用通配符(P182)
第七章. 访问企业服务
63. 对于 JndiObjectFactoryBean 查找 jndi 资源未提及,如何设置 jndiEnvironment 属性,如果是在J2EE容器中运行,没什么问题,只是以单独应用程序运行时却未加说明,如下在容器外运行需要加上 jndiEnvironment 配置,指定实现类,及URL等(P217)
<property name="jndiEnvironment">
<props>
<prop key="java.naming.factory.initial">
org.apache.naming.java.javaURLContextFactory
</prop>
<prop key="java.naming.factory.url.pkgs">
org.apache.naming
</prop>
</props>
</property>
<property name="jndiEnvironment">
<props>
<prop key="java.naming.factory.initial">
org.apache.naming.java.javaURLContextFactory
</prop>
<prop key="java.naming.factory.url.pkgs">
org.apache.naming
</prop>
</props>
</property>
64.发送电子邮件配置 SimpleMailMessage 时也未说明,如果 SMTP 发送前需要验证该如何配置。需加上 mail.smtp.auth属性为 true,和验证时用户名和密码,Spring 验证时是通过 getTransport("smtp").connect(host,user,passwd) 来验证的。(P218)
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
</props>
</property>
<property name="host">
<value>mail.2911.net</value>
</property>
<property name="username">
<value>unmi</value>
</property>
<property name="password">
<value>unmi1234</value>
</property>
</bean>
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
</props>
</property>
<property name="host">
<value>mail.2911.net</value>
</property>
<property name="username">
<value>unmi</value>
</property>
<property name="password">
<value>unmi1234</value>
</property>
</bean>
这样取到 mailSender 后,就能调用它的 send(SimpleMailMessage msg) 发送邮件,自动进行密码验证。Spring也还是不够完美,可以配置 JavaMailSenderImpl 的 session 属性,但却无法应用上 session.getProperties() 中的许多项配置。Spring中能配置 SimpleMailMessage,然后再配合 Velocity 的邮件内容模板,确实很方便
65. 搭配 Spring的 ScheduledTimerTask 和 jdk 的TimerTask,再配置 TimerFactoryBean 就会自动启动定时器了,这种方式可配置的参数太少了,只能设置从现在开始隔多久(delay)以什么频度 (period) 执行某个任务(P222)
66. 更高级的定时器用 Quartz 来调度,这个工具以前单独使用过,可像 Unix 的 cron 那般灵活配置。在 MyEclipse 中使用Quartz时需要引入 Spring 1.2 Misc Libraries 所包含的包(含quartz-1.5.2.jar)(P224)
67. 94,96,97,104这几页中配置<value ref=""/>要写成<ref bean=""/>才对
68. 从前往后的被包容关系是:JobClass->JobDetailBean->Trigger->TimerFactoryBean, 有两种 Trigger,分别是 SimpleTriggerBean 和 CronTriggerBean。SimpleTriggerBean 和 ScheduledTimerTask 基本等价,Quartz 的威力全部体现在 CronTriggerBean 上的,可灵活的配置它的cronExpression 属性控制排程,最后需配置 SchedulerFactoryBean (它和 TimerFactoryBean 是基本等价) 来启动定时器(P227)
69. MethodInvokingTimerTaskFactoryBean+ScheduledTimerTask+TimerFactoryBean 可定时调用某个类(或对象)的某个方法,这个类只需要是一个普通Java类,被调度的方法不能有参数。 MethodInvokingJobDetailFactoryBean+SimpleTriggerBean(或CronTriggerBean)+SchedulerFactoryBean 定时调用某个类(或对象)的某个方法,这个类只需要是一个普通Java类,被调度的方法不能有参数(P228)
70. 书中并未描述 0/10 每10个单位触发执行的配置形式,需注意 */? 的使用,定义好 CronExpression 后需好好测试真正行为。 Spring 调用 JMS 发送消息的用法先搁一下,在SOA/MQ 的大环境下一定派得上用场的(P229)
分享到:
相关推荐
Spring in Action中文清晰版(带阅读笔记). Spring in Action中文清晰版(带阅读笔记).
Spring In Action中的笔记总结哦 Spring In Action中的笔记总结哦
Spring in Action中文清晰版(带阅读笔记)
Spring in Action 中文 清晰版 (带阅读笔记)(共压缩4分卷) 此第3分卷 是扫描版的 感谢分享的兄弟
Spring in action的学习笔记,里面有许多代码示例,部分内容是自己根据多方面资料综合而成
Spring in Action 中文 清晰版 (带阅读笔记)
Spring In Action(第二版)中文版_笔记 by uuwoxin 1.1 Spring是什么 如果说BeanFactory使Spring成为容器的话,那么上下文环境就是使Spring成为框架的原因。 上下文环境扩展了BeanFactory,添加了对I18N(国际化)...
Spring in Action 中间带有读书笔记, 第2部分共4部分
《Spring+in+action+中文版(第4版)》读书笔记带图片
Spring in Action 中间带有读书笔记 第4部分共4部分
Spring in Action 中间带有读书笔记,第3部分共4部分
spring_in_action_学习笔记 希望对各位学习spring的同学们 有帮助
Spring in Action 中文 清晰版 (带阅读笔记).part2
Spring in Action 中文 清晰版 (带阅读笔记).part1
本人阅读 《Spring in Action》一书笔记,点点滴滴,从博文中连缀成册,不多不少,共列下了 100 条。
spring in action 中文版,可能大家都知道了这本书吧,spring的入门书籍,介绍全面。我找了好久才好不容易找到一个是[完全]的中文版,不过是带有人为笔记的,版式上有点花,但总聊胜于无吧.当时是很高兴的.(一共34个包,...
Spring in Action 中间带有读书笔记, 第1部分共4部分
SpringInAction4 《Spring In Action 4th》学习笔记 第一部分 Spring的核心 1. Spring之旅 依赖注入 AOP bean的初始化过程 spring容器 2. 装配Bean “initialization on demand holder”创建单例模式的理解,参考 ...