其他分享
首页 > 其他分享> > springboot开发笔记

springboot开发笔记

作者:互联网

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