1.配置application.properties文件 打开application.properties追加 spring.mvc.view.prefix=/WEB-ROOT/ spring.mvc.view.suffix=.jsp 2. 在pom.xml中添加访问jsp页面的jar包 <!-- 访问jsp页面所需要的以下依赖包 -->       <dependency>             <groupId>org.springframework.boot&l…
Spring MVC 学习笔记2 - 利用Spring Tool Suite创建一个web 项目 Spring Tool Suite 是一个带有全套的Spring相关支持功能的Eclipse插件包. 安装Spring Tool Suite : Window -> Eclipse Marketplace -> Search for "STS", Select the Spring Tool Suite that matches your Eclipse Version. 第一…
spring mvc: 可参数化的视图控制器(在配置中指定jsp文件)MultiActionController/SimpleUrlHandlerMapping/ParameterizableViewController 访问地址如下: http://localhost:8080/项目/index.html 注意:变量不能解析,不知道为啥. StudentController.java是在springtest包下面 xml中用到的类, org.springframework.web.servle…
.Net Core ORM选择之路,哪个才适合你   因为老板的一句话公司项目需要迁移到.Net Core ,但是以前同事用的ORM不支持.Net Core 开发过程也遇到了各种坑,插入条数多了也特别的慢,导致系统体验比较差好多都改写Sql实现. 所以我打算找一款 性能比较好 功能比较完善 方便以后可以切换数据库(经过我对老板的了解这个功能非常重要) 并且要有一定用户基础的ORM 参赛ORM 能够参赛的ORM必须要有以下个条件 第一.功能方面要比较完善 第二.Github需要有一定人气并且最近有…
如何在 GitHub 的项目中创建一个分支呢? 其实很简单啦,直接点击 Branch,然后在弹出的文本框中添加自己的 Branch Name 然后点击蓝色的Create branch就可以了,这样一来,你这个项目就有2个分支了(master 和 reademe-edits).   注:1 个库可以有多个分支并行的进行开发,但是最后只有 1 个会被 merge 进来,因此当某一个分支被合并到进 master 分支后,其他的并行分支的提交都会被是作为冲突 conflict,解决这个冲突的唯一办法就是…
Spring Boot介绍 Spring Boot简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置. SpringBoot基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程.另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问…
第一节:Spring Data Jpa 简介 Spring-Data-Jpa JPA(Java Persistence API)定义了一系列对象持久化的标准,目前实现这一规范的产品有Hibernate.TopLink等.   第二节:Spring Data Jpa 基本crud 实现 下面对图书的CRUD来为例子: 项目结构:     1.引入jpa和mysql驱动支持 在pom.xml上右键spring -> edit starters,勾选mysql.jpa: 可以看到pom新增依赖:mys…
[ 前言]  Spring Boot 简介:Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置. Spring Boot 特点: 优点: 1.创建独立的spring应用程序 2.嵌入的Tomcat.jetty或者Undertow,,无需部署war文件 3.简化了maven的配置 4.简化了使用Spring的过程 5.注解代替xml配置 缺点: 1. 将现…
Spring Framework 官网文档学习笔记--核心技术之Spring IOC 官方文档 spring-framework-5.3.9 1. Spring Framework 核心技术 1.1 IOC 容器( Spring's Inversion of Control (IoC) contai…
内容源自:Spring中如何使用事务? 一.为什么要使用事务? 如果我们一个业务逻辑只执行一次sql,是不需要使用事务的.但如果要执行多条sql语句才能完成一个业务逻辑的话,这个时候就要使用事务了. 因为这几条sql可能有的执行成功,有的执行失败. 而事务就是对一组sql语句进行统一的提交或回滚操作,为了保证数据执行的一致性,这组sql不是全部成功就是全部失败. 举个例子吧: 我们要实现转账的功能.首先要在账户a中扣100元,然后在账户b中加100元,这里涉及两次sql操作.大概像下面代码这样操…
内容源自:spring mvc入门 一.spring mvc和spring的关系 spring mvc是spring框架提供的七层体系架构中的一个层,是spring框架的一部分,是spring用于处理客户端请求的MVC工具,取代表现层框架struts1/2.在使用时,spring mvc和spring框架的使用方式是相互独立的.spring mvc是脱离了spring框架的单独的表现层框架. 二.如何在web工程中添加spring mvc? web工程添加spring框架的方式和添加spring…
目录 1-1 Spring入门篇 专题一.IOC 接口及面向接口编程 什么是IOC Spring的Bean配置 Bean的初始化 Spring的常用注入方式 专题二.Bean Bean配置项 Bean的作用域 Bean的生命周期 Aware Bean的自动装配(Autowiring) Resources Bean管理的注解实现及例子 专题三.AOP 什么是AOP 切面 AOP实现方式 AOP几个相关概念 Advice的类型 Spring框架中AOP的用途 Sprign的AOP实现 有接口和无接口…
SpringCloud 什么是微服务? 要想学习微服务,首先需要知道什么是微服务?为什么会有微服务?相信看完架构的发展史读者就会明白 架构发展史 单体应用架构 如图所示:将所有的模块,所有内容(页面.Dao.Service.Controller)全部写入一个项目中,放在一个Tomcat容器中启动适用于小型项目 优点:开发速度快,可以利用代码生成工具快速的开发一个项目 缺点:不易扩展,代码耦合度高,且不容错(当某部分出错后整个服务就会停止运行) 垂直架构 既然原来单体架构中代码耦合度高,不利于维护…
内容源自:Spring 框架简介 Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的.框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架. Spring 框架 Spring 框架是一个分层架构,由 7 个定义良好的模块组成.Spring 模块构建在核心容器之上,核心容器定义了创建.配置和管理 bean 的方式. 组成 Spring 框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现.每个模块的…
步骤一:下载Spring开发包. 官网:https://spring.io/           下载地址:https://repo.spring.io/libs-release-local/org/springframework/spring/ spring-framework-3.0.2.RELEASE-dependencies和spring-framework-4.2.4.RELEASE-dist 解压第二个,解压目录: 步骤二:搭建项目,引入Spring项目 创建项目:由于Spring是…
1.前言 前面我们讲到Spring在普通JAVA项目中的一些使用.本文将介绍在普通的Web项目中如何实例化Spring IOC容器.按照一般的思路.如果在Web中实例化Ioc容器.这不得获取Context对象很多次?但其实不是这样的.Spring帮我们想到了这点.利用Spring-Web jar包.创建一个监听器.我们只需要监听Tomcat启动的时候.将Ioc容器实例化即可.这样方便快捷了许多.也省去了许多不必要的麻烦. 1.工具 idea开发版:2019.6--------下载地址 Tomca…
swagger的三个项目及其作用 我们打开swagger的官网,会发现有三个swagger相关的项目,它们分别是 swagger-editor 作用是通过写代码,生成文档描述(一个json文件或其他格式的api元数据文件) swagger-ui 通过请求文档描述(一个json文件)的数据,把api的文档显示在页面上 swagger-codegenerator 通过文档描述,来生成实现的代码 如何在spring-boot项目中集成swagger? 我们使用springfox-swagger这个项目…
什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.用我的话来理解,就是spring boot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架(不知道这样比喻是否合适). 使用spring boot有什么好处 其实就是简单.快速.方便!平时如果我…
一.监控管理通过引入spring-boot-starter-actuator,可以使用Spring Boot为我们提供的准 生产环境下的应用监控和管理功能.我们可以通过HTTP,JMX,SSH协议来进 行操作,自动得到审计.健康及指标信息等• 步骤: – 引入spring-boot-starter-actuator – 通过http方式访问监控端点 – 可进行shutdown(POST 提交,此端点默认关闭) 监控和管理端点 二.定制端点信息– 定制端点一般通过endpoints+端点名+属性名…
一.热部署在开发中我们修改一个Java文件后想看到效果不得不重启应用,这导致大量时间 花费,我们希望不重启应用的情况下,程序可以自动部署(热部署).有以下四 种情况,如何能实现热部署.•1.模板引擎 – 在Spring Boot中开发情况下禁用模板引擎的cache – 页面模板改变ctrl+F9可以重新编译当前页面并生效 2.Spring Loaded Spring官方提供的热部署程序,实现修改类文件的热部署 – 下载Spring Loaded(项目地址https://github.com/sp…
一.分布式应用在分布式系统中,国内常用zookeeper+dubbo组合,而Spring Boot推荐使用 全栈的Spring,Spring Boot+Spring Cloud 分布式系统: 单一应用架构 当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成 本.此时,用于简化增删改查工作量的数据访问框架(ORM)是关键.  垂直应用架构 当访问量逐渐增大,单一应用增加机器带来的加速度越来越小,将应用拆成互不相干 的几个应用,以提升效率.此时,用于加速前端页面开发的Web…
一.安全Spring Security是针对Spring项目的安全框架,也是Spring Boot底层安全模 块默认的技术选型.他可以实现强大的web安全控制.对于安全控制,我们仅 需引入spring-boot-starter-security模块,进行少量的配置,即可实现强大的 安全管理.几个类: WebSecurityConfigurerAdapter:自定义Security策略 AuthenticationManagerBuilder:自定义认证策略 @EnableWebSecurity:…
一.异步任务 在Java应用中,绝大多数情况下都是通过同步的方式来实现交互处理的:但是在 处理与第三方系统交互的时候,容易造成响应迟缓的情况,之前大部分都是使用 多线程来完成此类任务,其实,在Spring 3.x之后,就已经内置了@Async来完 美解决这个问题.两个注解: @EnableAysnc.@Aysnc 二.定时任务 项目开发中经常需要执行一些定时任务,比如需要在每天凌晨时候,分析一次前 一天的日志信息.Spring为我们提供了异步执行任务调度的方式,提供 TaskExecutor .…
一.检索我们的应用经常需要添加检索功能,开源的 ElasticSearch 是目前全文搜索引擎的 首选.他可以快速的存储.搜索和分析海量数据.Spring Boot通过整合Spring Data ElasticSearch为我们提供了非常便捷的检索功能支持:Elasticsearch是一个分布式搜索服务,提供Restful API,底层基于Lucene,采用 多shard(分片)的方式保证数据安全,并且提供自动resharding的功能,github 等大型的站点也是采用了ElasticSear…
一.概述1. 大多应用中,可通过消息服务中间件来提升系统异步通信.扩展解耦能力 2. 消息服务中两个重要概念: 消息代理(message broker)和目的地(destination) 当消息发送者发送消息以后,将由消息代理接管,消息代理保证消息传递到指定目 的地. 3. 消息队列主要有两种形式的目的地 1. 队列(queue):点对点消息通信(point-to-point) 2. 主题(topic):发布(publish)/订阅(subscribe)消息通信 4. 点对点式: – 消息发送者…
JSR-107.Spring缓存抽象.整合Redis Java Caching定义了5个核心接口,分别是CachingProvider, CacheManager, Cache, Entry 和 Expiry. • CachingProvider定义了创建.配置.获取.管理和控制多个CacheManager.一个应用可 以在运行期访问多个CachingProvider. • CacheManager定义了创建.配置.获取.管理和控制多个唯一命名的Cache,这些Cache 存在于CacheMan…
1.spring概述 1.1.spring的简史 第一阶段:XML配置spring 1.x时代, 第二阶段:注解配置spring 2.x时代, @Controller @Service @Component @Repository 第三阶段:java配置spring 3.x到现在, @Confirguration 相当于spring的配置文件XML @Bean 用到方法上,表示当前方法的返回值是一个bean 1.2.spring 基础配置spring框架本身有四大原则:1)使用POJO进行轻量级…
第三节:自定义查询@Query 有时候复杂sql使用hql方式无法查询,这时候使用本地查询,使用原生sql的方式:   第四节:动态查询Specification 使用 什么时候用呢?比如搜索有很多条件,有时候用户只填了一个,有时候填很多,不确定条件的数目,这时候动态判断,拼接sql,使用Specification   下面是例子讲解: com.cy.dao.BookDao.java: package com.cy.dao; import java.util.List; import org.s…
1,创建spring boot的web项目 刚创建好的项目路径如下: 2,pom中要有下面的依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--jsp页面使用jstl标签--> <dependency> <…
1.Spring IOC的基本概念 IOC(Inverse of Control)反转控制的概念,就是将原本在程序中手动创建对象的控制权,交由Spring框架管理.当某个Java对象(调用者)需要调用另一个Java对象(被调用者)时,在传统编程模式下,调用者通常会采用“new 被调用者”的代码方式来创建对象.这种方式会增加调用者与被调用者之间的耦合性,不利于后期代码的升级与维护.当Spring框架出现后,对象的实例不再由调用者来创建,而是由Spring容器来创建.Spring容器会负责控制程序之…