简单的MyBatis使用DEMO。

简单的MyBatis使用DEMO。

1)整体结构

简单的MyBatis使用DEMO。_第1张图片

2)maven依赖

简单的MyBatis使用DEMO。_第2张图片

3)数据准备
4)配置文件

简单的MyBatis使用DEMO。_第3张图片简单的MyBatis使用DEMO。_第4张图片

5)代码详解

简单的MyBatis使用DEMO。_第5张图片简单的MyBatis使用DEMO。_第6张图片简单的MyBatis使用DEMO。_第7张图片
package com.my.mybatis;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
public class TestMyBatis {
static SqlSessionFactory sqlSessionFactory = null;
static {
sqlSessionFactory = MyBatisUtil.getSqlSessionFactory();
}
public static void main(String[] args) {
testAdd();
getUser();
getUserMap();
getUserMap1();
getUserCount();
}
public static void testAdd() {
SqlSession sqlSession = sqlSessionFactory.openSession();
try {
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
User user = new User("lisi", new Integer(25));
userMapper.insertUser(user);
sqlSession.commit();// 这里一定要提交,不然数据进不去数据库中
} finally {
sqlSession.close();
}
}
public static void getUser() {
SqlSession sqlSession = sqlSessionFactory.openSession();
try {
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
User user = userMapper.getUser("zhanjindong1");
System.out.println("name: " + user.getName() + "|age: "
+ user.getAge());
} finally {
sqlSession.close();
}
}
public static void getUserMap() {
SqlSession sqlSession = sqlSessionFactory.openSession();
try {
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
List> userMap = userMapper.getUserMap("lisi");
System.out.println("userMap: " + userMap);
} finally {
sqlSession.close();
}
}
public static void getUserMap1() {
SqlSession sqlSession = sqlSessionFactory.openSession();
try {
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
List> userMap = userMapper.getUserMap1("lisi");
System.out.println("userMap1: " + userMap);
} finally {
sqlSession.close();
}
}
public static void getUserCount() {
SqlSession sqlSession = sqlSessionFactory.openSession();
try {
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
int userCount = userMapper.getUserCount("zhangsan");
System.out.println("userCount: " + userCount);
} finally {
sqlSession.close();
}
}
}

运行结果:
Fri Apr 14 08:38:04 CST 2017 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
name: zhanjindong1|age: 18
userMap: [{name=lisi, id=5, age=25}, {name=lisi, id=6, age=25}, {name=lisi, id=7, age=25}, {name=lisi, id=8, age=25}, {name=lisi, id=9, age=25}, {name=lisi, id=10, age=25}, {name=lisi, id=11, age=25}, {name=lisi, id=12, age=25}, {name=lisi, id=13, age=25}, {name=lisi, id=14, age=25}, {name=lisi, id=15, age=25}, {name=lisi, age=25}, {name=lisi, age=25}]
userMap1: [com.my.mybatis.Account@756e4d, com.my.mybatis.Account@e2abd, com.my.mybatis.Account@eff760, com.my.mybatis.Account@2f32ff, com.my.mybatis.Account@13f2bb1, com.my.mybatis.Account@e9a829, com.my.mybatis.Account@18a00e3, com.my.mybatis.Account@8b7f67, com.my.mybatis.Account@c7a4e4, com.my.mybatis.Account@178f375, com.my.mybatis.Account@c87b21, com.my.mybatis.Account@1375618, com.my.mybatis.Account@10399e]
userCount: 2

附上全套源码:

1)package com.my.mybatis;
public class Account {
private int id;
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}

}
2)package com.my.mybatis;
public class User {
    private String name;
    private Integer age;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getAge() {
        return age;
    }
    public void setAge(Integer age) {
        this.age = age;
    }
    public User(String name, Integer age) {
        super();
        this.name = name;
        this.age = age;
    }


    public User() {
        super();
    }
}


package com.my.mybatis;


import java.util.List;
import java.util.Map;


3)public interface UserMapper {
    public void insertUser(User user);
    public User getUser(String name);
public int getUserCount(String string);
public List>  getUserCount1(String string);
public List> getUserMap(String string);
public List> getUserMap1(String string);
public List getUserMap2(String string);
public List> getUserCount2(String string);
public List> getUser1(String string);
}
4)package com.my.mybatis;
import java.io.IOException;
import java.io.Reader;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
public class MyBatisUtil {
    private final static SqlSessionFactory sqlSessionFactory;
    static {
        String resource = "mybatis-config.xml";
        Reader reader = null;
        try {
            reader = Resources.getResourceAsReader(resource);
        } catch (IOException e) {
            System.out.println(e.getMessage());
        }
        sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
    }
    public static SqlSessionFactory getSqlSessionFactory() {
        return sqlSessionFactory;
    }
}
5)package com.my.mybatis;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
public class TestMyBatis {
static SqlSessionFactory sqlSessionFactory = null;
static {
sqlSessionFactory = MyBatisUtil.getSqlSessionFactory();
}
public static void main(String[] args) {
testAdd();
getUser();
getUserMap();
getUserMap1();
getUserCount();
}
public static void testAdd() {
SqlSession sqlSession = sqlSessionFactory.openSession();
try {
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
User user = new User("lisi", new Integer(25));
userMapper.insertUser(user);
sqlSession.commit();// 这里一定要提交,不然数据进不去数据库中
} finally {
sqlSession.close();
}
}
public static void getUser() {
SqlSession sqlSession = sqlSessionFactory.openSession();
try {
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
User user = userMapper.getUser("zhanjindong1");
List> userMap = userMapper
.getUser1("zhanjindong1");
System.out.println("name: " + user.getName() + "|age: "
+ user.getAge());


System.out.println("getUser  :userMap: " + userMap);
} finally {
sqlSession.close();
}
}
public static void getUserMap() {
SqlSession sqlSession = sqlSessionFactory.openSession();
try {
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
List> userMap = userMapper.getUserMap("lisi");
System.out.println("getUserMap :userMap: " + userMap);
} finally {
sqlSession.close();
}
}
public static void getUserMap1() {
SqlSession sqlSession = sqlSessionFactory.openSession();
try {
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
List> userMap1 = userMapper.getUserMap1("lisi");
List userMap2 = userMapper.getUserMap2("lisi");
System.out.println("userMap1: " + userMap1);
System.out.println("userMap2: " + userMap2);
} finally {
sqlSession.close();
}
}
public static void getUserCount() {
SqlSession sqlSession = sqlSessionFactory.openSession();
try {
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
int userCount = userMapper.getUserCount("zhangsan");
List> userCount1 = userMapper
.getUserCount1("zhangsan");
List> userCount2 = userMapper
.getUserCount2("zhangsan");
System.out.println("userCount: " + userCount);
System.out.println("userCount1: " + userCount1);
System.out.println("userCount2: " + userCount2);
} finally {
sqlSession.close();
}
}
}
6)   
    PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"   
    "http://mybatis.org/dtd/mybatis-3-mapper.dtd">







insert into user(name,age) values(#{name},#{age})











7)   
    PUBLIC "-//mybatis.org//DTD Config 3.0//EN"   
    "http://mybatis.org/dtd/mybatis-3-config.dtd">   
  
      
          
          
          
          
   
  
      
          
   
  
      
          
              
              
                
                
                
                
           
  
       
  
   
  
      
          
   
  
8)xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4.0.0
com.my.mybatis
mybatis
war
0.0.1-SNAPSHOT
mybatis Maven Webapp
http://maven.apache.org


junit
junit
3.8.1
test


org.mybatis
mybatis
3.2.3


mysql
mysql-connector-java
5.1.38



mybatis

运行结果:

Fri Apr 14 08:54:51 CST 2017 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
name: zhanjindong1|age: 18
getUser  :userMap: [{name=zhanjindong1, id=1, age=18}]
getUserMap :userMap: [{name=lisi, id=5, age=25}, {name=lisi, id=6, age=25}, {name=lisi, id=7, age=25}, {name=lisi, id=8, age=25}, {name=lisi, id=9, age=25}, {name=lisi, id=10, age=25}, {name=lisi, id=11, age=25}, {name=lisi, id=12, age=25}, {name=lisi, id=13, age=25}, {name=lisi, id=14, age=25}, {name=lisi, id=15, age=25}, {name=lisi, age=25}, {name=lisi, age=25}, {name=lisi, age=25}, {name=lisi, age=25}, {name=lisi, age=25}, {name=lisi, age=25}, {name=lisi, age=25}, {name=lisi, age=25}, {name=lisi, age=25}]
userMap1: [com.my.mybatis.Account@8b7f67, com.my.mybatis.Account@c7a4e4, com.my.mybatis.Account@178f375, com.my.mybatis.Account@c87b21, com.my.mybatis.Account@1375618, com.my.mybatis.Account@10399e, com.my.mybatis.Account@d992b2, com.my.mybatis.Account@15be6bb, com.my.mybatis.Account@39f31e, com.my.mybatis.Account@1fcfece, com.my.mybatis.Account@1ceabc1, com.my.mybatis.Account@15eef3d, com.my.mybatis.Account@f4468b, com.my.mybatis.Account@c4c815, com.my.mybatis.Account@82f6ef, com.my.mybatis.Account@fc185, com.my.mybatis.Account@3b1d11, com.my.mybatis.Account@f5e5e3, com.my.mybatis.Account@16d4b5c, com.my.mybatis.Account@100a15d]
userMap2: [com.my.mybatis.Account@1efea79, com.my.mybatis.Account@34c75a, com.my.mybatis.Account@16a51ab, com.my.mybatis.Account@1081592, com.my.mybatis.Account@19a81e8, com.my.mybatis.Account@1629756, com.my.mybatis.Account@ee68d8, com.my.mybatis.Account@15b5592, com.my.mybatis.Account@651fd0, com.my.mybatis.Account@120ebad, com.my.mybatis.Account@19f379, com.my.mybatis.Account@1c7cbad, com.my.mybatis.Account@12cc05a, com.my.mybatis.Account@1933fd1, com.my.mybatis.Account@8a9f61, com.my.mybatis.Account@153acfe, com.my.mybatis.Account@16905e, com.my.mybatis.Account@2d45ba, com.my.mybatis.Account@5ca609, com.my.mybatis.Account@e2cbe0]
userCount: 2
userCount1: [2]
userCount2: [{count(*)=2}]

你可能感兴趣的:(后台框架)