数据库交互myBatis集成

Posted zxj-262410

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库交互myBatis集成相关的知识,希望对你有一定的参考价值。

一、启动数据库的服务器

cmd以管理员权限运行

切换到数据库安装的bin目录中

输入命令:net start mysql

技术图片

cmd其他常用命令:

登陆数据库:mysql -u root -p  

显示已经创建的数据库:show databases;

 

二、MySQL中创建表(使用GUI界面创建)

1.首先创建schema

技术图片

上图中,点击Apply后就会有脚本弹出,应用就可。

技术图片

技术图片

 

 2.创建表

选中Table右键,create table就可弹出下面界面。

技术图片

UQ:必须不一样

B: 可以存放binary数据,一般数据放云服务器上,用链接,所以基本不用

NN:不能为空

AI:自动增加

varchar:可变数组

 

填好之后点击应用就可,生成脚本

 技术图片

CREATE TABLE `toutiao`.`new_table` (
  `id` INT NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(64) NULL,
  `password` VARCHAR(64) NULL,
  PRIMARY KEY (`id`),
  UNIQUE INDEX `name_UNIQUE` (`name` ASC) VISIBLE);

 

 

 3. 常用的数据结构和操作

技术图片

技术图片

举例:

插入数据:(要先双击,选中要操作的数据库)

insert into user(name,password) values(a1,b1);

技术图片

 

 筛选数据

 技术图片

SELECT * FROM user where id = 1; 
SELECT * FROM user where id < 4;
SELECT * FROM user where id in (1,5,6);
SELECT * FROM user where id > 1 and id < 5;
SELECT * FROM user where id between 2 and 5; #一般用于时间上
SELECT count(id) FROM user where id  > 2;
select * from user order by id desc; #降序,asc为增序
select * from user where id >1 order by id desc limit 2,3; #降序后限制显示,偏移两个,显示3个

更新数据:

update user set password = aaa4 where id = 5;
SELECT * FROM user where id = 5; 

删除数据:(一般不删除,只是改变下状态)

delete from user where id > 6; 
select * from user;

 

三、与Spring-Boot结合,进行开发

1.pox.xml导入两个依赖包

技术图片

2.配置数据库的地址

技术图片

spring.datasource.url=jdbc:mysql://localhost:3306/toutiao?useUnicode=true&characterEncoding=utf8&useSSL=false
spring.datasource.username=root
spring.datasource.password=123456
mybatis.config-location=classpath:mybatis-config.xml

导入这个文件,可以从官网下载

技术图片

导入建立数据的文档

技术图片

 

DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(64) NOT NULL DEFAULT ‘‘,
  `password` varchar(128) NOT NULL DEFAULT ‘‘,
  `salt` varchar(32) NOT NULL DEFAULT ‘‘,
  `head_url` varchar(256) NOT NULL DEFAULT ‘‘,
  PRIMARY KEY (`id`),
  UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS `news`;
CREATE TABLE `news` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `title` varchar(128) NOT NULL DEFAULT ‘‘,
  `link` varchar(256) NOT NULL DEFAULT ‘‘,
  `image` varchar(256) NOT NULL DEFAULT ‘‘,
  `like_count` int NOT NULL,
  `comment_count` int NOT NULL,
  `created_date` datetime NOT NULL,
  `user_id` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS `login_ticket`;
CREATE TABLE `login_ticket` (
  `id` INT NOT NULL AUTO_INCREMENT,
  `user_id` INT NOT NULL,
  `ticket` VARCHAR(45) NOT NULL,
  `expired` DATETIME NOT NULL,
  `status` INT NULL DEFAULT 0,
  PRIMARY KEY (`id`),
  UNIQUE INDEX `ticket_UNIQUE` (`ticket` ASC)
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS `comment`;
CREATE TABLE `comment` (
`id` INT NOT NULL AUTO_INCREMENT,
`content` TEXT NOT NULL,
`user_id` INT NOT NULL,
`entity_id` INT NOT NULL,
`entity_type` INT NOT NULL,
`created_date` DATETIME NOT NULL,
`status` INT NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
INDEX `entity_index` (`entity_id` ASC, `entity_type` ASC)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS `message`;
CREATE TABLE `message` (
  `id` INT NOT NULL AUTO_INCREMENT,
  `from_id` INT NULL,
  `to_id` INT NULL,
  `content` TEXT NULL,
  `created_date` DATETIME NULL,
  `has_read` INT NULL,
  `conversation_id` VARCHAR(45) NOT NULL,
  PRIMARY KEY (`id`),
  INDEX `conversation_index` (`conversation_id` ASC),
  INDEX `created_date` (`created_date` ASC))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8;

建立resource文件夹的方法:

 

步骤:File——>Project Struture——>Modules——>maven工程,如果没有maven工程就点+号来添加

技术图片

 

 技术图片

选择到创建resources文件夹的路径,比如图上的选择到main,右击鼠标,选择New Folder新建文件夹resources

技术图片

技术图片

再选择resources,右击鼠标选择Resources,可以看到resources文件夹的图标和之前不一样了,就是这样创建一个resources文件夹。再点Ok保存退出 。

技术图片

 

 很明图标都不一样了。

技术图片

 

以上是关于数据库交互myBatis集成的主要内容,如果未能解决你的问题,请参考以下文章

Apache Mybatis集成

3-5 集成Mybatis官方代码生成器

myBatis以接口方式交互数据

0120 springboot集成Mybatis和代码生成器

springboot mybatis 后台框架平台 集成代码生成器 shiro 权限

springboot 后台框架平台 mybatis 集成代码生成器 shiro 权限 websocket