mysql数据库的操作dao vo_SpringBoot整合MyBatis,Druid数据源,连接MySql和Oracle介绍

74204a8c96b0f84163ad7e6e7f75d7a2.png新建项目maven项目:microcloud-provider-dept-8001

86a5c8f913c5e332467e885713ccb8dd.png

2. 2

在maven文件中新增springboot与mybatis整合相关依赖包

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

com.gwolf

microcloud-provider-dept-8001

jar

springboot-mybatis

http://maven.apache.org

UTF-8

org.springframework.boot

spring-boot-dependencies

1.5.2.RELEASE

pom

import

mysql

mysql-connector-java

6.0.6

com.alibaba

druid

1.1.5

org.mybatis.spring.boot

mybatis-spring-boot-starter

1.3.1

ch.qos.logback

logback-core

1.2.3

org.springframework.boot

spring-boot-starter-jetty

1.5.8.RELEASE

org.springframework.boot

spring-boot-starter-web

1.5.8.RELEASE

org.springframework.boot

spring-boot-starter-test

1.5.8.RELEASE

test

org.springframework

springloaded

1.2.8.RELEASE

org.springframework.boot

spring-boot-devtools

1.5.8.RELEASE

3. 创建数据库脚本:

DROP DATABASE IF EXISTS mldn_1 ;

CREATE DATABASE mldn_1 CHARACTER SET UTF8 ;

USE mldn_1 ;

CREATE TABLE dept (

deptno BIGINT AUTO_INCREMENT ,

dname VARCHAR(50) ,

loc VARCHAR(50) ,

CONSTRAINT pk_deptno PRIMARY KEY(deptno)

) ;

INSERT INTO dept(dname,loc) VALUES ('开发部',database()) ;

INSERT INTO dept(dname,loc) VALUES ('财务部',database()) ;

INSERT INTO dept(dname,loc) VALUES ('市场部',database()) ;

INSERT INTO dept(dname,loc) VALUES ('后勤部',database()) ;

INSERT INTO dept(dname,loc) VALUES ('公关部',database()) ;

4. 创建application.yml配置文件

server:

port: 8001

mybatis:

config-location: classpath:mybatis/mybatis.cfg.xml # mybatis配置文件所在路径

type-aliases-package: com.gwolf.vo # 定义所有操作类的别名所在包

mapper-locations: # 所有的mapper映射文件

- classpath:mybatis/mapper/**/*.xml

spring:

datasource:

type: com.alibaba.druid.pool.DruidDataSource # 配置当前要使用的数据源的操作类型

driver-class-name: com.mysql.cj.jdbc.Driver # 配置MySQL的驱动程序类

url: jdbc:mysql://localhost:3306/mldn_1?serverTimezone=UTC # 数据库连接地址

username: root # 数据库用户名

password: root # 数据库连接密码

dbcp2: # 进行数据库连接池的配置

min-idle: 5 # 数据库连接池的最小维持连接数

initial-size: 5 # 初始化提供的连接数

max-total: 5 # 最大的连接数

max-wait-millis: 200 # 等待连接获取的最大超时时间

application:

name: microcloud-provider-dept

security:

user:

name: gwolf #用户名

password: gwolf #密码

role: #授权角色

- USER

5. 创建VO对象:

package com.gwolf.vo;

public class Dept implements java.io.Serializable {

private Long deptno;

private String dname;

private String loc;

public Long getDeptno() {

return deptno;

}

public void setDeptno(Long deptno) {

this.deptno = deptno;

}

@Override

public String toString() {

return "Dept{" +

"deptno=" + deptno +

", dname='" + dname + '\'' +

", loc='" + loc + '\'' +

'}';

}

public String getDname() {

return dname;

}

public void setDname(String dname) {

this.dname = dname;

}

public String getLoc() {

return loc;

}

public void setLoc(String loc) {

this.loc = loc;

}

}

6. 创建mybatis配置文件:

/p>

PUBLIC "-//mybatis.org//DTD Config 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-config.dtd">

7. 创建dept.xml文件

/p>

"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

SELECT deptno,dname,loc FROM dept WHERE deptno=#{deptno} ;

SELECT deptno,dname,loc FROM dept ;

INSERT INTO dept(dname,loc) VALUES (#{dname},database()) ;

8. 创建service类DeptServiceImpl

package com.gwolf.microcloud.service.impl;

import com.gwolf.microcloud.dao.IDeptDAO;

import com.gwolf.microcloud.service.IDeptService;

import com.gwolf.vo.Dept;

import org.springframework.stereotype.Service;

import javax.annotation.Resource;

import java.util.List;

@Service

public class DeptServiceImpl implements IDeptService{

@Resource

private IDeptDAO deptDAO;

@Override

public Dept get(long id) {

return this.deptDAO.findById(id);

}

@Override

public boolean add(Dept dept) {

return this.deptDAO.doCreate(dept);

}

@Override

public List list() {

return this.deptDAO.findAll();

}

}

9. 创建DAO类:

package com.gwolf.microcloud.dao;

import com.gwolf.vo.Dept;

import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper

public interface IDeptDAO {

public boolean doCreate(Dept vo);

public Dept findById(Long id);

public List findAll();

}

10. 创建项目启动类,注意项目启动类必须在所有类的父目录上面

package com.gwolf.microcloud;

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication

public class Dept_8001_StartSpringCloudApplication {

public static void main(String[] args) {

SpringApplication.run(Dept_8001_StartSpringCloudApplication.class,args);

}

}

11. 编写项目测试类:

package com.gwolf.microcloud.service;

import com.gwolf.microcloud.Dept_8001_StartSpringCloudApplication;

import com.gwolf.vo.Dept;

import org.junit.Test;

import org.junit.runner.RunWith;

import org.springframework.boot.test.context.SpringBootTest;

import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

import org.springframework.test.context.web.WebAppConfiguration;

import javax.annotation.Resource;

@SpringBootTest(classes = Dept_8001_StartSpringCloudApplication.class)

@RunWith(SpringJUnit4ClassRunner.class)

@WebAppConfiguration

public class IDeptServiceTest {

@Resource

private IDeptService deptService;

@Test

public void testGet() {

System.out.println(this.deptService.get(1));

}

@Test

public void testAdd() {

Dept dept = new Dept();

dept.setDname("测试部-" + System.currentTimeMillis());

System.out.println(this.deptService.add(dept));

}

@Test

public void testList() {

System.out.println(this.deptService.list());

}

}

12. 整合完毕,执行测试类的list方法,查看结果:

[Dept{deptno=1, dname='测试部1505889216746', loc='mldn_1'}, Dept{deptno=2, dname='测试部1505894821612', loc='mldn_1'}, Dept{deptno=3, dname='测试部1505894836783', loc='mldn_1'}, Dept{deptno=4, dname='web测试', loc='mldn_1'}, Dept{deptno=5, dname='web测试', loc='mldn_1'}, Dept{deptno=6, dname='web测试', loc='mldn_1'}, Dept{deptno=7, dname='测试部1505983431789', loc='mldn_1'}, Dept{deptno=8, dname='测试部1505985088490', loc='mldn_1'}, Dept{deptno=9, dname='测试部1505992277824', loc='mldn_1'}, Dept{deptno=10, dname='测试部1506004929819', loc='mldn_1'}, Dept{deptno=11, dname='测试部1506051647955', loc='mldn_1'}, Dept{deptno=12, dname='测试部-1510581883778', loc='mldn_1'}, Dept{deptno=13, dname='web测试', loc='mldn_1'}, Dept{deptno=14, dname='web测试365', loc='mldn_1'}],

成功打印,整合成功。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值