Spring
Spring介绍spring全家桶:spring , springmvc ,spring boot , spring cloud
spring: 出现是在2002左右,解决企业开发的难度。减轻对项目模块之间的管理, 类和类之间的管理, 帮助开发人员创建对象,管理对象之间的关系。 spring核心技术 ioc , aop 。能实现模块之间,类之间的解耦合。
耦合:是指两个或两个以上的体系或两种运动形式间通过相互作用而彼此影响以至联合起来的现象。
解耦合:指将程序的结构变得松散不是固定的而是可变化的 例如接口的实现类是可以更换的 而直接写的类是顶死的 解耦就是用数学方法将两种运动分离开来处理问题。程序的解耦合大概就是让代码和程序不绑定不互相依赖
依赖:classa中使用classb的属性或者方法, 叫做classa依赖classb
框架怎么学: 框架是一个软件,其它人写好的软件。 1)知道框架能做什么, mybatis–访问数据库, 对表中的数据执行增删改查。 2)框架的语法, 框架要完成一个功能,需要一定的步骤支持的, 3)框架的 ...
SpringMVC
SpringMVCSpringMVC:是基于spring的一个框架, 实际上就是spring的一个模块, 专门是做web开发的。 理解是servlet的一个升级
web开发底层是servlet , 框架是在servlet基础上面加入一些功能,让你做web开发方便。
SpringMVC就是一个Spring。 Spring是容器,ioc能够管理对象,使用, @Component, @Repository, @Service, @Controller SpringMVC能够创建对象, 放入到容器中(SpringMVC容器), springmvc容器中放的是控制器对象,
我们要做的是 使用@Contorller创建控制器对象, 把对象放入到springmvc容器中, 把创建的对象作为控制器使用 这个控制器对象能接收用户的请求, 显示处理结果,就当做是一个servlet使用。
使用@Controller注解创建的是一个普通类的对象, 不是Servlet。 springmvc赋予了控制器对象一些额外的功能。
web开发底层是servlet, spring ...
SpringSecurity
SpringSecurity从入门到精通0. 简介 Spring Security 是 Spring 家族中的一个安全管理框架。相比与另外一个安全框架Shiro,它提供了更丰富的功能,社区资源也比Shiro丰富。
一般来说中大型的项目都是使用SpringSecurity 来做安全框架。小项目有Shiro的比较多,因为相比与SpringSecurity,Shiro的上手更加的简单。
一般Web应用的需要进行认证和授权。
认证:验证当前访问系统的是不是本系统的用户,并且要确认具体是哪个用户
授权:经过认证后判断当前用户是否有权限进行某个操作
而认证和授权也是SpringSecurity作为安全框架的核心功能。
1. 快速入门1.1 准备工作 我们先要搭建一个简单的SpringBoot工程
① 设置父工程 添加依赖
<parent> <groupId>org.springframework.boot</groupId> <artifactId>s ...
Mybatis/Mybatis-Plus
MyBatis第一章(ssm = spring + springmvc + mybatis)
三层架构界面层: 和用户打交道的, 接收用户的请求参数, 显示处理结果的。(jsp ,html ,servlet)业务逻辑层: 接收了界面层传递的数据,计算逻辑,调用数据库,获取数据数据访问层: 就是访问数据库, 执行对数据的查询,修改,删除等等的。
三层对应的包 界面层: controller包 (servlet) 业务逻辑层: service 包(XXXService类) 数据访问层: dao包(XXXDao类)
三层中类的交互
用户使用界面层--> 业务逻辑层--->数据访问层(持久层)-->数据库(mysql)
三层对应的处理框架 界面层—servlet—springmvc(框架) 业务逻辑层—service类–spring(框架) 数据访问层—dao类–mybatis(框架)
2.框架 框架是一个舞台, 一个模版
模版: 1. 规定了好一些条款,内容。 ...
Servlet
Servlet关于系统架构
系统架构包括什么形式?
C/S架构
B/S架构
C/S架构?
Client / Server(客户端 / 服务器)
C/S架构的软件或者说系统有哪些呢?
QQ(先去腾讯官网下载一个QQ软件,几十MB,然后把这个客户端软件安装上去,然后输入QQ号以及密码,登录之后,就可以和你的朋友聊天了,就可以使用这个软件了。)
C/S架构的特点:需要安装特定的客户端软件。
C/S架构的系统优点和缺点分别是什么?
优点:
速度快(软件中的数据大部分都是集成到客户端软件当中的,很少量的数据从服务器端传送过来,所以C/S结构的系统速度快)
体验好(速度又快,界面又酷炫,当然体验好了。)
界面酷炫(专门的语言去实现界面的,更加灵活。)
服务器压力小(因为大量的数据都是集成在客户端软件当中,所以服务器只需要传送很少的数据量,当然服务器压力小。)
安全(因为大量的数据是集成在客户端软件当中的,并且客户端有很多个,服务器虽然只有一个,就算服务器那边地震了,火灾了,服务器受损了,问题也不大,因 ...
多线程初识
每日一记之多线程初识
在这之前我们要搞清楚进程与线程之间的区别。
进程: 是程序执行的一次过程,或是正在运行的一个程序,是一个动态的过程,由它自身的产生,存在和消亡的过程。
线程: 进程可以进一步细化为线程,线程指的是一个进程的执行过程中,同时执行了多项任务 例如:到中午了 我一边吃着饭一边玩着手机一边在聊天, 我在这个进程中同时执行了三个任务(分别是 吃饭、玩手机、聊天)。
注: 对于单核心cpu来说 多线程并不是真正意义上的多线程 而是处理速度太快让你误以为实在同时处理任务。多核心cpu则能带来真正的多线程处理,随着当今科技的发展电脑的cpu也都是多核心的了
创建多线程的三个方法:
继承Thread类 重写**void run()方法 创建对象(创建线程) 调用start()**方法启动线程 注: Thrad类实现了Runnable接口
实现Runnable接口 实现void run()方法 创建对象,再创建一个Thread对象将刚刚创建的对象放入(创建线程),在使用刚刚创建的Thread对象调用**start()**方法启动线程
实现Callable接口(泛型接口 需要 ...
《Java并发编程之美》读书笔记
《Java并发编程之美》读书笔记
收到pymjl大佬《Java并发编程之美》读书笔记的启发,于是决定自己也写一个,帮助自己理解和回顾
第一章 并发编程线程基础思维导图下载地址
第二章 并发编程其他基础知识思维导图下载地址
第三章 Java并发包中ThreadLocalRandom类原理剖析
ThreadLocalRandom 类是 JDK 7 在 JUC 包下新增的随机数生成器,它弥补了 Random类在多线程下的缺陷。
Random 类及其局限性先看看 java.util.Random 的使用方法。
public class RandomTest { public static void main(String[] args) { //创建一个默认种子的随机数生成器 Random random = new Random(); //输出10个在0~5(包含0,不包含5)之间的随机数 for (int i = 0; i < 10; i++) { System.o ...