zoukankan      html  css  js  c++  java
  • mybatis 使用

    建立 dao  entity mybatis 三个包

    dao 包中主要建立的是 实体类的接口

    entity包中建立的是实体类(这里不对实体类进行实现)

    mybatis中建立的是实体类接口的实现

    2.下边分别看几个文件的具体内容

      实体类

    package org.checkin.entity;
    
    public class User {
        
        private  String userName;
        private  String password;
        
        public String GetUserName()
        {
            return this.userName;
        }
        
        public String GetPassword()
        {
            return this.password;
        }
        
        public void SetUserName(String newValue)
        {
            this.userName=newValue;
            
        }
        public void SetPassord(String newValue)
        {
           this.password=newValue;
        }
        
        
        
        
    
    }

     实体类的接口

    package org.checkin.dao;
    import org.checkin.entity.User;
    /**
     * @author Administrator
     *
     */
    
    public interface UserMapper {
        
     /**
     * @param Id
     * @return
     */
    public User GetUserById(String Id);
    }

    实体类接口的实现

    <?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">  
        <!--这块等于dao接口的实现  namespace必须和接口的类路径一样-->  
    <mapper namespace="org.checkin.dao.UserMapper">  
        <!-- findById必须和接口中的方法名一样  返回一个User  就是刚才的别名  如果不弄别名要连类路径一起写 麻烦-->  
        <select id="GetUserById" parameterType="string" resultType="User">  
            select name as userName, ClassId as password from test.stu where id=#{id} 
        </select>
    </mapper>  

    连接数据库 configuration.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>  
    <typeAliases>
    <package name="org.checkin.entity"/>
    </typeAliases>
        <environments default="development">  
            <environment id="development">  
                <transactionManager type="JDBC" />  
                <dataSource type="POOLED">  
                    <property name="driver" value="com.mysql.jdbc.Driver" />  
                    <property name="url" value="jdbc:mysql://localhost:3306/test?userUnicode=true&amp;characterEncoding=utf8" />  
                    <property name="username" value="root" />  
                    <property name="password" value="root" />  
                </dataSource>  
            </environment>  
        </environments>     
    
          
        <mappers>  
            <mapper resource="org/checkin/mybatis/UserMapper.xml" /> 
            
        </mappers>  
          
    </configuration>   

    数据库

    package org.checkin.dao;
    
    import java.io.IOException;
    
    import org.apache.ibatis.io.Resources;
    import org.apache.ibatis.session.SqlSessionFactory;
    import org.apache.ibatis.session.SqlSessionFactoryBuilder;
    
    public class DataBaseCon {
        public static SqlSessionFactory getSessionFactory() {  
            SqlSessionFactory sessionFactory = null;  
            String resource = "configuration.xml";  
            try {  
                sessionFactory = new SqlSessionFactoryBuilder().build(Resources  
                        .getResourceAsReader(resource));  
            } catch (IOException e) {  
                // TODO Auto-generated catch block  
                e.printStackTrace();  
            }  
            return sessionFactory;  
        }  
    }

    test.java

    import org.apache.ibatis.session.SqlSession;
    import org.checkin.dao.DataBaseCon;
    import org.checkin.dao.UserMapper;
    import org.checkin.entity.User;
    
    
    public class Test {
    
        @org.junit.Test
        public void test() {
            SqlSession sqlSession = DataBaseCon.getSessionFactory().openSession();  
            UserMapper userMapper = sqlSession.getMapper(UserMapper.class);  
            User user = userMapper.GetUserById("1");  
            System.out.println(user.GetUserName());  
        }
        
        
    
    }

    数据库表

  • 相关阅读:
    C# 操作配置文件
    C# Excel操作类
    没有找到 mspdb100.dll 的解决办法
    工厂方法模式
    .Net互操作2
    The certificate used to sign “AppName” has either expired or has been revoked. An updated certificate is required to sign and install the application解决
    手机抓包xcode自带命令行工具配合wireshark实现
    expecting SSH2_MSG_KEX_ECDH_REPLY ssh_dispatch_run_fatal问题解决
    使用ssh-keygen设置ssh无密码登录
    远程复制文件到服务器
  • 原文地址:https://www.cnblogs.com/hbhzz/p/3518174.html
Copyright © 2011-2022 走看看