本文通过一个实例讲解spring开发过程中的一些特性。
1.通过一个refactoring的过程来体会使用spring的组件化和依赖注入的特性。
2.一个简单的web mvc demo。
1.问题是从hello world开始的。
一个简单的hello world程序:
将上面的类重构成下面的两个类:
IMessageDisplayer:
IMessageSupplier:
MessageDisplayer:
MessageSupplier:
客户程序如下:
但是上面中依旧存在的问题是主程序需要依赖具体类的实现(主要问题是new MessageSupplier())。解耦的方法是使用一个factory方法来实现对象的产生。实现代码如下:
msgbean.properties :
客户程序如下:
通过上面的几步重构的话,客户端的程序基本上和实现类实现了解耦。但是上面种存在的问题是实现起来较为的复杂,如果改用spring框架来实现,大大简化上面的步骤.
applicationContext.xml :
客户端程序:
继续重构 上面的程序,上面的程序现在存在的问题主要是下面的这句:
这句的主要问题是在代码中直接将两个类的依赖关系写入。改进的办法是使用spring的“依赖注入”机制。实现如下:
applicationContext.xml:
客户端程序:
2. 一个简单spring web mvc demo。
网站的目录结构:
web.xml :
HelloWorldController.java :
helloworld-servlet.xml :
test.jsp :
可以使用下面的连接来访问:http://xuqiang-pc:8080/spring/helloworld/test。