mysql中建表
CREATE DATABASE ssm;
USE ssm;
CREATE TABLE account(
id INT PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(20),
money DOUBLE
);
1. AccountDao 接口(dao目录下)
给AccountDao接口加上注解完成sql语句
public interface AccountDao {
// 查询所有账户
@Select("select * from account")
public List<Account> findAll();
// 保存帐户信息
@Insert("insert into account (name,money) values (#{name}%,#{money}%)")
public void saveAccount(Account account);
}
2. SqlMapConfig.xml
在 resources 目录下创建 SqlMapConfig.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>
<!--配置环境-->
<environments default="mysql">
<environment id="mysql">
<transactionManager type="JDBC"></transactionManager>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url"
value="jdbc:mysql://172.20.10.13:3306/ssm?useSSL=false&useUnicode=true&characterEncoding=UTF-8"/>
<property name="username" value="root"/>
<property name="password" value="11250825"/>
</dataSource>
</environment>
</environments>
<!--引入映射配置文件-->
<mappers>
<!--resource的格式如下,所以这里不能用resource-->
<!--<mapper resource="cn/itcast/dao/xxx.xml"></mapper>-->
<!--可以用class如下所示,但这样引入新的UserDao需要重新添加,比较麻烦-->
<!--<mapper class="cn.itcast.dao.AccountDao"></mapper>-->
<!--<mapper class="cn.itcast.dao.UserDao"></mapper>-->
<package name="cn.itcast.dao"/>
</mappers>
</configuration>
3. TestMybatis(test目录下)
public class TestMybatis {
//测试查询
@Test
public void run1() throws Exception {
//加载mybatis的配置文件
InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
//创建SqlSessionFactory对象
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
//创建SqlSession对象
SqlSession session = factory.openSession();
//获取代理对象
AccountDao dao = session.getMapper(AccountDao.class);
//查询所有数据
List<Account> list = dao.findAll();
for (Account account : list) {
System.out.println(account);
}
//关闭资源
session.close();
in.close();
}
//测试保存
@Test
public void run2() throws Exception {
//加载mybatis的配置文件
InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
//创建SqlSessionFactory对象
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
//创建SqlSession对象
SqlSession session = factory.openSession();
//获取代理对象
AccountDao dao = session.getMapper(AccountDao.class);
//保存数据
Account account = new Account();
account.setName("熊大");
account.setMoney(400d);
//保存
dao.saveAccount(account);
//提交事务
session.commit();
//关闭资源
session.close();
in.close();
}
}