举个例子
Role role -=(Role)SqlSesion.selectone("com.Dao.RoleMapper.getRole",1);
selectone表示查询只返回一个对象,参数是一个String对象 和一个object对象1
Sting对象定义了一条sql,mybatis 会找到相对应的sql
Role role -=(Role)SqlSesion.selectone("getRole",1);
如果mybatis中有id是getrole的也可以简写
这是mybatis 的前身ibatis留下的方式
用Mapper接口发送sql
Rolemapper rolemapper =sqlSession.getmapper(Rolemapper.clss);
Role role=rolemapper.getrole();
mpapper接口可以擦除sqlsession带来的功能性代码,提高可读性
以下是Spring采用接口编程的配置方式
<!-- 注册 jdbc.properties方法 2 :context方式注册 -->
<context:property-placeholder location="classpath:jdbc.properties"/>
<!-- 第二步 注册 dataSource 用来 进行 数据库连接 的 数据 -->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass" value="${driver}"></property>
<property name="jdbcUrl" value="${url}"></property>
<property name="user" value="${user}"></property> <!-- 此处的 value 值在使用 上面 第二种 jdb.properties 文件加载方式的情况下必须为 user -->
<property name="password" value="${password}"></property>
</bean>
<bean id="SqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!-- 数据源的获取 -->
<property name="dataSource" ref="dataSource"></property>
<property name="mapperLocations" value="classpath:com/Dao/xml/*.xml"></property>
<!--<property name="ConfigLocation" value="classpath:mybatis-config.xml" > </property> -->
</bean>
<!-- 事务管理器配置数据源事物 使用注解的方式-->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<!-- 使用注解定义事物 -->
<tx:annotation-driven transaction-manager="transactionManager" />
<!-- 指定扫描接口的哪个包 采用自动扫描方式创建Mapper bean 多个mapper接口的配置-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.Dao"/>
<!-- 定义 SqlSessionFactory bean名称 不写的话 mybatis会自动定义规则为类的得一个字母小写-->
<!-- <property name="SqlSessionFactory" value="org.apache.ibatis.session.SqlSessionFactory;" ></property> -->
<property name="annotationClass" value=" org.springframework.stereotype.Repository" ></property>
</bean>