![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
框架技术
框架技术
原来是肖某人
杭州电子科技大学计算机硕士
展开
-
JPA学习——5.整合Spring
Spring配置文件<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http原创 2020-07-24 17:17:45 · 84 阅读 · 0 评论 -
JPA学习——4.JPQL
1.createQuery使用的类似hql语句的JPQL语句进行查询基本使用@Test public void test(){ EntityManager entityManager = entityManagerFactory.createEntityManager(); entityManager.getTransaction().begin(); String sql = "from Customer where id = ?0 "原创 2020-07-24 16:52:39 · 263 阅读 · 0 评论 -
JPA学习——3.缓存
hibernate和JPA默认开启一级缓存,所以在同一session中,同一条记录不需要查询第二次。但是在关闭session后,一级缓存就会被清空,以及不同session(EntityManager)之间以及缓存是不共享的。但是不同的session在二级缓存上是共享的...原创 2020-07-24 17:18:04 · 143 阅读 · 1 评论 -
JPA学习——2.关系维护
如何表示实体之间的关系,我们需要使用一对一、一对多、多对一、多对多的注解进行关系维护和声明1.双向一对一person类(1)@Entity@Table(name = "PERSONS")public class Person { private Integer id; private String name; private Card card; @Id @GeneratedValue(strategy = GenerationType.IDENT原创 2020-07-24 14:50:06 · 380 阅读 · 0 评论 -
JPA学习——1.入门
1.简介JPA(Java Persistence API)JPA时在多种ORM框架上提供了统一的规范,与JDBC相似,不同的是JDBC是在多种数据库基础上实现规范统一Hibenate是基于JPA的增强实现,是JPA的子集2. JPA组成部分ORM映射元数据 JPA的API 查询语句JPQL3.大致步骤创建persistence.xml,配置持久化单元(数据源、打印语句等) 创建实体类,使用注解描述实体类与数据库表之间的映射关系 使用JPA的API完成CRUD操作原创 2020-07-24 10:39:43 · 124 阅读 · 0 评论 -
Spring使用——JDBCTemplate+事务管理篇
JDBCTemplateSpring中为开发者提供了对JDBC进行操作的存取框架所需的依赖 <!-- spring-jdbc包括了一些如jdbcTemplate的工具类 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <versio原创 2020-06-21 19:20:10 · 431 阅读 · 0 评论 -
Spring使用——AOP篇
一、AOP有什么作用通过AOP,我们可以对业务逻辑的各个部分进行隔离,从而降低各个模块之间的耦合度。同时,不通过修改源代码,我们就可以在主干功能中增加新的功能底层原理使用了动态代理动态代理分成两类:JDK代理:通过实现与目标类相同的接口来完成目标方法的增强 CGLIB:通过继承目标类完成对目标的增强二、AOP术语连接点:可以被增强的方法 切入点:我们要增强的方法 通知:从逻辑代码中抽取出来的代码 切面:通知的封装类三、AOP操作下面两种方法都可以1.原创 2020-06-21 14:06:33 · 162 阅读 · 0 评论 -
Hibernate
Hibernate框架基础简介Hibernate是一个开放源代码的对象关系映射框架,对JDBC进行轻量级的对象封装提供从java类到数据表之间的映射提供了查询和事务机制用于减少操作数据库的操作量1.概述采用ORM(object/relation Mapping)映射机制,实现java对象和关系数据库之间的映射将SQL语句传给数据库,并且把数据库返回的结果封装成对象...原创 2019-09-16 21:44:57 · 208 阅读 · 0 评论 -
Redis学习——6.集群/主从复制
1.主从复制所谓主从复制就是在一个集群中,主服务器内的数据会复制同步到从服务器中。作用下面是主从复制的作用数据冗余:也就是数据备份故障恢复负载均衡高可用哨兵集群复制的原理Slave连接到Master后会发送一个sync命令请求同步Master接收到命令后启动存盘,同时收集所有修改命令。在后台执行完修改命令后。传送完整的数据文件给slave完成同步slave将其存盘并加载到内存中复制的类型全量复制:上述的类型就是全量复制,会在slave第一次连接上master后原创 2020-08-04 11:17:39 · 127 阅读 · 0 评论 -
SpringBoot源码学习——SpringApplication生命周期
从Spring应用进程来看,整体的生命周期大体如下SpringApplication初始化阶段SpringApplication运行阶段SpringApplication结束阶段SpringBoot应用退出1.SpringApplication初始化阶段该阶段属于运行前的准备阶段,为Spring应用的运行进行一些服务组件的构造和初始化该阶段分为构造阶段配置阶段1.1 构造阶段职责:根据当前环境选择合适的Web应用类的类名(Servlet/Reactive)从META-IN原创 2020-09-17 19:05:45 · 493 阅读 · 2 评论 -
SpringBoot源码学习——BeanDefinition注册以及@Configuration的解析
BeanDefinition——spring bean的建模对象那么什么是spring bean的建模对象呢?一言概之就是把一个bean实例化出来的模型对象?有人会问把一个bean实例化出来有Class就行了啊,Class也就是我们通常说的类对象,就是一个普通对象的建模对象,那么为什么spring不能用Class来建立bean呢?很简单,因为Class无法完成bean的抽象,比如bean的作用域,bean的注入模型,bean是否是懒加载等等信息,Class是无法抽象出来的,故而需要一个BeanDefini原创 2020-09-26 16:42:31 · 490 阅读 · 0 评论 -
SpringBoot源码学习——元数据
元数据:数据的数据。比如Class就是一种元数据。Metadata在org.springframework.core.type包名下,还有用于读取的子包classreading也是重要知识点。此体系大致的类结构列出如下图:可以看到顶层接口有两个:ClassMetadata和AnnotatedTypeMetadataClassMetadata对Class的抽象和适配从官方注释解释:这是一个对具体类的抽象访问接口。同时不需要目标类被加载public interface ClassMetadat原创 2020-09-17 10:14:45 · 896 阅读 · 0 评论 -
SpringBoot源码学习——SpringBoot中的事件监听
从Spring应用进程来看,整体的生命周期大体如下SpringApplication初始化阶段SpringApplication运行阶段SpringApplication结束阶段SpringBoot应用退出1.SpringApplication初始化阶段该阶段属于运行前的准备阶段,为Spring应用的运行进行一些服务组件的构造和初始化该阶段分为构造阶段配置阶段1.1 构造阶段职责:根据当前环境选择合适的Web应用类的类名(Servlet/Reactive)从META-IN原创 2020-09-20 15:58:17 · 404 阅读 · 0 评论 -
SpringMVC学习(1)——MVC
1 MVC1.1 什么是MVCMVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范。是将业务逻辑、数据、显示分离的方法来组织代码。MVC主要作用是降低了视图与业务逻辑间的双向偶合。MVC不是一种设计模式,MVC是一种架构模式。Model(模型):模型分为数据模型和逻辑模型,前者只包含数据,后者包含业务逻辑。我们在web中的模型一般还可以细分成POJO(Plain Ordinary Java Object)、VO(view object)、DT原创 2020-09-25 15:38:03 · 225 阅读 · 0 评论 -
我的第一个框架:简易版SpringMVC
最近从网上看到一篇做迷你SpringMVC的文章,就决定跟着做一下研究一下下面是具体的代码和解析一、项目架构这里我们缩减了注解的量只是用了最基本的几个注解来完成基本的映射调用同时这里没有模拟持久层的操作,只是完成前端页面到服务层的映射调用原文使用了Qualifier按名称进行注入,而我习惯使用@Autowired,所以进行了一部分修改原文链接https://blog.csdn.net/m0_46995061/article/details/106836614二、注解代码1原创 2020-06-21 11:31:50 · 120 阅读 · 0 评论 -
Spring使用——IOC篇
一、什么是SpringSpring是一个IOC和AOP框架容器具体描述:轻量级: 轻量级体现在Spring是非侵入式的,基于Spring开发的项目不一定要依赖于Spring的API 依赖注入 面向切面编程 容器: Spring管理所有对象的生命周期及其依赖的主入 框架: Spring通过使用一些简单的组件组合成一个复杂的应用(通过注解和配置文件组合这些对象) 一站式 Spring支持兼容其他优秀的第三方框架,并且自身也提供了一整套框架Spring特性通过IOC原创 2020-06-18 17:32:52 · 109 阅读 · 0 评论 -
SpringMVC——10.拦截器
SpringMVC的处理器拦截器类似于Servlet开发中的过滤器,用于对处理器进行预处理和后处理。拦截器链Interceptor Chain:拦截器链就是将拦截器按照一定顺序连接成一条链,在访问被拦截字段/方法时,拦截器链中的拦截器会按照之前定义的顺序依次执行。拦截器与过滤器的区别过滤器属于Servlet中的一部分,任何javaWeb工程都可以使用。而拦截器属于SpringMVC...原创 2020-05-01 00:22:05 · 119 阅读 · 0 评论 -
SpringMVC——9.异常处理
我们一般访问网页时,如果网页出现错误它会提示我们系统正在维护或系统出错,请重新尝试。那这样的提示怎么去做到呢。异常处理思路controller调用Service,Service调用Dao,异常都是向上抛出的,所以如果任一一层出现异常,最后都要丢到最上层由DispatcherServelt找异常处理器进行异常的处理。SpringMVC的异常处理1.自定义异常类package c...原创 2020-04-30 23:34:54 · 190 阅读 · 0 评论 -
SpringMVC——8.文件上传
1.环境设置1. 1 导入jar包<dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version>...原创 2020-04-30 16:35:47 · 98 阅读 · 0 评论 -
SpringMVC——7.响应数据与结果视图
1.返回String核心控制器会将返回的字符串抛到视图解析器中解析出完整页面路径,然后将根据页面中的格式将model中的数据取出对页面进行渲染。最后将渲染好的页面返回给前端。这是最常见基本的响应方式,前面基本都是这么写的。这里不做赘述。有需要的去前面看。2.返回void返回void意味着我们不希望通过视图解析器解析页面,但是如果我们什么都不写,默认会去查找当前控制器方法对应的请求路径+...原创 2020-04-30 11:56:10 · 145 阅读 · 0 评论 -
SpringMVC——6.常用注解
1.获取原生ServletAPI原生的Servelt通过HttpServletRequest为后台发送数据,通过HttpServletResponse获取处理后的数据代码实践1)网页部分网页发起目标路径访问请求<%@ page contentType="text/html;charset=UTF-8" language="java" %><html>...原创 2020-04-29 13:23:57 · 103 阅读 · 0 评论 -
SpringMVC——5.自动类型转换器
自动类型转换器前端传来的请求数据一般为string类型,但是由于自动转换器的存在,它会根据形参类型进行一个默认的转换。但是并非所有类型都可以通过框架定义的类型转换器进行转换。比如日期的转换,我们都知道日期会有很多中格式的写法:2020/02/01;2020-02-01.但并不是都可以默认被转换我java中的date类型的(2020/02/01可以,2020-02-01不可以会报错400),如需...原创 2020-04-28 17:38:47 · 268 阅读 · 0 评论 -
SpringMVC——4.请求参数绑定
请求参数绑定将前端页面数据封装传给控制器处理绑定方式如下:封装到基本数据类型中:根据页面中以key/value的形式向后台提交数据,根据key值或者表单工具中那些标签对应的name值去与处理器方法形参名进行对应注入 <!--根据形参名进行注入--> <form action="hello"> 姓名<input type="tex...原创 2020-04-28 17:37:49 · 88 阅读 · 0 评论 -
SpringMVC——3.实际操作/完成基本到后台映射
实际操作配置部分(完成基本的映射)web.xml:服务器启动时会被加载,服务器会实现web.xml中配置的对象并按照配置进行初始化配置 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.d...原创 2020-04-28 17:35:19 · 151 阅读 · 0 评论 -
SpringMVC——1.入门/执行流程
SpringMVC概述:一款Controller层框架,运用了MVC思想为什么要用springmvc(优势):角色划分清晰 与Spring集成度更高更契合 可适配:通过HandlerAdapter支持任意的类作为处理器类 可定制:HandlerMapping,ViewResolver等可根据需求进行定制重写 功能强大:有数据验证、格式化以及绑定机制 易于测试:通过sprin...原创 2020-04-28 17:27:05 · 108 阅读 · 0 评论