一,添加Jar包
Spring | MyBatis | 其它 |
---|---|---|
spring-beans-3.2.4.RELEASE.jar | mybatis-3.1.1.jar | mysql-connector-java-5.0.4-bin.jar |
spring-core-3.2.4.RELEASE.jar | log4j-1.2.16.jar | commons-dbcp-1.4.jar |
spring-expression-3.2.4.RELEASE.jar | asm-3.3.1.jar | commons-pool-1.6.jar |
commons-logging-1.1.1.jar | cglib-2.2.2.jar | |
spring-aop-3.2.4.RELEASE.jar | mybatis-spring-1.2.1.jar | |
spring-jdbc-3.2.4.RELEASE.jar | ||
spring-tx-3.2.4.RELEASE.jar | ||
spring-context-3.2.4.RELEASE.jar |
Jar包的下载地址:http://download.csdn.net/detail/qq_24082497/9633919
二,实战
1, 数据库表
CREATE TABLE user(
id INT PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(20),
age INT);
)
2, 实体类: User
public class User implements Serializable{
private int id;
private String name;
private int age;
//set,get方法
}
3, DAO接口: UserDao
public interface UserDao {
//一.增加
public void addUser(User user);
}
4., DAO接口: UserImpl.java
public class UserDaoImpl implements UserDao {
private SqlSession session;
public UserDaoImpl() {
}
public SqlSession getSession() {
return session;
}
public void setSession(SqlSession session) {
this.session = session;
}
@Override
public void addUser(User user) {
String statement = "com.po.userMapper.addUser";
int count = session.insert(statement, user);
if (count >= 1) {
System.out.println("添加成功!");
} else {
System.out.println("添加失败");
}
// session.commit();
}
}
5, userMapper.xml的配置
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.po.userMapper">
<insert id="addUser" parameterType="User">
insert into user
values(null,#{name},#{age});
</insert>
</mapper>
6, db.properties
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis
username=root
password=root
maxActive=20
maxIdle=10
maxWait=-1
7, mybatis的配置文件: conf.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>
<settings>
<setting name="mapUnderscoreToCamelCase" value="true"/>
<!--打开延迟加载的开关 -->
<setting name="lazyLoadingEnabled" value="true"/>
<!--将积极加载改为消极加载及按需加载 -->
<setting name="aggressiveLazyLoading" value="false"/>
</settings>
<typeAliases>
<!-- <typeAlias type="com.po.User" alias="_User"/> -->
<package name="com.po"/>
</typeAliases>
<mappers>
<mapper resource="com/po/userMapper.xml"/>
</mappers>
</configuration>
8, applicationContext的配置
<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-2.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
">
<context:property-placeholder location="db.properties" />
<!--创建jdbc数据源 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="${driver}" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
<property name="maxActive" value="${maxActive}" />
<property name="maxIdle" value="${maxIdle}" />
<property name="maxWait" value="${maxWait}" />
</bean>
<!-- 创建SqlSessionFactory,同时指定数据源 -->
<!-- SqlSessionFactoryBean相当于SqlSessionFactoryBuilder-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!-- 指定mybtis总配置文件,订制的environment在spring容器中不在生效 -->
<property name="configLocation" value="classpath:conf.xml" />
</bean>
<!--SqlSessionTemplate 是对SqlSession接口的一个实现 以前使用纯mybatis时
使用的是DefaultSqlSession这个类
-->
<bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg index=”0” ref="sqlSessionFactory" />
</bean>
<bean id="userDaoImpl" class="com.dao.impl.UserDaoImpl">
<property name="session" ref="sqlSession"/>
</bean>
</beans>
注意:xml中需要导入context的头文件:
xmlns:context=”http://www.springframework.org/schema/context”
http://www.springframework.org/schema/context