分类目录归档:java

SpringBoot


SpringBoot 基本应用

约定优于配置

Spring Boot 是所有基于Spring 开发的项目的起点,Spring Boot 的设计是为了 尽可能的跑起来Spring 应用程序,并且尽可能减少配置 又称约定编程,是一种软件设计范式 本质上说,系统,类库或框架应该假定合理的默认值,而非要求提供不必要的配置,例如模型中有一个名为User类,那么数据库中对应的表默认为User

SpringBoot

spring 优缺点

优点

spring 是java 的轻量级代替品,无需开发重量级,Spring为企业级 JAVA开发了一种相对简单的方法,通过依赖注入和面向切面编程,用简单的

Read more

SpringMVC


MVC 模式

MVC 是软件工程一种软件架构模式,分离业务逻辑与显示界面的开发思想 1. M(model) 处理业务逻辑,封装实体 2.V(view) 视图,展示内容 3.C(controller)控制器,负责调度分发(1.接受请求,2.调用模型,3,转发视图)

SpringMVC

是封装了原来Servlet 中的共有行为,例如:参数封装,视图转发等,一种实现MVC设计模式的轻量级Web框架,通过注解,让简单 的java类成为处理请求的控制器无需实现任何接口,支持restful 编程风格的请求

/和/*的区别

/ 只能获取到类似/login ,/* 带后缀的都能获取

spring mvc 执行

Read more

spring JDBC template


Spring 的Jdbc Template

JdbcTemplate

jdbctemplate 是spring 框架中提供的一个模板对象,是对原始繁琐的jdbc API 对象的简单封装

核心对象

jdbcTemplate jdbcTemplate  = new JdbcTemplate(DataSource dataSource)

核心方法

int update():执行增删改语句
List<T> query() 查询多个
T queryForObject() 查询一个
new BeanPropertyRowMapper<>(): 实现ORM 映射封装

Spr

Read more

AOP


常用的动态代理结束

  1. jdk 代理,基于接口的动态代理技术,利用拦截器(必须实现invocationHandler)加上反射机制生成一个代理接口的匿名类,在调用具体方法前调用invokeHandler来处理,从而实现方法的加强。
  2. cglib 代理,基于父类动态代理技术,动态生成一个要代理的子类,子类要重写代理类的所有不是final的方法,在子类中采用方法拦截技术拦截所有的父类方法的调用,顺势加入横切逻辑,对方法进行加强。

JDK动态代理方式

jdk 工厂类

类加载器,被代理类所需要实现的接口,当代理对象调用接口中的任意方法,都会执行invocationHander 中的invoke方法
Pr

Read more

java 基础


java 基础

class 文件内容

class 文件包含java 程序执行的字节码,数据严格按照格式紧凑排列在class文件中的二进制流,中间无任何分隔符; 文件开头有一个0xcafebabe(16进制) 特殊的一个标志。

jvm 运行时数据区

.java源代码->.class 字节码->线程共享部分(方法区,堆内存)线程独占部分(虚拟机栈,本地方法栈,程序计数器) ->执行引擎->本地库接口->本地方法库

线程独占:

每个线程都会有它独立的空间,随线程生命周期而创建和销毁

线程共享:

所有线程能访问这块内存数据,随虚拟机或者GC而创建和销毁

方法区:

jvm

Read more