zoukankan      html  css  js  c++  java
  • 我的第一个MyBatis

    (1)步骤:1.新建实体类对象---根据数据库字段来设计,有多少字段设多少变量,变量名要字段名一致。

            2.新建配置文件config.xml---主要用来获取数据源,里面内容大致需要填写:数据库驱动名、数据库地址名、数据库登录名、数据库登录密码。

         3.新建映射文件Mapper.xml---数据库的增、删、改、查都是在这里书写。

         4.编写Java主程序进行测试查询结果。

    (2)

    1.数据库表Person的字段和数据

    2.根据数据库表单新建实体类对象

    package entity;
    
    public class Person {
        private int id;
        private String name;
         private int age;
        public int getId() {
            return id;
        }
        public void setId(int id) {
            this.id = id;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public int getAge() {
            return age;
        }
        public void setAge(int age) {
            this.age = age;
        }
        
        @Override
        public String toString() {
            return this.name+","+this.age+","+this.id;
        }
     
    }

    3..新建配置文件config.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="development">   
      <environment id="development">     
       <transactionManager type="JDBC"/>    
         <dataSource type="POOLED">       
                 <property name="driver" value="oracle.jdbc.OracleDriver"/>       
                   <property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"/>   
           <!-- <property name="url" value="jdbc:mysql://localhost:3306/MyBatis?useUnicode=true&amp;characterEncoding=utf8"/>            -->
                    <property name="username" value="system"/>       
                 <property name="password" value="Qq122820"/>      
         </dataSource>   
             </environment> 
             </environments>  
               <mappers>    
                   <mapper resource="entity/personMapper.xml"/>  
               </mappers> 
     </configuration>

    4.新建映射文件Mapper.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="entity.personMapper"> 
         <select id="selectBlog" resultType="entity.Person" parameterType="int">   
              select * from Person where id=#{id} 
       </select>
       
      </mapper>

     5.编写Java主程序进行测试查询结果。

    package entity;
    
    import java.io.IOException;
    import java.io.Reader;
    
    import org.apache.ibatis.io.Resources;
    import org.apache.ibatis.session.SqlSession;
    import org.apache.ibatis.session.SqlSessionFactory;
    import org.apache.ibatis.session.SqlSessionFactoryBuilder;
    
    public class starts {
    
        public static void main(String[] args) throws IOException {
            //加载Mybatis配置文件(为了访问数据库)
            Reader reader = Resources.getResourceAsReader("entity/config.xml");//配置文件所在路径
            //通过 SqlSessionFactory的SqlSessionFactoryBuilder()对象产生sessionFactory,产生后的sessionFactory打开session
            SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
            SqlSession session = sessionFactory.openSession();
            //获取 namespace + id,执行映射文件里的哪个sql语句;
            String statement = "entity.personMapper.selectBlog";
            Person person = session.selectOne(statement,1);//传递参数1,查询id=1的数据
            System.out.println(person);
            //关闭session
            session.close();
        }
    
    }

    6.查询结果

    7.所遇到的问题/解决方法

    (1)问题

     (2)解决方法

    原来是映射文件Mapper.xml中namespace="entity.personMapper.xml"搞错了,不能加后缀,要改成namespace="entity.personMapper"

    8.总结

    映射文件中一般引入路径问题都不加后缀;

    主程序/配置文件引入路径问题需要加后缀。

  • 相关阅读:
    去掉FALSH背景的代码
    问一个比较傻瓜的问题关于 this.TextBox1.Visible = true;
    网页防止复制 下载 另存为的JS
    [转] left join/right join/inner join操作演示
    VS2003新起项目步骤
    我专严新闻小偷之心得与大家交流
    ACCESS数据库里SQL语句的3个表联合,和SQL有很大差别
    vs2005常用快捷键
    NoSql中的CAP分类【转载】
    epoll用法【整理】
  • 原文地址:https://www.cnblogs.com/ibear/p/10776922.html
Copyright © 2011-2022 走看看