`
- 浏览:
412805 次
- 性别:
- 来自:
北京
-
[color=darkred][color=blue]
12月10日
1.IOC控制反转———由容器维护程序之间的 依赖关系! (好莱坞原则)
2、依赖注入—— 从注入的角度
i 接口注入
ii 方法注入
iii 构造子注入
3、BeanFactory
beanFactory在 大多的情况下不直接使用,而是使ApplicationContext
4、XMLBeanFactory的2种加载方式(1)class path
(2)FILE
5.BeanFactory管理Bean(组件)的生命周期。
6.Bean的 定义
<bean id="bean的名字 " name="别名 可以用各种字符"
class="类名 必须是 全限定类名"
singleton="ture 表示单例 false表示原型 默认情况为单例 对于原型的 处理采用克隆的方法 克隆分为深度克隆,和浅克隆"
/>
7 通过set方法 的 注入依赖
12 月12日
1.复杂属性 (重点)
2.自动 装配:在 bean过多的时候 不建议使用
3、继承 关系 (重点)
通常我们所用的继承关系由两种:(1) 种是两个具体 类直接的 父子继承类
(2)通过 IOC的机制,用配置文件实现两个 类的继承关系
abstracat : 针对父类,将其认定为 true 该类为抽象类,但可能不是 真 正意义上的 抽象类
parent : 针对子类,继承上面abstracat中的类】
4.lookup.method 通过IOC机制实现抽象类中的方法实例化
注意要引入其中cglib_no .jar
返回决体的 bean对象,加上一个 具体的抽象类中的方法
<lookup_method bean="最佳实现将其设定为原型" name=" 抽象类中的 方法"/>
5.依赖检查 :dependency_check="none|不进行依赖检查,simple="基本类型的 属性" objects="对象间的 关联检查" all="所有 的 属性" "
不建议使用
6.factory-method=" "
factor-bean=" "
7.bean的 生命周期的回调
Spring 中的 AOP框架
一AOP中的 一些术语
1.切面(Aspect): 程序中所关注的 焦点问题, 最常见的 例子日志记录
2.连接点 (Joinpoint):应用程序执行过程中插入切面的地点。如方法调用前 后,异常抛出时。
3.通知(Advice):通知切面的实际实现,也就是将要对切面作什么事。
4.切入点(Pointcut):告诉 通知在 那些连接点上发生。连接点中一定存在切 入点。
5.引入(Introduction):允许你为已存在的类添加新的方法和 属性
6.目标对象(Target):被通知的 对象
7.代理(Proxy):将通知应用到目标对象后创建的对象
8.织入(Weaving):将切面应用到目标对象 从而创建 一个 新的代理对象的过程
12月14日
一、spring 的 AOP的实现
1.实现 了 AOP联盟借口
2.只支持方法连接点
3、运行期植入
二、通知的 4中类型:
1、前置通知(在调用方法前 ) 如用于:安全检查
2、后置通知(在应用程序之后) 如用于:日志
3、环绕通知 主要用于启动事务
Public interface MethodInterceptor extends Interceptor{
Object jnvoke(MethodInvocation invocation) throws Throwable;
}
通过
4、异常通知
(1) void afterThrowing(Throwable throwable)
(2)void afterThrowing(Method method ,Object[] args,Object target,Throwable throwable)
注意:通知是无状态的 ,服务多个 并发请求
三、定义切点:
public interface Pointcutp{
ClassFilter getClassFilter();
MethodMatcher getMethodMatcher();
}
// 类的切入
public interface ClassFilter{
boolean matches(Class clazz);
}
// 方法的 切入三中情况
public interface MethodMatcher{
boolen matches(Method m, Class targetClass);
boolen isRuntime(); //判断返回时 true 还是 flase
boolean matches(Method m, Class target, Object[] args); //当 上面的 方法返回true时调用 这个动态方法
}
四、Advisor的 运用
//连接切入点和通知的 类
public interface PointCutAdvisor{
Pointcut getPointcut();
Advice getAdvice();
}
五、Spring的 静态切入点
1、方法名字匹配的切入点 (NameMatchMethodPointcut)
public void setMappedName(String)
public void setMappedNames(String[])
2、正则表达式切入点 (RegexpMethodPointcut)
. 匹配任意字符;
+ 前一个 字符一次或多次;
* 前一个 字符0或多次;
{n} 前一个字符的 准确次数;
\ 转义字符 ;
Spring 的 动态切入点 (不推荐 使用)
12月17日
Spring 的持久化支持
1.Spring的DAO理念
Spring提供了一个Dao接口。
JdbcDaoSuport类 要 依赖与JDBC Template模板类
Hibernate DaoSuport类要依赖与Hibernate Template模板类
JdbcDaoSuport类 中的两个重要属性:
* DateSource datesource
JdbcTemplate jdbc template
Hibernate DaoSuport 中的两个 重要属性 :
* SessionFactory sessionfactory
HibernateTemplate hibernateTemplate
(1) JDBC Template
首先描述实现DateSource属性,
用(增)update(sql);
update(sql,Object) ; 一个参数情况
update(sql,Object[]); 多个参数情况
(查)query*(sql,Object[]);
常用: queryForList方法接收;
注意返回的 式map类型的封装方式
(2)Hibernate Template
首先实现SessionFactory sessionfactory
用 Save(object);
update(object);
delete(object);
SaveOrUpdate();
merge();
(查)find*(HQL,Object[]);
load(pk);按照主键装载;
spring 的 事物管理
1事务的几个属性:
(1)传播性 PROGATION_MANDATORY 一个 方法或操作必须运行在一个事物之中 (不会开启事物)
PROGATIOM_NESTED 嵌套性事物中
PROGATION_NEVER 不应该运行在事物中
PROGATION_NOT_SUPPORTED 不应运行于事物中 ,当开启事物时事物刮起
* PROGATION_REQUIRED 必须运行在事物中,可以开启事物
* PROGATION_REQUIRED_NEW 必须 运行在新的事物中
PROGATION_SUPPORTS 不需要事物
(2)隔离级别 脏读:由于没有提交 引起的
不可重复读:当用户在浏览信息的 时候,数据发生了改变
幻读:当作用户作 一次查询的时候 ,经过短暂的 时间,发现数据发生了增加
为了 解决这几种情况,制定了4 种隔离级别:
为提交读:ISOLATION_READ_UNCOMMITTED
提交读 :ISOLATION_READ_COMMITTED 解决了脏读问题大部分数据库采用
重复读 :ISOLATION_REPEATABLE_READ 没有解决幻读
序列化 :ISOLATION_SERIALIZABLE
由数据库默认采用隔离级别:ISOLATION_DEFAUIT
(3) 只读属性:readonly
12月29日
Spring的MVC简单介绍:
1.中央控制器:DispatcherServlet
/WEB-INF/${servletName}-servlet.xml
映射方式:
Url----Bean
*默认方式: (1)名 字的 映射 BeanNameUrlHandlerMapping
Url=A.htm
<bean name="/A" class=" "/>
缺点:控制器暴露,但推荐使用
(2)名字不同的映射 SimpleUrlHandlerMapping
Url=AA.htm
<bean id="handlermapping" class=" " >
<property name="mapping">
<props>
<prop key="AA.html" key中是URL的名字>A</prop>
</props>
</property>
</bean>
安全但比较麻烦
2.Controller接口 (控制器)
(1)AbstractController
简单的接口,提供国际化等
(2)AbstractFormController 表单的 处理还原
SimpleFormController
get--要对应formView
post--onSubmit()
(3)BaseCommandController
AbstractCommandController 根据type=" "进入不同的操作
(4)AbstractWizardFormController
向导式的控制器
3.ModelAndView
ModelAndView ("页面的名字"," 传进的属性"," 绑定属性的值")
4.UrlMapping
配置文件必须放在/WEB-INF/中,交由控制器处理
spring中的远程方法调用
1. rmi
服务器: org.springframework.remoting.rmi.RmiServiceExporter类
几个重要属性:* serviceName 服务名
* service 用于处理rmi请求的类
* serviceInterface 接口
registryPort 端口
客户端: org.springframework.remoting.rmi.RmiProxyFactoryBean
几个重要属性:* ServiceUrl 连接串 例如: rmi://ip[:port]/serviceName
* serviceInterface 接口
2.http 用他的好处是可以穿透防火墙限制
服务器: org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter
几个属性:service 服务
serviceInterface 接口
客户端: org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean
几个属性: serviceUrl 连接串 例如:http://ip:port/servce
serviceIterface 接口
[/color][color=blue][/color][/color]
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
在 Spring Boot 2.5.0 中,项目开发流程通常包括需求分析、概要设计、详细设计、编码、测试和部署等几个阶段。在每个阶段都需要遵守一定的流程和规范,以确保项目的质量和可维护性。 环境搭建 在 Spring Boot ...
内容概要:超详细SpringMVC笔记,包含初始SpringMVC,请求与响应,REST风格,SSM整合,表现层数据封装,异常处理器,项目异常处理方案,前后台联调,拦截器等知识点适合人群:学习过Spring课程的人群,初步理解框架...
笔记全部以Markdown的形式记录,源码包含一个项目,可以非常便捷的帮助大家上手实践笔记中的知识点学习建议:本笔记涉及到较多之前学过的知识,大家可以优先学习Spring,SpringMVC、Maven等知识大家可以结合之前...
笔记全部以Markdown的形式记录,源码包含一个项目,可以非常便捷的帮助大家上手实践笔记中的知识点学习建议:本笔记为SSM框架一部分,大家可以优先学习Spring,SpringMVC等框架,学习完成后在进行Maven进阶的学习...
内容概要:通过带着读者手写简化版 Spring框架,了解 Spring核心原理。在手写Spring源码的过程中会摘取整体框架中的核心逻辑,简化代码实现过程,保留核心功能,例如:IOC、AOP、Bean生命周期、上下文、作用域、资源...
**J2EE框架详解** ...以上就是J2EE框架的学习笔记概要,深入理解和熟练运用这三个框架,将有助于提升Java企业级应用的开发能力。在学习过程中,建议结合实际项目实践,以便更好地理解和掌握这些技术。
内容概要 移动学习社区是一个基于Spring Boot框架开发的应用系统,旨在为高校师生提供一个虚拟化、数字化的学习环境。该系统支持师生随时随地进行交流、分享和协作,并提供相关的教学辅助工具。项目的主要目标是...
通过上述信息,可以构建出一份完整的IT专业培训笔记概要,涵盖操作系统基础、编程语言基础、网页开发、后端框架及数据库操作等多个方面。该笔记对初学者和想要系统复习IT相关知识点的人非常有帮助。
以上各点仅是根据文件名推测的内容概要,实际笔记中可能还包括其他相关主题的深入讲解,如设计模式、数据库连接、MVC架构等。这些笔记是系统学习和提升Java全栈开发技能的良好资源,对于开发者来说具有很高的学习...
Java系统源码+学生读书笔记共享 内容概要: 本资源包含了完整的Java前后端源码及说明文档,适用于想要快速搭建并部署Java Web应用程序的开发者、学习者。 技术栈: 后端:Java生态系统,包含Spring Boot、Shiro、...
在深入探讨Web开发的知识之前,我们首先了解一下"Web学习笔记.docx"的概要。这份文档显然包含了关于Web开发的学习笔记,可能涵盖了多种技术、框架和编程语言,如Java、JSP、Struts以及SSH(Struts、Spring、...
Java系统源码+笔记记录分享网站--论文pf 内容概要: 本资源包含了完整的Java前后端源码及说明文档,适用于想要快速搭建并部署Java Web应用程序的开发者、学习者。 技术栈: 后端:Java生态系统,包含Spring Boot、...
### 苍穹外卖个人笔记(Java、Redis、SpringBoot、MySQL) #### 1. 开发流程及环境配置 ##### 1.1 软件整体开发流程 软件开发流程是软件工程的重要组成部分,通常包括以下几个阶段: - **需求分析**:明确用户的...
标题:基于Spring Boot和Vue.js的Web应用程序开发框架论文文档 摘要: 本论文介绍了一种基于Spring Boot和Vue.js的Web应用程序开发框架,旨在提供一个通用的管理系统模板。通过系统的需求分析、概要设计、详细设计...
2. **系统架构设计**:讲解J2EE框架下的MVC(模型-视图-控制器)架构,以及如何利用Spring Boot、MyBatis等工具进行服务和数据层的搭建。 3. **数据库设计**:涉及到关系型数据库如MySQL的设计,包括表结构、索引...
这是尚硅谷的SpringBoot教程,自己过了敲了一遍代码,下面是整理的笔记和课件,用于自己学习,如有侵权请告知 如果你喜欢,给个star哈~ 内容概要 初级 高级 一、Spring Boot入门 九、Spring Boot与缓存 二、Spring ...
这些方法可用于Spring概要文件。 前提条件 JDK 14 Maven的3.6 特征 身份验证(不同的配置文件)和授权 JSP + JSTL Apache Tiles(HTML模板) 执行器 (当前)没有测试->因此质量门操作失败 个人资料 类型 Maven...
二、内容概要: 1、包含activity7的大纲脑图 2、示例代码,activity整合spring,整合springboot 3、导学笔记和视频 4、pdf讲义和markdown讲义 四、Activiti是目前使用最常用的工作流引擎,在企业中的应用非常广泛。...
内容概要: 本系统源代码基于Spring Boot、Vue.js、Element UI和MySQL,提供一个通用的Web应用程序框架。通过该系统源代码,学习如何使用这些技术构建可扩展的管理系统。涵盖前端开发、后端开发、数据库集成等核心...
基于Spring Boot的多模块项目配置指南 ... 以前,配置是通过这种方式完成的,并且所有相关设置都使用应用程序属性文件( application.yml或application.properties )中的spring概要文件进行了分类。 Spring Boot通