如何用IDEA创建springboot(maven)并且整合mybatis连接mysql数据库和遇到的问题
一、New->Project
二、点击next

三、在Group栏输入组织名,Artifact就是项目名。选择需要的java版本,点击next

四、添加需要的依赖

在这里我们也可以添加sql方面的依赖,这样的话,我们就不用手动在pom文件添加依赖了
五、修改您希望放项目的位置,点击finish,等待idea下载springboot项目模板和相关的依赖


项目构建完成后的目录结构
六、如果需要用mybatis连接mysql数据库
1、添加连接数据库的依赖(在pom.xml中添加以下内容,maven将自动把相关依赖放到maven仓库中,然后放到项目中)
<!--连接数据库-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
七、将依赖添加完成后,就是编写代码的部分了
1、添加连接数据库的必要参数(application.properties中)
spring.datasource.url=jdbc:mysql://localhost:3306/taotao?serverTimezone=UTC //红字部分最好写上,不然会报错,这个问题见附录1
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver //如果这个驱动类不懂看附录1
b、pojo类
public class User {
private int userId;
private String userName;
private String userPassword;} 省略get set 方法
c、mapper接口及对应的sql语句
@Mapper
public interface UserMapper {
@Select("select * from user")
List<User> selectUser();
}
如果说 Mapper和Select注解无法使用的话,尝试更改mybatis-spring-boot-starter依赖的版本号,因为1.3.2(最开始写的,其他版本没试)版本是不支持这两个注解的,可以使用1.3.1版
c、controller
@RestController
public class UserController {
@Autowired
UserMapper userMapper;
@RequestMapping("/selectUser")
public String getUserName(){
System.out.println("我进接口了");
return userMapper.selectUser().get(0).getUserName();
}
}
直接运行,访问localhost:8080/selectUser,成功调用数据库,

附录1
参照:https://www.cnblogs.com/liaojie970/p/8916568.html,这里面有详细的解释
com.mysql.jdbc.Driver 是 mysql-connector-java 5中的.
url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=false
driverClassName=com.mysql.jdbc.Driver
com.mysql.cj.jdbc.Driver 是 mysql-connector-java 6中的,需要指定时区serverTimezone,不然在启动的时候会报错
url=jdbc:mysql://localhost:3306/test?serverTimezone=UTC&?useUnicode=true&characterEncoding=utf8&useSSL=false
driverClassName=com.mysql.cj.jdbc.Driver
serverTimezone需要按照真实情况写,如果在中国,serverTimezone可以设置为Shanghai或者Hongkong
第一次写这东西,如果有不对的地方,请指正,谢谢
如何用IDEA创建springboot(maven)并且整合mybatis连接mysql数据库和遇到的问题的更多相关文章
- springboot整合mybatis连接mysql数据库出现SQLException异常
在springboot整合mybatis连接数据库的时候,项目中遇到一个SQLException,我检查了properties配置文件,看数据源有没有配错,检查有没有打错字,在数据库中把sql语句查询 ...
- SpringBoot框架:使用mybatis连接mysql数据库完成数据访问(二)
一.导入依赖包 1.在创建项目时勾选: 勾选SQL中的JDBC API.MyBatis Framework.MySQL Driver,创建项目后就会自动配置和引入这些包. 2.在pom.xml文件中添 ...
- SpringBoot 整合 hibernate 连接 Mysql 数据库
前一篇搭建了一个简易的 SpringBoot Web 项目,最重要的一步连接数据库执行增删改查命令! 经过了一天的摸爬滚打,终于成功返回数据! 因为原来项目使用的 SpringMVC + Hibern ...
- kotlin + springboot整合mybatis操作mysql数据库及单元测试
项目mybatis操作数据库参考: http://how2j.cn/k/springboot/springboot-mybatis/1649.html?p=78908 junit对controller ...
- SpringBoot 集成Mybatis 连接Mysql数据库
记录SpringBoot 集成Mybatis 连接数据库 防止后面忘记 1.添加Mybatis和Mysql依赖 <dependency> <groupId>org.mybati ...
- SpringBoot 2.X整合Mybatis
1.创建工程环境 勾选Web.Mybatis.MySQL,如下 依赖如下 <dependency> <groupId>org.springframework.boot</ ...
- 【springboot spring mybatis】看我怎么将springboot与spring整合mybatis与druid数据源
目录 概述 1.mybatis 2.druid 壹:spring整合 2.jdbc.properties 3.mybatis-config.xml 二:java代码 1.mapper 2.servic ...
- springboot通过ssh通道连接mysql数据库
navicat可以通过ssh通道连接mysql数据库,那java中如何实现了,springboot又该怎样集成呢? 1.添加包 <dependency> <groupId>co ...
- Hibernate连接mysql数据库并自动创建表
天才第一步,雀氏纸尿裤,Hibernate第一步,连接数据库. Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个 ...
随机推荐
- php cookie 操作
创建 cookie <?php setcookie(); ?> 取回 Cookie 的值 <?php // Print a cookie echo $_COOKIE["us ...
- 说自己熟悉 Spring Cloud 这些面试题你会吗
问题一:什么是Spring Cloud? Spring cloud流应用程序启动器是基于Spring Boot的Spring集成应用程序,提供与外部系统的集成.Spring cloud Task,一个 ...
- CSS 交集选择器和并集选择器
交集选择器是and 也就是要同时满足 且只能交2个只能交2个只能交2个,第一个是标记,第二个是class或者id,之间不可以有空格 eg: span.small-height 并集选择器是or,也就 ...
- GitHub的SSH免密连接
1.进入当前用户的家目录 $ cd ~ 2.删除.ssh 目录 $ rm -rvf .ssh 3.运行命令生成.ssh 密钥目录 $ ssh-keygen -t rsa -C [GitHub邮箱] [ ...
- 火狐调试工具-DevTools
狐调试工具 - DevTools 咱们做写js 代码的时候,遇到的一个最大的问题就是调试问题,很多开发者在写 js 代码的时候,经常都非常痛苦.但是我们如果掌握好相应的调试工具,那么就可以比较游刃有余 ...
- 2018-2019-2 20165209 《网络对抗技术》Exp9: Web安全基础
2018-2019-2 20165209 <网络对抗技术>Exp9: Web安全基础 1 基础问题回答和实验内容 1.1基础问题回答 (1)SQL注入攻击原理,如何防御? 原理:SQL注入 ...
- [微信小程序]实现一个自定义遮罩层
正文: 先上效果图: 点击按钮Show显示遮罩层,再次点击屏幕任何地方隐藏遮罩层; <button bindtap="showview">Show</button ...
- SSM基于Token的登录认证
1.什么是token token的意思是“令牌”,是服务端生成的一串字符串,作为客户端进行请求的一个标识. 当用户第一次登录后,服务器生成一个token并将此token返回给客户端,以后客户端只需带上 ...
- [c++]struct timeval
struct timeval { time_t tv_sec; // seconds long tv_usec; // microseconds }; re 1. struct timespec 和 ...
- iOS使用UIImageView展现网络图片(转载)
在iOS开发过程中,经常会遇到使用UIImageView展现来自网络的图片的情况,最简单的做法如下: [cpp] view plaincopy - (void)viewDidLoad { [sup ...
