美文网首页
04mybatis-springboot开发

04mybatis-springboot开发

作者: RobertLiu123 | 来源:发表于2019-08-08 08:48 被阅读0次

https://blog.csdn.net/zmx729618/article/details/80773887

优雅的使用mybatis-spring-boot-starter
我的工程:D:\springboot\demo-web-mybatis
拷贝原来的demo-web1顺着以下思路进行构建

思路: 一是引入mybatis-starter使springboot与mybatis集成
二是完成连接数据库

1)pom.xml 主要是引入mybatis-spring-boot-starter

<!-- mybatis新增 begin-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>1.1.1</version>
</dependency>
        <!--    高版本适用
     <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency> -->
    <!-- mysql驱动  phpstudy适用-->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.41</version>
    </dependency>
    <!--mybatis end -->
<!--mybatis  end -->

2)application.properties 添加相关配置

mybatis配置主要分两部分,一部分是为实体类配置别名,另一部分是扫描mapper所有的包
(配置数据库连接及设置pojo所有的包,定义别名)

springboot会自动加载spring.datasource.*相关配置,数据源就会自动注入到sqlSessionFactory中,sqlSessionFactory会自动注入到Mapper中,对了你一切都不用管了,直接拿起来使用就行了。

#mybatis add
mybatis.type-aliases-package=com.neuedu.domain
#高版本适用
#spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver
#phpstudy用下面这个配置
spring.datasource.driverClassName = com.mysql.jdbc.Driver
spring.datasource.url = jdbc:mysql://localhost:3306/mysql?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
spring.datasource.username = root
spring.datasource.password = mysql

3)在启动类中添加对mapper包扫描@MapperScan

@SpringBootApplication
@MapperScan("com.neuedu.mapper")
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

4)开发Mapper,IUserMapper.java放到com.neuedu.mapper包下

public interface IUserMapper {
    @Select("select * from t_user ")
    public List<User> findUser();
}

5)写测试类。这里省略了servie层

直接拷贝,SimpleController改名为MybatisController并修改其中的代码

    @Controller
public class MybatisController {
@Autowired
IUserMapper userMapper;

@RequestMapping("/mybatisTest")
public ModelAndView mybatis() {
    List<User> userlist=userMapper.findUser();
    System.out.println(userlist.size());
    ModelAndView mav = new ModelAndView();
    mav.addObject("msg", userlist.size());
    mav.setViewName("hello");   
return mav;
}
}

6)测试:启动工程后在浏览器输入

 http://localhost/haha/mybatisTest

ok!

补充

通过写法:返回map(表之间有无关联都适用,多表关联时特别简便)

controller

@RequestMapping("/mapTest")
    public List<Map<String,Object>> mapTest() {
        System.out.println("查询方法被调用");
        return tabUserMapper.findAllMap();

    }

接口

@Select("select * from tab_user")
public List<Map<String, Object>> findAllMap();

注意事项

数据库配置中的com.mysql.cj.jdbc.Driver和serverTimezone=UTC:

作业

用jquery+springboot+mybatis实现用户注册、登录、查询所有用户列表功能。

相关文章

网友评论

      本文标题:04mybatis-springboot开发

      本文链接:https://www.haomeiwen.com/subject/jzfmdctx.html