【244期门诊集锦】入木三分、鞭辟入里掌握Spring

技术门诊是51CTO社区品牌栏目,每周邀请一位客座专家,为广大技术网友解答疑问。从热门技术到前沿知识,从技术答疑到职业规划。每期一个主题,站在最新最热的技术前沿为你引航!

本期特邀知名作家、开源框架专家陈雄华老师,针对Spring学习过程中遇到的问题给予解答。欢迎网友积极提问,与专家一起讨论!

查看本期门诊精彩实录:

精选本期网友提问与专家解答,以供网友学习参考。

Q:老师好:如何学习Spring?需要掌握哪些知识?Spring 3.0比2.0有哪些差异及改进?A:1)核心API更新到Java 5.02)新增Spring表达式语言3)可通过Java类提供IoC配置信息4)通用类型转换系统和属性格式化系统5)数据访问层新增OXM功能6)Spring 3.0最令人振奋的一个增强是Spring MVC提供了对REST风格编程的支持7)声明式模型验证,全面支持JSR-303的Bean验证API8)对JavaEE 6的支持9)支持内嵌的数据库

Q:老师您好:

学习Spring需要掌握哪些Java基础知识?如果深入了解并掌握Spring?

。A:学习Spring需要掌握哪些Java基础知识? 大致需要以下的知识: 1)Java反射知识; 2)Java动态代理知识; 3) Java注解知识; 4) PropertyEditor的知识; 5) ThreadLocal的知识; 6) 国际化消息的知识; 这些Java基础知识在《Spring 3.x企业应用开发实战》中都有介绍,为读者做好的Java基础知识的铺垫,减少了读者阅读的难度。

如果深入了解并掌握Spring? 先尝试在项目中使用Spring,然后再有机会了解Spring的技术内幕,技术内幕在书的第3,5章有讲解,再此基础上建议你开始读读Spring的源码.读了Spring源码,一定会让你的Java功力和OOA,OOP能力大增!

Q:老师好:您好,公司有个项目,其中一个LogicImpl里面执行了除常用biz logic之外的,侏儒去外网抓取一些数据,socket和其他系统之间的通信的功能(使用还比较频繁)。有一次,系统突然D了,一看,JDBC pool全满了。后来该类实现了spring的ApplicationContextAware接口,后面在用的时候就通过applicationcontex上下文的getBean去取本类的实例。这样就解决了。想必这个接口您应该也熟悉吧。区别在于改动后,香港服务器,吧一些操作交给了spring的来管理,限于原因,没仔细去追究,spring源码也一直没时间去细看。不知道您是否遇到过,香港服务器,能否详细的说明一下这个事情的原因?如果没遇到过,您也可以对这个接口说一下您自己的看法,谢谢。建议你将对外网操作这些逻辑和数据库访问逻辑分开来,对外网的操作较重,可以放到一个异步操作中去做,网站空间,不要和数据库访问放在一起,这样可以降低对数据库连接占用的时间,提高并发性。Q:老师你好:在用SPRING管理数据库数据源时一般都会显示用户名和密码等敏感信息,用sping来加载数据源,如何保障安全性的问题?A:这个问题很好,说明你对Spring的应用已经比较深了。可以覆盖PropertyPlaceholderConfigurer类的以下几个方法:1) void convertProperties(Properties props):属性文件中的所有属性值都封装在props中,覆盖此方法,可以对所有的属性值进行转换处理。2)String convertProperty(String propertyName, String propertyValue):在加载属性文件并读取文件中的每个属性时,都会调用此方法进行转换处理。3)String convertPropertyValue(String originalValue):和上一个方法类似,只不过没有传入属性名。Q:陈老师您好,我用SSH开发了两个企业门户系统,开发起来很容易,可正式上线后,就感觉系统速度不够流畅了,而且越运行就会越慢,人家服务商那边说我们的系统老是把他们的服务器内存跑爆掉,真不知道是什么原因引起的,不知Spring有没有什么好的解决方案? A:如果是互联网的项目,不在建议使用Hibernate,因为Hibernate对缓存的管理层面比较高,不方便做经细化的缓存管理。我现在的项目也是互联网项目,我是采用Spring MVC+Spring +myBatis+memcached+freemaker.Spring本身是不会耗资源的,阿里巴巴就是使用Spring的。

一旦有了意志,脚步也会轻松起来。

【244期门诊集锦】入木三分、鞭辟入里掌握Spring

相关文章:

你感兴趣的文章:

标签云: