首页 > 程序开发 > 软件开发 > 其他 > 正文
Spring+MyBatis+MySQL之MyBatis操作入门
2017-02-17       个评论    来源:import_java_any的博客  
收藏    我要投稿

Spring+MyBatis+MySQL之MyBatis操作入门:作为最开始的环境,我们先只介绍MyBatis+MySql,等MyBatis+MySql入门后,我们再引入Spring。所以,现在我们的环境只需要MySql,MyBatis和开发工具(IDE)。

MySql
可以在mysql.com/downloads/mysql/%20MySql">这里选择适合自己操作系统的MySql安部署。
我们的入门项目是一个简单的购物网站,所以后台数据库会有三个基本的表:用户表,产品表和购物车表。
a. MySql安装部署好后,打开MySql,建立名为smm的数据库:

create database smm;

b. 在smm数据库里面建立User表、Product表和Cart表:

use smm;
/* 建立用户表 */
create table user(id int primary key auto_increment, name varchar(30) not null, contact_info varchar(50));

/* 建立产品表 */ 
create table product(id int primary key auto_increment, name varchar(30) not null, description varchar(100));

/* 建立购物车表,因为购物车就是用户和产品的对应关系,所以会有对用户表和产品表的外键 */
create table cart(id int primary key auto_increment, user_id int, product_id int, foreign key(user_id) references user(id), foreign key(product_id) references product(id));

MyBatis
我们的项目是依赖MyBatis的。我们用Maven管理项目依赖,这点将在下面的章节介绍。

开发工具(IDE)
我们用Eclipse进行开发,可以在这里获取。

二、MyBatis+MySql入门项目

打开Eclipse,新建一个Maven Project

在pom.xml中添加项目依赖:mybatis和mysql connector:


    
        org.mybatis
        mybatis
        3.4.2
    
    
        mysql
        mysql-connector-java
        5.1.38
    

我们已经在smm数据库中建立了用户表、产品表和购物车表,如果是传统的开发的话,我们还需要为这些表建立对应的Java类,并配置各Java类和表的对应关系,以及各DAO。但是MyBatis为我们提供了更为方便的方法:使用MyBatis Generator. 它可以根据数据库中已有的表,自动生成对应的类及DAO(MyBatis中的Mapper)。下面就是如何在Eclipse中使用MyBatis Generator的例子:
a. 打开Eclipse,选择Help->Eclipse Marketplace,搜索MyBatis Generator,然后安装。

b. 安装完毕后,右击项目下的src/main/resources目录,选择New->Others->MyBatis->MyBatis Generator Configuration File.

c.将生成的generatorConfig.xml文件内容修改如下:





  
  
  
    
    
    
    
    
    
 
 
 

d. 在上一步中,我们配置了MyBatis Generator如何去访问数据库,并生成哪些表对应的Java对象等行为。现在在Eclipse中右击该文件,选择Run as->Run MyBatis Generator。

运行结束后,我们就会看到,Java Model和Mapper (即DAO)以及对应的xml文件(用来存放sql和java对应关系)。

e.最后一步,配置MyBatis如何访问数据库。在src/main/resources下,新建文件:mybatis-config.properties和mybatis-config.xml。
mybatis-config.properties内容如下:

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/smm

#下面两行替换为本地的Mysql的用户名和密码

username=root
password=root

mybatis-config.xml内容如下:






    
        
        
            
            
            
            
        
    


    
    
    

至此,所有的工作都完成了。可以看到,我们没有写一行代码,只需要按照需求去定制配置文件就完成了所有的工作。接下来,我们写一个类来测试:

public class TestMyBatis {

    public static void main(String[] args) throws IOException {
        //装在mybatis-config.xml配置文件
        InputStream inputStream=Resources.getResourceAsStream("mybatis-config.xml");

        //获得SqlSession
        SqlSessionFactory factory=new SqlSessionFactoryBuilder().build(inputStream);
        SqlSession session=factory.openSession();

        //获得UserMapper (及DAO)
        UserMapper userMapper=session.getMapper(UserMapper.class);

        //新建User对象
        User user=new User();
        user.setName("name1");
        user.setContactInfo("contact_info1");

        //向数据库插入新建的User对象并提交事务。
        userMapper.insert(user);
        session.commit();
    }

}

执行main方法,我们会发现数据库中已经插入了在Java中新建的User对象:

这样,我们就完成了一个最基本的Java与数据库交互的项目。可以看到,我们只有在做测试的时候写了Java代码,其他时间都是在定制配置文件,这样就大大的提高了开发效率。至于这些配置文件里面每一项的作用以及MyBatis其他的功能,我们会在接下来的章节中作介绍。

点击复制链接 与好友分享!回本站首页
上一篇:eclipse中运行时出现ClassNotFoundException解决办法
下一篇:springbatch常规配置
相关文章
图文推荐
文章
推荐
点击排行

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做实用的IT技术学习网站