整合 mybatis3.x 和spring3.x
带着纠结和郁闷终于把spring3.x和mybatis3.x的整合给配成功了!
乱七八糟的文档,和乱七八糟的demo,刚开始发现 官方sping 和 mybatis ? 两个没有与spring ?和hibernate ?的文档那么详细,去看sping的文档 ,NND 的还是 ibatis 的 。艹。
?
下面把 demo ?列出来:
先把类 弄出来:
package model; ?
public class User {
private int id;
private String name;private String password;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}}
?
package model.mapper;
public interface UserMapper {
public User selectOne(int id);}
?
把测试的类也先弄出来:
@Testpublic void testSuccess() {ApplicationContext ac = new ClassPathXmlApplicationContext(new String[]{"classpath*:resource/spring.xml"});UserMapper u = (UserMapper)ac.getBean("userMapper");User user = u.selectOne(3);System.out.println(user.getName());}?
?
以上三个类相信没啥问题。 ?下篇文章,会对几个类进行详细的分析,这就不多介绍了。
?
下面是配置文件
sping.xml
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"><beanvalue="${jdbc.driverClassName}" /><property name="jdbcUrl" value="${jdbc.url}" /><property name="user" value="${jdbc.username}" /><property name="password" value="${jdbc.password}" /></bean><bean id="sqlSessionFactory" /><property name="dataSource" ref="dataSource" /></bean><bean id="userMapper" ref="sqlSessionFactory" /><property name="mapperInterface" value="?model.mapper.UserMapper" /></bean></beans>?
这里有个 ?jdbc.properties 配置 建议去看sping 的文档 3.4 小节, 很简单哈 。
?
mybatis-config.xml :
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration><mappers> <mapper resource="model/mapper/User.xml"/> </mappers> </configuration>
?User.xml:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN" "http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd"><mapper namespace="model.mapper.UserMapper"><resultMap type="User" id="getUser"><result property="id" column="id" /><result property="name" column="username" /><result property="password" column="password" /></resultMap><select id="selectOne" parameterType="Integer"resultMap="getUser">select * from user where id = #{id} </select></mapper>
?
差不多了,大概就这些 ?。
架包乱七八糟的加了一通 , sping 3.X 下面的 ?差不多 都给 弄进来 呵呵 , 刚开始就没管那么多了,先把程序弄起来再说吧。看附件图片哈
?
上面demo 整理 过程 ?不是很规范 。 应该有点问题。
?
感觉 ?两者还是这么着没啥 特别的地方,sping 基本的 了解哈 , 不难理解。
?
?
?
?
?
?