设为首页 收藏本站
查看: 1146|回复: 0

[经验分享] springboot mysql mybatis docker

[复制链接]

尚未签到

发表于 2019-2-20 06:58:46 | 显示全部楼层 |阅读模式
  配置mysql


  • docker部署springboot+mysql项目
    docker pull mysql下载mysql
    其余跟教程走https://blog.csdn.net/Sirius_hly/article/details/83685256
    设置外网访问
  配置mybatis
2、加入依赖(可以用 http://start.spring.io/ 下载)

   

org.mybatis.spring.boot
mybatis-spring-boot-starter
1.3.2
runtime              



mysql
mysql-connector-java
runtime

      

com.alibaba
druid
1.1.6

  3、加入配置文件
#mybatis.type-aliases-package=net.xdclass.base_project.domain
#可以自动识别
#spring.datasource.driver-class-name =com.mysql.jdbc.Driver
  spring.datasource.url=jdbc:mysql://localhost:3306/movie?useUnicode=true&characterEncoding=utf-8
spring.datasource.username =root
spring.datasource.password =password
#如果不使用默认的数据源 (com.zaxxer.hikari.HikariDataSource)
spring.datasource.type =com.alibaba.druid.pool.DruidDataSource
  加载配置,注入到sqlSessionFactory等都是springBoot帮我们完成
  4、启动类增加mapper扫描
@MapperScan("com.example.demo.Mapper")

技巧:保存对象,获取数据库自增id
@Options(useGeneratedKeys=true, keyProperty="id", keyColumn="id")
  4、开发mapper
参考语法 http://www.mybatis.org/mybatis-3/zh/java-api.html
  5 控制台打印sql语句        
#增加打印sql语句,一般用于本地开发测试
mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
整合问题集合:
https://my.oschina.net/hxflar1314520/blog/1800035
https://blog.csdn.net/tingxuetage/article/details/80179772
  navicat 执行sql,profile是非常好的定位慢查询的方法

  小d课堂最后那点讲redis排行榜的数据还是要存到mysql里,里面讲了些设计表的要点
  1、表设计过程中应该注意的点即数据类型
1)更小的通常更好 控制字节长度              
2)使用合适的数据类型
如tinyint只占8个位,char(1024)与varchar(1024)的对比,char用于类似定长数据存储比varchar节省空间,如:uuid(32),可以用char(32).
3)尽量避免NULL建议使用NOT NULL DEFAULT ''
NULL的列会让索引统计和值比较都更复杂。可为NULL的列会占据更多的磁盘空间,在Mysql中也需要更多复杂的处理程序
  2、索引设计过程中应该注意的点
1)选择唯一性索引
唯一性索引的值是唯一的,可以更快速的通过该索引来确定某条记录,保证物理上面唯一
2)为经常需要排序、分组和联合操作的字段建立索引
经常需要ORDER BY、GROUP BY、DISTINCT和UNION等操作的字段,排序操作会浪费很多时间
3)常作为查询条件的字段建立索引
如果某个字段经常用来做查询条件,那么该字段的查询速度会影响整个表的查询速度        
4)数据少的地方不必建立索引 比如status字段,基本只有0和1两个字段
5)建立索引方法:在navicat里,右键设计表,点击索引输入字段名字,确定。查看表结构sql(ddl)已增加key。自己做实验,ORDER BY字段增加索引,10000条数据差了0.2秒左右
  3、sql优化,explain查看执行计划(注意:扫描行数会影响CPU运行,占用大量内存)
着重rows 行数过多一定意味着满,并且有占满内存的可能

简介:sql优化以及mybatis generator反向工程讲解
1) 能够用BETWEEN的就不要用IN
2) 能够用DISTINCT的就不用GROUP BY
3)  避免数据类型强转
4) 学会采用explain查看执行计划




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-674551-1-1.html 上篇帖子: springboot elasticsearch docker 下篇帖子: springboot mq docker
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表