Java第三阶段复习:
1. Spring
1. IOC:
定义:Inverse Of Controller:反转控制,将bean对象的创建和对象之间的关联关系的维护由原来我们自己创建、自己维护反转给了spring
的容器来创建bean对象及维护关联关系
解决:解决了上层建筑严重依赖下层建筑的问题,实现了上层建筑对下层建筑的控制
实现:DI[Dependency Injection], xml解析+反射+容器+设计模式 2. Aop:
定义:Aspect Oreinted Programming:面向切面编程,是对OOP的补充,相互促进,在原有类的方法代码不变的情况下,对原有的方法进行功能性的拓展。
解决:关注点分离问题【希望不同的部分来处理不同的问题,每一部分只处理自己的问题】 实现:jdk动态代理和CGLIB代理
具体应用:声明式事务 、缓存、全局异常处理@ControllerAdvice 3.声明式事务:
@Transactional()
传播机制:propagation
required:
requires_new:
support:
隔离级别:isolation:
数据库的隔离级别:
uncommitted_read
committed_read
repeatable_read:mysql
serializable 回滚属性:rollbackFor={},norollbackFor=
默认只有RuntimeException 超时属性:timeout: 只读属性:readOnly:true 2. SpringMVC:
1.SpringMVC的运行流程图:
1.浏览器给服务器发请求,被服务器端的springmvc的前端控制器拦截
2.springmvc的前端控制器将请求交给处理器映射器【HandlerMapping】处理
3.
4. 2.SpringMVC的6个常见注解及每个注解的含义 @RequestMapping:映射请求url
@PathVariable:将路径占位符绑定到目标方法的参数上
@ResponseBody:返回json数据
@RequestBody:接收json对象信息 @RequestParam:接收请求参数
@RequestHeader:接收请求头 @ControllerAdvice:全局异常处理
@ExceptionHandler:局部异常处理 @NumberFormat:数值类型转换器
@DateTimeFormat:时间类型转换器 3.五个异常类【英文】:
SQLException
ClassNotFoundException
NullPointerException
BingdingException:
//ArrayIndexOutBoundException 3. MyBatis:
MyBatis和原生jdbc、hibernate、jdbcTemplate的优势
1.MyBatis首先是一个框架,处理有对数据表数据的增删改查操作之外,还有缓存机制、字段映射等功能
2.MyBatis支持动态SQL
3.MyBatis将表的关联关系直接映射为POJO对象的关联关系
4.MyBatis支持将java代码和SQL语句分离
5.MyBatis是一个半自动化的orm框架,便于项目后期维护和优化。 MyBatis的#{}与${}的区别:
#{}:类似于javaweb部分学过的preparestatement对象,采用占位符?预编译的方式,是sql安全的,没有sql注入问题
${}: 类似于javaweb部分学过的statement对象,直接将参数拼接到sql语句中,存在sql注入问题。 当然也不是所有的情况都是用#{},在特殊情况下,就使用${},例如:like后面的字段或者order by字段及表名 都使用${} 4. Oracle:
oracle和mysql的数据数据类型:
oracle数据类型:number、date、varchar2
oracle的group by:
oracle没有limit
oracle分页:借助于:rownum别名+子查询的方式
select *
from (
select rownum rn, ename,eid
from employee) tmp
where rn > 2 and rn <6 5. Maven
maven:使用过
maven的命令及每个命令的作用:
mvn clean: 清空target目录
mvn compile: 编译src/main/java
mvn test: 测试
mvn package: 将当前项目打成对应的包【jar、pom、war】
mvn install: 将当前项目打成的包扔到本地仓库中。
mvn deploy: 将本地仓库的项目部署到私服上。 6. Linux:
常用的6个linux命令,每个命令的含义:
find / -name *file*:查看某个文件名含有file的文件所在路径
cat 文件名 | grep 'hello world':查看文件内容是否含有指定的字符串 ps -ef | grep 服务名:查看某个进程是否启动的
netstat -an | grep 端口号:查看某个进程是否启动的 kill 【-9】 pid: 强制杀死一个进程 tar -zxvf 压缩包 -C /指定目录: 将tar.gz压缩包解压到指定目录 top: 查看cpu
df -h :查看磁盘大小的
free -m :查看内存的 软件:
解压安装:tomcat、
rpm: 安装rpm包:安装jdk
yum install 软件名:mysql 7. Redis-------------->Redis集群:
1.Redis是干啥的,缓存,加快查询效率,在service层使用,nosql 2.redis支持事务,但是事务支持不大好。 3.Redis的五种数据类型:
string:使用存储任意数据类型 hash:适合存储对象、map
set:适合存储set类型
list:适合存储set类型
zset【sorted set】:做游戏排名 8. Nginx:
nginx三大主要功能:
虚拟主机
反向代理
负载均衡 10.项目
同步请求:
异步请求 jsp:
html:${} 同步请求:
异步请求: PageHelper:
导入pageHelper的jar包依赖
在mybatis全局配置文件中配置pageHelper插件 在查询列表之前PageHelper.startPage(pageNum,pageSize)
查询列表
PageInfo pageInfo = new PageInfo(列表); Quartz:
Email: Echarts
Ueditor:
弹窗和遮罩
ztree Vue:
--->Router

Java第三阶段复习的更多相关文章

  1. java第三阶段作业总结

    Java第三阶段总结 前言 到这里,Java课程学习进入了尾声,在这学习过程中,我学习到很多,也发现了自己的很多不足,这篇博客主要针对的是Java整门课程学习的总结. 课程收获 对整门课程的学习,我有 ...

  2. Java第三阶段学习(十四、JSP动态页面、EL表达式、JSTL标签库)

    一.JSP技术 1.jsp脚本和注释 jap脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部,比如写在doget.dopost 内的代码 2) ...

  3. Java第三阶段学习(十三、会话技术、Cookie技术与Session技术)

    一.会话技术  1. 存储客户端状态 会话技术是帮助服务器记住客户端状态(区分客户端)的.  2. 会话技术 从打开一个浏览器访问某个站点,到关闭这个浏览器的整个过程,称为一次会话.会话技术就是记录这 ...

  4. Java第三阶段学习(十一、Servlet基础、servlet中的方法、servlet的配置、ServletContext对象)

    一.Servlet简介  1.什么是servlet: sun公司提供的一套规范(接口),用来处理客户端请求.响应给浏览器的动态资源.但servlet的实质就是java代码,通过java的API动态的向 ...

  5. Java第三阶段学习(十、XML学习)

    一.XML学习 1.模拟Servlet执行 在学习完前端及java与数据库后,将进行WEB编程阶段的学习.在WEB编程中,可以通过浏览器访问WEB服务器上的数据.这时WEB服务器就相当于另一台计算机. ...

  6. Java第三阶段学习(九、类加载器、反射)

    一.类加载器 1.类的加载: 当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化. 1.1 加载: 就是指将class文件读入内存,并为之自动 ...

  7. Java第三阶段学习(八:网络通信协议、UDP与TCP协议)

    一.网络通信协议 1.概念: 通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,在计算机网络中,这些连接和通信的规则被称为网络通信协议,它对数据的传 ...

  8. Java第三阶段学习(六、多线程)

    一.进程和线程的区别: 进程:指正在运行的程序,当一个程序进入内存运行,就变成一个进程. 线程:线程是进程的一个执行单元. 总结:一个程序运行后至少会有一个进程,一个进程可以有多个线程. 多线程:多线 ...

  9. Java第三阶段学习(五、流的操作规律、Properties流、序列化流与反序列化流、打印流、commons-IO jar包)

    一.流的操作规律 四个明确: 明确一:明确要操作的数据是数据源还是数据目的地 源:InputStream   Reader 目的地:OutputStream Writer 先根据需求明确是要读还是写 ...

随机推荐

  1. WebClient上传下载文件,小白篇

    WebClient的上传文件一直报错,各种百度各种稀奇古怪的东西,终于百度到一篇小白学习篇 转自: https://www.cnblogs.com/cncc/p/5722231.html 使用C#We ...

  2. sqli-labs(12)

    0X01摘要体现(小编这里傻逼了 可以直接用group_concat函数绕过显示问题我还在用limit绕过) 还是这个模块  我们很熟徐那么先来尝试一下 单引号加入 无报错信息 哦豁 加入双引号试试呐 ...

  3. 程序员心髓:移动应用API设计10大技巧

    移动App与基于Web/云服务发生对话是很常见的事情,最简单的可能仅仅只是检索数据,但也可能包含发送数据.用户授权和管理.而这也就验证了为移动应用建立API的重要性,为此,我们特总结了10大移动API ...

  4. Springboot application 本地HTTPS配置

    使用keytool 命令,生成一个数字证书: keytool -genkey -alias tomcathttps -keyalg RSA -keysize 2048 -keystore key.p1 ...

  5. 20165218 《网络对抗技术》 Exp9 网络安全基础

    Exp9 网络完全基础 基础问题回答 SQL注入攻击原理,如何防御 所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. ...

  6. php缓冲区

    我理解的要点: 1.所有缓冲区控制是在一个PHP执行进程中发生的.如:你打开n个demo.php,他们之间开启和关闭缓冲是互不影响的. 2.output_buffering在程序中用ini_set是不 ...

  7. c/c++二级指针动态开辟内存

    c版: #include <stdio.h> #include <stdlib.h> #define row 4 #define col 8 int main() { int ...

  8. c语言中static关键字用法详解

    个人总结: 1.C不是面向对象的,在c中static修饰的变量或函数仅在当前文件中使用 2.C可以对局部变量使用static修饰(注意面向对象的java则不行),其放在全局区一直存在 概述static ...

  9. ls -i

    ls的不同选项有不同的含义: -l 是用long的长格式显示 条目信息 -a 显示所有的文件, 包括隐藏文件 -i: 是显示inode, 主要是用来查看硬链接的

  10. eclipse有时候导入了包,但是还是有红线,找不到

    clean一下工程,选择project->clean->clean project selected blow并且选择build only the selected project