10.20工作学习记录 spring事务管理 sql组合查询union 全文本搜索 设计模式 合成复用原则 各种关系 依赖 聚合 组合 实现 泛化 关联

 刷了一道简单力扣  求出数组中 两数之和符合目标值的两个元素 并返回元素下标 直接暴力遍历破解

Spring的事务保障数据层或业务层的数据库操作成功或同失败

只会对Error异常RuntimeException异常及其子类进行事务回顾,其他的异常类型是不会回滚的,对应IOException不符合上述条件所以不回滚  

spring使用事务:首先引入事务数据源 然后在需要用事务的类或者方法上使用@trasactional注解再在配置类上加入@EnableTransactionManagement注解  

Spring事务角色  事务管理员(servuce中的类注解)与事务协调员(数据层的方法)  

可以使用@transaction注解的rollbackFor属性来加入回滚的异常(因为不补充的话 IO异常是默认不回滚的)  可以加入日志功能 不管操作是否成功 操作必须留痕 

该案例需要设置事务传播行为  设置方式是在业务层logservice接口的transaction注解上加入propagation属性 = required_new  如果有事务 就新建一个事务  这样这个事务就跟操作分离的 不论操作有没有成功 都会记录下来  此处值得注意 对于日志 用了 try  finally 即一定会运行

也就是说 就算

前面两个update操作都回滚了 但是log操作不会回滚

SpringMvc学习 接收请求、接收数据、响应结果 :三个重点注解: @Controller注解 设定Springmvc的核心容器bean  @Restmapping注解设定当前控制器的请求访问路径 @ResposeBody 设置当前控制器方法响应内容为当前返回值

日期格式错误问题:

mysql学习: 组合查询union 可以联合两条sql 有些类似两个where条件  组合排序中 只能在最后一条select语句的最后 来添加排序条件  并且只能有一个排序条件   union会自动去重  但是union all就不会去掉重复的部分 会全部展示出来

全文本搜索Match()为指定搜索的列,Against()指定要搜索的表达式

在插入数据的章节中 发现可以插入检索出的数据 

在做sql语句题时 发现了一种 有点傻呗的拼接两个select的方式  前一种查出p_name后一种将自己查出来的列名C_name改为p_name 这样他们就可以出现在同一列

将distinct加在字段名前可以去重

在牛客刷题过程中发现可以使用not like 来找出描述中未出现 toy 一词的产品

mysql中可以用substring来截取字段中的字符

计算某个Date是否为某年某月内的快捷用法

失误总结:count是求行数,sum是求和

此处通过排序和limit限制结果结合 来找出了不超过10美元的最贵商品

条件中也可以使用聚集函数 例如 sum函数

设计模式:合成复用原则  不推荐继承   A去用B 类的方法  如果A去继承B  则会使两者的耦合性变强        依赖是B的方法中有A作为参数传入进来   聚合是 B中有个set方法可以传入A  在B创建好的时候 就new出了一个A  这就构成了一个组合的关系  松耦合

各种关系: 依赖:在类中用到了对方 就称之为依赖  后面的关系都属于依赖关系范畴   泛化关系:继承其实就是泛化关系  实现关系 就是某个类实现了某个接口 他们之间就存在实现关系  关联关系 其实是类与类的联系   具有导航性 下图为关联关系  person具有idcard属性  而idcard又有一个使用人   

聚合关系是关联关系的特例  是整体与部分的一种关系  就是电脑类中包含鼠标和显示器 但是鼠标和显示器并没有包含电脑  是单向的一种使用    组合关系 :直接new出来  当电脑创建 鼠标也创建出来 不可分离  则为组合关系 人与头的关系 身份证丢了可以补 头没了人也没了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值