目录
一、连接数据库配置文件
为了防止硬编码的问题使用配置文件的方式连接数据库
properties配置文件
建议加上jdbc.防止词条冲突
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/db_555?characterEncoding=utf-8
jdbc.username=root
jdbc.password=123456
SqlMapConfig.xml主配置文件中写入以下代码
<environments default="development">
<environment id="development">
<!-- 使用jdbc事务管理-->
<transactionManager type="JDBC" />
<!-- 数据库连接池-->
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</dataSource>
</environment>
</environments>
二、类别名
使用类别名是为了简化SQL语句中的表名和字段名的使用。通过设置类别名,可以直接在SQL语句中使用类名来代替表名,使用类的属性名来代替字段名。
SqlMapConfig.xml主配置文件中写入以下代码
<typeAliases>
<typeAlias type="com.ba.domain.User" alias="User"></typeAlias>
</typeAliases>
测试方法
<!--查询所有用户-->
<select id="findUser" resultType="User">
select * from user;
</select>
测试类
package com.ba.test;
import com.ba.domain.Student;
import com.ba.domain.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Before;
import org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
public class TestDemo {
SqlSessionFactory ssf = null;
@Before
public void creatFactory(){
try {
InputStream input = Resources.getResourceAsStream("SqlMapConfig.xml");
ssf = new SqlSessionFactoryBuilder().build(input);
} catch (IOException e) {
e.printStackTrace();
}
}
@Test
public void test(){
SqlSession sqlSession = ssf.openSession();
//查询全部用户
List<User> users = sqlSession.selectList("test.findUser");
for (User user : users) {
System.out.println(user);
}
}
}