多语言展示
当前在线:564今日阅读:183今日分享:19

Spring-boot如何集成mybatis

MyBatis是apache的开源项目,提供基于Java的持久层框架,括SQL Maps和Data Access Objects(sDAO),这里介绍如何将mybatis集成到spring-boot框架中。
工具/原料
1

iteliJ IDE

2

Maven

方法/步骤
1

在Maven工程中增加mybatis依赖    org.mybatis    mybatis    3.4.4

2

创建mybaits系统环境配置文件:mybatis-config.xml该文件包含了数据连接池以及数据表操作的SQL文件                                                                                                                                            

3

创建数据表的mybatis映射文件:ideaMapper.xml    

4

创建数据表的类对象Idea.java:package fantasy;/** * Created by Administrator on 2017/7/12 0012. */import org.springframework.format.datetime.DateFormatter;import java.util.Date;import java.util.Locale;public class Idea  implements java.io.Serializable{    private String id; //Max len =12    private String name; //max len = 125    private String content;    private String contentFile;    private String imgFile;    private String author;    private Date createDate;    private Date updateDate;    private String version;    public String getId() {        return id;    }    public void setId(String id) {        this.id = id;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public String getContent() {        return content;    }    public void setContent(String content) {        this.content = content;    }    public String getContentFile() {        return contentFile;    }    public void setContentFile(String contentFile) {        this.contentFile = contentFile;    }    public String getImgFile() {        return imgFile;    }    public void setImgFile(String imgFile) {        this.imgFile = imgFile;    }    public String getAuthor() {        return author;    }    public void setAuthor(String author) {        this.author = author;    }    public Date getCreateDate() {        return createDate;    }    public void setCreateDate(Date createDate) {        this.createDate = createDate;    }    public Date getUpdateDate() {        return updateDate;    }    public void setUpdateDate(Date updateDate) {        this.updateDate = updateDate;    }    public String getVersion() {        return version;    }    public void setVersion(String version) {        this.version = version;    }    @Override    public String toString() {        DateFormatter dateFormatter = new DateFormatter();        dateFormatter.setPattern('yyyyMMddHHmmss');        String createDateStr = '';        if(createDate!=null)        {           createDateStr= dateFormatter.print(createDate, Locale.CHINA);        }        return 'Idea{' +                'id='' + id + '\'' +                ', name='' + name + '\'' +                ', content='' + content + '\'' +                ', contentFile='' + contentFile + '\'' +                ', imgFile='' + imgFile + '\'' +                ', author='' + author + '\'' +                ', createDate=' + createDateStr +                ', updateDate=' + updateDate+                ', version='' + version + '\'' +                '}';    }}

5

创建DAO数据库操作类:IdeaController.javapackage fantasy;/** * Created by Administrator on 2017/8/8 0008. */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.springframework.boot.*;import org.springframework.boot.autoconfigure.*;import org.springframework.format.datetime.DateFormatter;import org.springframework.stereotype.*;import org.springframework.web.bind.annotation.*;import java.io.IOException;import java.io.InputStream;import java.text.DateFormat;import java.text.ParseException;import java.util.Map.Entry;import java.util.Date;import java.util.Locale;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.jdbc.core.JdbcTemplate;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@Controller@EnableAutoConfiguration@RestController@RequestMapping('/idea')public class IdeaController {    @Autowired    private JdbcTemplate jdbcTemplate;    @RequestMapping('/get')    @ResponseBody    String get(@RequestParam('id') String id) throws IOException {        Idea idea= new Idea();        String resource = 'mybatis-config.xml';        InputStream inputStream = Resources.getResourceAsStream(resource);        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);        SqlSession session = sqlSessionFactory.openSession();        try {            idea = (Idea) session.selectOne('fantasy.IdeaMapper.selectIdea', id);        } finally {            session.close();        }        if(idea!=null)            return idea.toString();        else            return '查询不到记录!';    }    public static void main(String[] args) throws Exception {        SpringApplication.run(IdeaController.class, args);    }}

6

运行IdeaController类,并在浏览器中进行测试

推荐信息