ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

springboot开发笔记

2022-08-11 14:03:37  阅读:184  来源: 互联网

标签:springboot 映射 nacos 笔记 开发 条件 左表 where PO


1.问题描述:使用mybatisplus时,由于mybatisplus本身为我们配置好了许多东西,也不需要写xml文件,所以我一开始不懂它会映射哪张数据表,经查阅资料

解决办法为在类上方添加@TableName(“my_user_table”)

 

使用mybatisPlus时,会确定实体类和数据的映射关系

具体的映射方法有两种:

    ①默认:采用驼峰映射规则,例如MyUserTable 对应的数据库表为 my_user_table ;  TEMyUserTable 对应表名为t_e_my_user_table;

    ②注解@TableName     在类名上方添加@TableName("my_user_table")

2.left join中关于whereon条件的几个知识点:

   1.多表left join是会生成一张临时表,并返回给用户    2.where条件是针对最后生成的这张临时表进行过滤,过滤掉不符合where条件的记录,是真正的不符合就过滤掉。    3.on条件是对left join的右表进行条件过滤,但依然返回左表的所有行,右表中没有的补为NULL    4.on条件中如果有对左表的限制条件,无论条件真假,依然返回左表的所有行,但是会影响右表的匹配值。也就是说on中左表的限制条件只影响右表的匹配内容,不影响返回行数。 结论:    1.where条件中对左表限制,不能放到on后面    2.where条件中对右表限制,放到on后面,会有数据行数差异,比原来行数要多 3.问题描述:使用mybatisplus时,当实体类中的属性不全是数据表中的字段时,若不进行处理就会报错

        @TableName:数据库表相关

        @TableId:表主键标识

        @TableField:表字段标识

        @TableLogic:表字段逻辑处理注解(逻辑删除)

解决办法:在实体类的属性上面加上@TableField(exist = false)注解后,此字段就不会映射数据库了。

4.~~~~业务逻辑不写在controller层的原因

1.Controller——控制器,主要负责业务的调度,而业务主要放在service中来实现

2.代码都写在controller会看起来很乱!易读性差!

3.也是最重要的一条!applicationContext-db.xml中配置的事务配置的事务不会生效!

 

5.java有几种对象(PO,VO,DAO,BO,POJO)  

        一、PO:persistant object 持久对象,可以看成是与数据库中的表相映射的java对象。使用Hibernate来生成PO是不错的选择。

     二、VO:value object值对象。通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。但应是抽象出的业务对象,可以和表对应,也可以不,这根据业务的需要.

PO只能用在数据层,VO用在商业逻辑层和表示层。各层操作属于该层自己的数据对象,这样就可以降低各层之间的耦合,便于以后系统的维护和扩展。

好处:这样可以减少大量的工作量(也就意味着减少bug,减少风险),也不需要担心未来的维护工作!

参考文章:https://blog.csdn.net/jikefzz1095377498/article/details/79237618

6.配置nacos

新版本的nacos默认是以cluster方式启动

解决办法:修改startup.cmd,修改mode值为standalone

set MODE="standalone"

nacos配置mysql数据源启动出现No DataSource set的问题

官网上的是这样的db.url.0=jdbc:mysql://localhost:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true,这个应该是没更新,在后面加一个参数就行了db.url.0=jdbc:mysql://localhost:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&serverTimezone=UTC

问题解决

参考文章:https://blog.csdn.net/qq_41017324/article/details/117340029

 

标签:springboot,映射,nacos,笔记,开发,条件,左表,where,PO
来源: https://www.cnblogs.com/liweicheng6066/p/16574804.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有