Spring是当前比较流行的基于Java语言的MVC框架,所谓框架也就是它已经实现好了诸多东西,使java开发人员能把精力尽量放在业务逻辑上.
Spring技术的特点是IOC, 即反向注入,主要应用的是XML技术和POJO(简单Java对象),Spring要达到的目的其实很简单,就是尽量简化原来Java中的地层数据访问的问题,众所周知,传统的使用Java访问地层数据库的方法是使用JDBC,如下的代码:
try{
}catch(SQLException e){
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");/以MS SQL SERVER为例
Connection conn=DriverManager.getConnection(connurl,username,password);
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery(sql);
//实现业务逻辑的代码
System.out.println("产生异常:"+e);
}
可以看到为了访问数据库,我们需要这么多多余的模式的代码,而且又要抛出不同的异常,代码可维护性比较差,而且不利于开发人员把精力投放到最终的业务逻辑上.上边的功能如果选择使用Spring实现,那就变得的非常简单了:
<bean id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="url" value="${database.url}"></property>
<property name="driverClassName" value="${database.driver}"></property>
<property name="username" value="${database.user}"></property>
<property name="password" value="${database.password}"></property>
</bean>
我们只需要培植上文的XML文件,然后在真正使用数据库时,用
ApplicationContext ctx=new FileSystemXmlApplicationContext("beans.xml");
DriverManagerDataSource ds=(DriverManagerDataSource)ctx.getBean("datasource");
两条语句完成数据源的获得,这就简化掉了相当多的模式代码,让我们更加关心业务逻辑的实现了~