Ibatis:基于java的持久层框架。笼统的说是跟数据库打交道,完成持久层的操作。
首先建一个配置文件<SqlMapConfig>,用来连接数据库,里面有数据库的事物的管理,事物管理中包含数据源的类型、加载数据库的驱动、url、密码和帐号,接着加载<SqlMap>的路径。<SqlMap>配置文件是用来处理sql语句的,每个语句里有id,传值类型,返回参数类型。
在测试类中我们用SqlMapClientBuilder.buildSqlMapClient.queryForList("id的值","传的参数");来与持久层交互。
Spring:讲到spring,我们打个比方,其实spring就像是我们是主人,你有个仆人,每次做什么你只要开口要什么仆人就给你送来了你要的。这里spring的IOC就相当与你的仆人,你只要告诉他你要做什么他就去帮你办,同事这里你要做的事转向了你的仆人去做这就是控制反转。在搭Spring框架的时候我们要先建个spring的配置文件,在配置文件中我们要建<bean>,<bean>可以建多个,其中里面有id和关联此id的实现类的路径。在这里spring的配置文件是容器,相当是仆人,他来处理你要做的事。而实现类相当是你要做的事,由容器去关联。最终在测试方法中你可以通过加载spring配置文件来得到(getBean()方法)你要做的事情。
Hessian:hessian他是服务器间交互的工具,在交互中,服务端要对外提供一地址和接口。那么服务端是怎么样来通过这个地址把要传的东西送过去的?所以这里Hessian就要求远程服务通过servlet暴露你的实现类(Hessian通过Servlet提供远程服务)。在web.xml配置文件,有<servlet>,其中包括远程服务需要HessianServlet来暴露。同事把它设置成随应用启动而启动。接着配置要暴露的实现类,最后配置url映射上面配置的servlet(通过此地址来把暴露出来的实现类发送出去)。在客户端我们可以通过HessianProxyFactory工具类来调用服务端的实现类。
Spring+Hessian:当我们纯粹用hessian的时候我们是通过servlet来暴露的,这里spring的DispatcherServlet可以完成该功能,他将匹配模式的请求转发到Hessian(通过强制指定Spring配置路径来将Spring内关联的类通过监听器来拦截此类发给hessian)。他能拦截所有的远程服务请求,同时必须将其配制成启动即加载的模式。这里Spring配置文件中首先配置普通的bean接着配置一个特殊的bean。这个特殊的bean他是通过HessianServiceExporter将普通的bean导成Hessian服务的(然后DispatcherServlet起到了作用,他就拦截所以hessian服务)。所以要注意客户端要的url地址是由web.xml中url和这里的<bean>的name的值一起组合而成的。
在客户端跟单纯的hessian一样,通过定义接口和用url来获取服务端的东西。