IOC

IOC定义: Inversion Of Control 控制反转

​ 控制:资源的获取方式

  • 主动式: (需要什么资源都自己创建即可)

    1
    2
    3
    BookServlet{
    BookService bs= new BookService();
    AirPlane ap=new Airplane();//复杂对象的创建是非常庞大的工程,new来new去不好}
  • 被动式:资源的获取不是我们自己创建,而是交给一个容器来创建和设置

    1
    2
    3
    4
    5
    6
    BookServlet{
    BookService bs;
    public void test01(){
    bs.checkout();
    }
    }

容器的作用:管理所有的组件(组件就是有功能的类);假设bookservlet受容器管理,bookservice也受容器管理,则容器可以在上述代码执行的时候,自动探查出某些组件需要用到另一些组件。资源的创建和销毁交给容器来进行

也就是说,IOC就是变主动的new为被动的接收资源!

DI(Dependency Injection,依赖注入)就是对这种实现思想的一种描述:容器能知道哪个组件(类)运行的时候,需要另一个类;然后容器通过反射的形式,将容器中准备好的BookService对象注入到BookServlet中,运用反射给Bean赋值。

只要是容器管理的组件,都能使用容器提供的强大功能。

把对象交给容器来创建的操作,现在又叫做在容器中注册组件

SPRING框架

什么是框架?

框架是一种高度抽取可重用代码的一种设计

框架一定具有高度的通用性。

比如说 我们有时候会写一些Utils文件,比如JDBCUtils.java 抽取了之后还要打包,打包了可以变成jar包,jar包就是一些工具类。比如commons-fileupload

我们可以尝尝把一些高度重用的东西抽取出来,比如事务控制,强大的servlet,还有项目中的一些工具。把这些东西整体抽取出来,可以形成具有通用性的东西。

书城的项目,抽取出来的时候还能够适用于金融类的项目,具有通用性的东西,是多个可重用的模块的集合,形成一个某个领域的整体解决方案,这个就是框架,框架就是半成品软件。

SPRING框架的定义:SPRING框架是一个容器框架,用以管理service、DAO等所有组件。
正所谓容器 什么都可以往里面装,减少了配置,SPRING抽取了容器的功能

两个重要的东西:IOC和AOP

是一个容器,用来管理所有的组件(就是具有功能的类)

阅读全文 »

Spring MVC REVIEW

本项目是对SPRING的复习,配合B站雷神视频https://www.bilibili.com/video/BV1uE411C7CW?from=search&seid=344005634667549772

阅读全文 »

AOP复习

aop含义:面向切面编程,具体实现:动态代理
就是说在方法运行的前后 都要运行方法
具体来说就是在

  • 方法开始
  • 方法返回
  • 方法异常
  • 方法结束
    在这些地方调用方法的话叫做横切关注点
阅读全文 »

可能是因为使用过vpn或者代理,关机时忘记关了。
解决方案:cmd下命令执行 ipconfig/flushdns
清理dns缓存

因为Git的Http代理的问题,Git支持三种协议:git://、ssh://和http://,本来push的时候应该走ssh隧道的,但是因为设置了http代理,所以就走了http的代理,于是就提交不了了。
OK,找到原因了,那就取消http代理吧:

解决办法
在github项目在本地的根目录下打开git命令行,
执行下面的命令:
git config –global –unset http.proxy
git config –global http.proxy 127.0.0.1:7890 为全局的 git 项目都设置代理
————————————————
版权声明:本文为CSDN博主「对鸭」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42359718/article/details/114254337

pip install opencv-python -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

back-up

Filter和Interceptor区别

  • Filter是Servlet定义的原生组件,脱离Spring应用也能使用
  • Interceptor 是Spring定义的接口,可以使用Spring自动装配等功能

Spring boot 2学习笔记与简单实践


create date:2021-3-22 11:32:52

创建项目

直接File→Project然后点spring boot initializer 然后点上web 起个好听的名字
等待MAVEN配置好 项目 然后直接写controller

1
2
3
4
5
6
7
8
@RestController
public class HelloController {
@RequestMapping("/hello")
public String helloSpringBoot(){
return "Hello, Spring Boot 2!";
}
}

阅读全文 »

@SpringBootApplication=三个注解之和:

  • @SpringBootConfiguration

  • @ComponentScan

  • @EnableAutoConfiguration

    ​ 起作用的主要是@EnableAutoConfiguration这个注解。开启自动配置,告诉SpringBoot基于所添加的依赖,去“猜测”你想要如何配置Spring。比如我们引入了spring-boot-starter-web,而这个启动器中帮我们添加了tomcat、SpringMVC的依赖,此时自动配置就知道你是要开发一个web应用,所以就帮你完成了web及SpringMVC的默认配置了!我们使用SpringBoot构建一个项目,只需要引入所需框架的依赖,配置就可以交给SpringBoot处理了

    阅读全文 »

登录Mysql过程中,提示 errorCode 1045, state 28000

1
2
create connection SQLException, url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=false, errorCode 1045, state 28000
java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
阅读全文 »