学习笔记:spring+mybatis连接数据库操作步骤

使用idea开发工具,maven项目,配置maven的路径:

一,配置pom.xml文件,导入所需要的包

xml version="1.0" encoding="UTF-8"?>
xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    4.0.0

    com.bdqn
    stringmybatisdemo
    1.0-SNAPSHOT
    
        
            junit
            junit
            4.10
        
        
            commons-logging
            commons-logging
            1.2
        
        
            org.springframework
            spring-context
            3.2.13.RELEASE
        
        
            org.springframework
            spring-beans
            3.2.13.RELEASE
        
        
            org.springframework
            spring-core
            3.2.13.RELEASE
        
        
            org.springframework
            spring-jdbc
            3.2.13.RELEASE
        
        
            mysql
            mysql-connector-java
            5.1.21
        
        
            org.mybatis
            mybatis
            3.2.2
        
        
            org.mybatis
            mybatis-spring
            1.2.0
        
        
            log4j
            log4j
            1.2.12
        
        
            commons-dbcp
            commons-dbcp
            1.4
        
        
            commons-pool
            commons-pool
            1.6
        


    

    
        
            
                src/main/java
                
                    **/*.xml
                
            
        
    



二,先在cn.bdqn.entity包中创建一个实体类Tuser,并封装。

public class Tuser {
    private Integer id;
    private String userName,password,nickName;

    @Override
    public String toString() {
        return "Tuser{" +
                "id=" + id +
                ", userName='" + userName + '\'' +
                ", password='" + password + '\'' +
                ", nickName='" + nickName + '\'' +
                '}';
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }
}

三,在cn.bdqn.dao中创建一个接口TuserMapper,在其中写一个查询所有用户信息的方法:

public interface TuserMapper {
    List queryAllTuser();
}

在cn.bdqn.dao中创建一个与接口同名的mapper映射文件,配置实体和数据库的映射,然后定义SQL语句:

xml version="1.0" encoding="UTF-8" ?>
mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

namespace="cn.bdqn.dao.TuserMapper">
    id="TuserMap" type="Tuser">
        property="id" column="id"/>
        property="userName" column="user_name"/>
        property="password" column="password"/>
        property="nickName" column="nick_name"/>
    

    

在cn.bdqn.dao中创建接口的实现类。SqlSessionTemplate实现了SqlSession接口,也就是说可以通过SqlSessionTemplate来实现对数据库的操作,而且SqlSessionTemplate是线程安全的,可以被多个到共享使用。

public class TuserMapperImpl implements TuserMapper {
    //SqlSessionTemplate相当于SqlSession
    private SqlSessionTemplate sqlSessionTemplate;

    public SqlSessionTemplate getSqlSessionTemplate() {
        return sqlSessionTemplate;
    }

    public void setSqlSessionTemplate(SqlSessionTemplate sqlSessionTemplate) {
        this.sqlSessionTemplate = sqlSessionTemplate;
    }

    @Override
    public List queryAllTuser() {
        List list = new ArrayList<>();
        list = sqlSessionTemplate.selectList("cn.bdqn.dao.TuserMapper.queryAllTuser");
        return list;
    }
}

四,在cn.bdqn.service中创建TuserService接口;与TuserMapper对应

public interface TuserService {
    List queryAllTuser();
}

创建TuserService接口的实现类

@Service("tuserService")
public class TuserServiceImpl implements TuserService {
    @Autowired
    private TuserMapper tuserMapper;

    @Override
    public List queryAllTuser() {
        return tuserMapper.queryAllTuser();
    }
}

五,在resources创建mybatis文件

xml version="1.0" encoding="UTF-8"?>
configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">

    
    
        name="logImpl" value="LOG4J"/>
    
    
    
        name="cn.bdqn.entity"/>
    

六,在resources创建applicationContext.xml配置文件

xml version="1.0" encoding="UTF-8"?>
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.xsd 
       http://www.springframework.org/schema/context 
       http://www.springframework.org/schema/context/spring-context.xsd">

    
    <context:property-placeholder location="classpath:database.properties">context:property-placeholder>
    id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
        name="driverClassName" value="${jdbc.driver}">
        name="url" value="${jdbc.url}"/>
        name="username" value="${jdbc.username}">
        name="password" value="${jdbc.password}"/>
    
    
    id="sqlSessionFactoryBean" class="org.mybatis.spring.SqlSessionFactoryBean">
        name="dataSource" ref="dataSource">
        name="configLocation" value="classpath:mybatis-config.xml">
        name="mapperLocations">
            
                classpath*:cn/bdqn/dao/*.xml
            
        
    

    
    <context:component-scan base-package="cn.bdqn.service">context:component-scan>

    
    class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        name="basePackage" value="cn.bdqn.dao">
    

七,编写测试类

public class test {

    @Test
    public void queryAllTUser() throws Exception {
        ApplicationContext applicationContext
                =new ClassPathXmlApplicationContext
                ("applicationContext.xml");
        TuserService tuserService
                =(TuserServiceImpl)applicationContext.getBean("tuserService");
        List list=tuserService.queryAllTuser();
        if (null != list) {
            for (Tuser tUser : list) {
                System.out.println(tUser);
            }
        }
    }
}

你可能感兴趣的:(学习笔记:spring+mybatis连接数据库操作步骤)