SpringBoot之mybatis-plus

参考官网:

https://mp.baomidou.com/guide/#%E7%89%B9%E6%80%A7

相关知识点:

druid数据源:

Druid是阿里巴巴开源的一个数据源,主要用于java数据库连接池,相比spring推荐的DBCP和hibernate推荐的C3P0、Proxool数据库连接池,Druid在市场上占有绝对的优势;

 

******************出现问题一 一直提示**********

Failed to read artifact descriptor for

后来发现这个包没了,在这里看

 

 一般出现的,都是有这个提示的

 

************************问题二*******************

		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<version>1.16.18</version>
			<scope>provided</scope>
		</dependency>

上面的依赖是干嘛的呢?

Lombok能以简单的注解形式来简化java代码,提高开发人员的开发效率。例如开发中经常需要写的javabean,都需要花时间去添加相应的getter/setter,也许还要去写构造器、equals等方法,而且需要维护,当属性多时会出现大量的getter/setter方法,这些显得很冗长也没有太多技术含量,一旦修改属性,就容易出现忘记修改对应方法的失误。

Lombok能通过注解的方式,在编译时自动为属性生成构造器、getter/setter、equals、hashcode、toString方法。

参考这篇博客

https://www.cnblogs.com/heyonggang/p/8638374.html

public class cat {
    @Getter
    @Setter
    private int age = 10;
}

就会自动有了setAge方法了。

        cat ct = new cat();
        ct.setAge(111);
        ct.getAge();

哈哈 ,好厉害的库啊。。佩服。

*****************************************经过好久的折腾,终于可以用了****************************

 可以获取数据库的数据了。。。

记录一下:

首先创建一张表

 

 设置依赖 设置mybatis总线依赖

		<dependency>
			<groupId>com.baomidou</groupId>
			<artifactId>mybatis-plus-boot-starter</artifactId>
			<version>3.1.2</version>
		</dependency>

由于我是mysql数据库,设置数据库依赖

		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.3</version>
		</dependency>

由于我使用了阿里巴巴的druid库,这里也需要设置依赖

		<dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>druid-spring-boot-starter</artifactId>
			<version>1.1.18</version>
		</dependency>

由于我使用了Lombok来自动生成get和set,设置依赖

		<dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>druid-spring-boot-starter</artifactId>
			<version>1.1.18</version>
		</dependency>

******************设置配置********************

 主要是用户名和密码等,要设置正确。

spring:
    datasource:
        type: com.alibaba.druid.pool.DruidDataSource
        driver-class-name: com.mysql.jdbc.Driver
        schema: classpath:db/schema-h2.sql
        data: classpath:db/data-h2.sql
        url: jdbc:mysql://localhost:3306/test
        username: root
        password: sa
        filters: stat
        maxActive: 20
        initialSize: 1
        maxWait: 60000
        minIdle: 1
        timeBetweenEvictionRunsMillis: 60000
        minEvictableIdleTimeMillis: 300000
        validationQuery: select 1 FROM DUAL
        testWhileIdle: true
        testOnBorrow: false
        testOnReturn: false
        poolPreparedStatements: true
        maxOpenPreparedStatements: 20

 

定义表与类的映射类

@Data
@TableName("ttuser")
public class ttuser {
    private  Long id;
    private  String name;
    private  Integer age;
    private  String email;
}

再定义一个接口类:

@Mapper
public interface ttuserMapper extends BaseMapper<ttuser> {
}

 

这样就可以获取数据了

@Autowired
	private  ttuserMapper ttuserMapper;

	@Test
	public void testSelect() {
		System.out.println(("----- selectAll method test ------"));
		List<ttuser> userList = ttuserMapper.selectList(null);
		Assert.assertEquals(5, userList.size());
		userList.forEach(System.out::println);
	}

***********************************通过继承接口,可以直接在service层调用数据库***********************

示例如下:

@Service
public class ttuserService extends ServiceImpl<ttuserMapper,ttuser>{
 public List<ttuser> SelectUser()
 {
     return baseMapper.selectList(null);
 }
}

编写测试程序

注入service类

	@Autowired
	private  ttuserService  ttuserService;
	@Test
	public void testService() {
		System.out.println(("----- selectAll method test ------"));
		ttuserService.SelectUser().forEach(System.out::println);
	}

 打印数据:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值