[总]大版本总结ssm(三大框架细节) [二]注解+[三]依赖大全{持续更新中}

112 阅读5分钟

跳转二---> 

/****springboot */

1. Parent标签的定义.parent标签,是Spring官网负责维护, 在其中定义了几乎所有的框架与SpringBoot兼容的版本信息.

作用: 集中定义版本号

2. build标签作用: springboot打包时必须添加的 没有该插件 导致jar包不能运行

3. properties配置文件说明

    01 key-value结构 key=value  不要写多余的空格

    02 properties 本身就是字符串类型 无需加''号

    byte short boolean char int float long double

    idea 设定utf-8 是idea读取的字符集编码

                    程序通过io进行读取,默认ISO-8859-1

                    所有中文必定乱码 需要设定字符集

4. yml文件说明

    数据结构 key:(空格)value

    yml文件有层级结构 注意父子级的语法的缩进

    yml文件程序默认读取采用utf-8编码

5. spring boot 

热部署: 每次修改代码后 需要手动重启服务器 在开发阶段是否有一种高效的的机制, 

每次修改代码后程序自动重启 组合键: ctrl + shift + alt + /  -->Registry

勾选compiler.automake.allow.when.app.running

6. springboot 的核心

    开箱即用 只需要导入特定的jar包文件 则可以直接使用其中的功能

    根本原因 springboot是对框架的简化 内部进行了扩展 不需程序员操作

7. lombok作用

简化用户创建实体对象pojo的过程 插件自动完成实体对象中常用方法的构建

get/set/toString构造

    思考: lombok使用需要安装插件才能使用, 换到linux里是否需要提前安装插件???

    --> 不需要 lombok在编译器有效 编译后自动添加get/set等方法

8. springboot加载器顺序

    8.1 main ->  @SpringBootApplication -> 动态获取当前启动类的包路径

    -> 通过包扫描将@Controller@Service,Dao交给容器管理

    -> spring容器类维护一个map集合 类名小写(key), 实例化对象value(类名)

    ->  对象创建实例化 查看@Autowired 整个Spring容器内部都没有该对象

报错 注入失败 map中维护了注入的对象 则注入成功 则最终对象实例化正常

    -> spring容器启动正常 等待用户调用

------------>    9. mybatis   <----------------

编辑mapper的配置文件

<mapper namespace="接口全路径">

    <select id="必须与接口方法名相同" resultType="类名(全路径/别名yml)">

        sql  -----> 注意绝对不能写分号

    </select>

    <resultMap id="userRM" type="类名">

    字段 id column="转化前" property="转化后"

<mapper>

/*

mybatis:  

  #设置别名包

  type-aliases-package: com.jt.pojo

  #加载映射文件

  mapper-locations: classpath:/mappers/*.xml                

  #开启驼峰映射

  configuration:

    map-underscore-to-camel-case: true

*/

==============> 接口注解说明

注意:  SQL语句通过注解表示在接口方法中(简单操作)

@Select("select * from demo_user where id= #{id}")

-----------> mybatis-plus <------------

背景: 简化开发(CRUD)

以对象的方式操作数据库

01. 继承公共接口baseMapper<pojo对象类型>

02. 添加新的依赖 -->依赖大全 6项

03. 注解(pojo)-->注解大全中查看12项

04. 将原来的yml文件 mybatis改为 mybatis-plus

mp中包含的方法

selectById  selectList updateById update

//---=====-> 条件构造器querywapper<> 逻辑运算符

    eq = , gt > ,it < , >= ge , <= le , != ne 

    in关键字 包含(...)

    order by 排序 asc升序(默认) desc降序

//---=====->动态sql   queryWrapper.gt(boolean,"字段",字段值)

true表示存在 false直接删除这个字符(不查 否则报错)

--------------   结束   ---------------------------

Json结构
Json--> JavaScript Object Notation 
01. 轻量级数据交换格式
02. http请求协议 (由来) 
-->字符串
-->字节信息A-B获取数据http请求
03 基本格式
--> 对象格式
--> 数组格式
--> 嵌套格式

        =====>  ajax 特点  <=====

1. 局部刷新  异步调用
ajax是实现前后端交互, 最为常见的一种方式

2. 历史 
原生的js包含ajax 但是操作比较复杂 20行左右
jq 是js的高级函数类库
jq 提供了一种高级的ajax请求方式

同步与异步的区别

同步: 用户发起请求 要求第一时间服务器作出响应 用户不能进行其他操作 只能等待
异步: 用户发起请求时 要求服务器作出响应  用户可以进行其他操作 通过回调函数
进行通知用户 局部刷新多次

ajax返回值
说明后台返回的是json串 

=------------- js 变量基本用法 ------------=


var 变量: 全局范围声明一个变量 该变量没有作用域(变量重名既覆盖)
let关键字 作用域范围存在(推荐使用)
const: 标识常量, 该数据不变

            RestFul结构
简介: 简化get请求方式 变量省略 直接写内容
1.restFul请求类型 http://localhost:8090/user/大乔/18 请求类型: XXX
注意事项: 
1. 简化get请求
2. 采用无状态的请求名称
接受方式  @GetMapping(/../${...})
普通参数 使用 @PathVariable 
对象请求 直接对象接受 不写注解 详细见注解栏目 14

        ajax(axios)-->post前端发送

let 对象 ={name: ***,...}
axios.post("http://localhost:8090/saveUser", 对象)

注意 后端接收需要使用一个注解 @RequestBody 将json串转化成对象User
@RequestBody
@ResponseBody 介绍在下面

        解构赋值操作
直接将数据获取
ES7 提供了 await async 简化axios操作
用法说明:  await 标识异步调用 解构操作
async 用在函数中 支持解构
!!!必须同时使用

    v-model 双向数据绑定
vue使用语法: (访问观看)
harrylyj.blog.csdn.net/article/det…

----------- 前端脚手架vue---------

使用前端框架 node.js提供的脚手架 组件定义

     vue Router存在的意义

---> 传统页面跳转

后端服务器进行页面跳转, 所有的请求都会经过后端,导致后端服务器压力过大

 这种 用户通过后端服务器才能获取页面相关信息的方式 称为 

后端路由/服务器路由.

弊端:  这种方式是一种集中式的管理,性能瓶颈在服务端

---> 现在页面跳转

前端路由/客服端路由  将所有的路由的配置生成JS,保存到浏览器中.

当用户发起某个请求时,自己映射对应的请求页面信息(组件),

之后直接访问静态资源.这样的方式速度更快.



事务控制()

1. 原子性 一个方法中的业务要么都成功 要么都失败

2. @Transactional 这个注解用法

1.如果控制的方法出现了运行时异常则事务自动的回滚.

2.如果控制的方法 检查异常(编译异常), 事务不会自动回滚,Spring任务程序既然已经提示需要异常的处理.则默认由程序员自己控制.Spring不负责管理.

2.注解属性

rollbackFor: 遇到什么类型, 异常回滚事务,

noRollbackFor: 遇到什么类型的异常 事务不回滚.

关于属性说明: 一般工作中都采用默认策略,特殊条件下才使用该配置.

@Transactional(rollbackFor = Exception.class)






注解大全

[二] java--> SpringBoot @注解大全总结(持续增肥中)[配合一使用]_pingzhuyan的博客-CSDN博客注解大全1.@RestController2.@controller只是用restcontroller注解controller方法中无法返回jsp页面视图解析器不起作用return直接返回也就是说返回json串使用@RestController3.@PropertySource根据指定路径加载配置文件,交给spring容器管理类中的注解@***(value="classpath",encoding="utf-8")4.@Value为...https://blog.csdn.net/pingzhuyan/article/details/120268125?spm=1001.2014.3001.5501