zoukankan      html  css  js  c++  java
  • 原始DAO开发

    1,pojo

    package com.songyan.dao;
    
    import com.songyan.pojo.Student;
    
    public interface StudentDao {
        public void insertStudent(Student student);
        public void deleteStudent(String id);
        public void updateStudent(Student student);
        public Student selectStudent(Integer id);
    }
    package com.songyan.dao;
    
    import org.apache.ibatis.session.SqlSession;
    import org.apache.ibatis.session.SqlSessionFactory;
    
    import com.songyan.pojo.Student;
    
    public class StudentDaoImpl implements StudentDao{
        private SqlSessionFactory sqlSessionFactory;
        
        
    
        public StudentDaoImpl(SqlSessionFactory sqlSessionFactory) {
            super();
            this.sqlSessionFactory = sqlSessionFactory;
        }
    
        public void insertStudent(Student student) {
            
        }
    
        public void deleteStudent(String id) {
            
        }
    
        public void updateStudent(Student student) {
            
        }
    
        public Student selectStudent(Integer id) {
            SqlSession session=sqlSessionFactory.openSession();
            Student student=session.selectOne("test.findStudentById",10);
            return student;
        }
        
    
    }

    2,mapper

    <?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="test">
        <select id="findStudentById" parameterType="Integer"
            resultType="com.songyan.pojo.Student">
            select * from student where STU_ID= #{value}
        </select>
    </mapper>

    3,核心配置

    <?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>
    
        <!--配置环境,默认的环境id为oracle -->
        <environments default="oracle">
            <!-- 配置环境为oracle的环境 -->
            <environment id="oracle">
                <!--使用JDBC的事务处理 -->
                <transactionManager type="JDBC" />
                <!--数据库连接池 -->
                <dataSource type="POOLED">
                    <property name="driver" value="oracle.jdbc.driver.OracleDriver"></property>
                    <property name="url" value="jdbc:oracle:thin:@localhost:1521:inspur"></property>
                    <property name="username" value="scott"></property>
                    <property name="password" value="tiger"></property>
                </dataSource>
            </environment>
        </environments>
        <!--配置mapper的位置 -->
        <mappers>
            <mapper resource="com/songyan/dao/test.xml" />
            
        </mappers>
    </configuration>

    4,测试

    package com.songyan.client;
    
    import java.io.IOException;
    import java.io.InputStream;
    
    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 com.songyan.dao.StudentDao;
    import com.songyan.dao.StudentDaoImpl;
    import com.songyan.pojo.Student;
    
    public class Test1 {
        SqlSessionFactory sqlSessionFactory;
        
        @Before
        public void test1() throws IOException
        {
            String resource="applicationContext.xml";
            InputStream in=Resources.getResourceAsStream(resource);
            sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
        }
        
        @Test
        public void test()
        {
            StudentDao studentDao=new StudentDaoImpl(sqlSessionFactory);
            Student student=studentDao.selectStudent(1);
            System.out.println(student);
        }
    }

     

  • 相关阅读:
    [python] pprika:基于werkzeug编写的web框架(6) ——restful的错误处理
    [python] pprika:基于werkzeug编写的web框架(5) ——蓝图blueprint
    [python] pprika:基于werkzeug编写的web框架(4) ——请求上下文与helpers
    [python] pprika:基于werkzeug编写的web框架(3) ——错误处理
    [python] pprika:基于werkzeug编写的web框架(2) ——路由与请求响应
    [python] pprika:基于werkzeug编写的web框架(1) ——序言与简介
    2019寒假训练营第四次作业
    2019寒假训练营第三次作业
    【学习笔记】福州大学网络课程 网络空间安全概论(5)
    【学习笔记】福州大学网络课程 网络空间安全概论(1,4)
  • 原文地址:https://www.cnblogs.com/excellencesy/p/9138999.html
Copyright © 2011-2022 走看看