在hello world的基础上,实现简单人员管理(增删改查)功能(整合mybatis)
hello world的项目:
https://www.cnblogs.com/clamp7724/p/12579171.html
注意我这里mysql是10.0以上版本,如果版本过老可能会报错,如果是老版本的mysql可以参考这个视频里的
https://www.bilibili.com/video/BV1yE411M7MF?p=3
主要不同点:pom.xml的引用,application.yml中的配置。
1. 添加项目名称路径(方便以后项目多了以后进行管理)
这时启动该项目下所有页面的前面不再是http://localhost:8080
2. 创建数据库(我用的管理工具是SQLyog 数据库是mysql) (不会mysql?先去学那个吧少年= =现在中国政策去oracle化,大部分企业关系型数据库基本都会优先使用mysql)
创建表:
用户表:(简单例子就不加权限了)
CREATE TABLE t_user( id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT, user_name VARCHAR(40), real_name VARCHAR(40), user_password VARCHAR(40) );
注意:
id 要用自增 unsigned 整型,有主意提高检索效率
用户名和密码不要用:name和password,这两个是数据库关键字,会引起不必要的麻烦
windows下的数据库不区分大小写,但是linux的会区分,所以所有字段统一小写,以免引起不必要的麻烦。
员工表:
CREATE TABLE t_emp( id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT, real_name VARCHAR(40), salary DECIMAL(7,2), age TINYINT UNSIGNED )
注意:储存小数点最好用 decimal, 缺点是:存储数字不能过大,否则会有比较时的bug。 但是double和float会有精度缺失的bug(因为二进制导致的有些小数会变成 .9999999999999那种,java和html里也时有发生。。。)
然后运行sql语句创建表完成。
刷新显示2个新表
3. mybatis部分
引入:springboot整合mybatis的依赖 (这个包会自动整合最新的mybatis包,不要单独整合mybatis,可能会版本过低导致启动项目失败)
添加文件夹:dao用来存放数据库连接部分,entitiy存放对应数据库表的简单类,mapper里配置操作数据库的sql语句。
修改配置文件
注意如果mysql版本超过10,则必须这么配置,网上很多配置教程都版本太老了,driver-class-name:com.mysql.cj.jdbc.Driver是mybatis-connector-java在8.0之后加的,之前是com.mysql.jdbc.Driver,现在已经过期了,会报警告。
如果com.mysql.cj.jdbc.Driver报错,说明版本过老或者没有引入依赖。
然后就是最新版本的mybatis-connector-java,配置url必须加上Timezone和useSSL两个参数
修改启动类,添加需要扫描的文件注解
dao中创建接口,先完成最简单的保存用户,用来测试mybatis部分
完成User类 名字最好和数据库内保持一致,记得加上get,set,toString方法。
编写测试类:
启动测试类:
在数据库中查看结果: