Spring mvc系列一之 Spring mvc简单配置-引用 Spring MVC做为SpringFrameWork的后续产品,Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring 可插入的 MVC 架构 Spring 的 Web MVC 框架是围绕 DispatcherServlet 设计的,它把请求分派给处理程序,同时带有可配置的处理程序映射.视图解析.本地语言.主题解析以及上载文件支持. 下面看一下Spring mvc 的简单配置入门: 首先新建一个…
在Spring基础 - Spring简单例子引入Spring的核心中向你展示了AOP的基础含义,同时以此发散了一些AOP相关知识点; 本节将在此基础上进一步解读AOP的含义以及AOP的使用方式.@pdai Spring框架系列(4) - 深入浅出Spring核心之面向切面编程(AOP) 引入 如何理解AOP AOP是什么 AOP术语 Spring AOP和AspectJ是什么关系 AOP的配置方式 XML Schema配置方式 AspectJ注解方式 接口使用JDK代理 非接口使用Cglib代理…
前面已经分享过四篇随笔: spring boot 系列之一:spring boot 入门 spring boot 系列之二:spring boot 如何修改默认端口号和contextpath spring boot 系列之三:spring boot 整合JdbcTemplate spring boot 系列之四:spring boot 整合JPA 在上述代码操作的过程中肯定也发现了一个问题:哪怕是一个个小小的修改,都必须要重新启动服务才能使修改生效. 那能不能通过配置实现spring boot的…
在Spring基础 - Spring简单例子引入Spring的核心中向你展示了IoC的基础含义,同时以此发散了一些IoC相关知识点; 本节将在此基础上进一步解读IOC的含义以及IOC的使用方式.@pdai Spring框架系列(3) - Spring核心之控制反转(IOC) 引入 如何理解IoC Spring Bean是什么 IoC是什么 IoC能做什么 IoC和DI是什么关系 Ioc 配置的三种方式 xml 配置 Java 配置 注解配置 依赖注入的三种方式 setter方式 构造函数 注解注…
上一篇我们讲了spring boot 整合JdbcTemplate来进行数据的持久化, 这篇我们来说下怎么通过spring boot 整合JPA来实现数据的持久化. 一.代码实现 修改pom,引入依赖 <!-- 引入jpa 依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</arti…
今天来聊聊 Spring Boot 整合 Freemarker. Freemarker 简介 这是一个相当老牌的开源的免费的模版引擎.通过 Freemarker 模版,我们可以将数据渲染成 HTML 网页.电子邮件.配置文件以及源代码等.Freemarker 不是面向最终用户的,而是一个 Java 类库,我们可以将之作为一个普通的组件嵌入到我们的产品中. 来看一张来自 Freemarker 官网的图片: 可以看到,Freemarker 可以将模版和数据渲染成 HTML . Freemarker…
搞 Spring Boot 的小伙伴都知道,Spring Boot 中的配置文件有两种格式,properties 或者 yaml,一般情况下,两者可以随意使用,选择自己顺手的就行了,那么这两者完全一样吗?肯定不是啦!本文就来和大伙重点介绍下 yaml 配置,最后再来看看 yaml 和 properties 配置有何区别. 狡兔三窟 首先 application.yaml 在 Spring Boot 中可以写在四个不同的位置,分别是如下位置: 项目根目录下的 config 目录中 项目根目录下 c…
https 现在已经越来越普及了,特别是做一些小程序或者公众号开发的时候,https 基本上都是刚需了. 不过一个 https 证书还是挺费钱的,个人开发者可以在各个云服务提供商那里申请一个免费的证书.我印象中有效期一年,可以申请 20 个. 今天要和大家聊的是在 Spring Boot 项目中,如何开启 https 配置,为我们的接口保驾护航. https 简介 我们先来看看什么是 https,根据 wikipedia 上的介绍: 超文本传输安全协议(HyperText Transfer Pr…
虽然现在慢慢在流行前后端分离开发,但是据松哥所了解到的,还是有一些公司在做前后端不分的开发,而在前后端不分的开发中,我们就会需要后端页面模板(实际上,即使前后端分离,也会在一些场景下需要使用页面模板,例如邮件发送模板). 早期的 Spring Boot 中还支持使用 Velocity 作为页面模板,现在的 Spring Boot 中已经不支持 Velocity 了,页面模板主要支持 Thymeleaf 和 Freemarker ,当然,作为 Java 最最基本的页面模板 Jsp ,Spring…
当我们使用 SpringMVC 框架时,静态资源会被拦截,需要添加额外配置,之前老有小伙伴在微信上问松哥 Spring Boot 中的静态资源加载问题:"松哥,我的 HTML 页面好像没有样式?",今天我就通过一篇文章,来和大伙仔细聊一聊这个问题. 1. SSM 中的配置 要讲 Spring Boot 中的问题,我们得先回到 SSM 环境搭建中,一般来说,我们可以通过 <mvc:resources /> 节点来配置不拦截静态资源,如下: <mvc:resources…
在 Spring Boot 项目中 ,异常统一处理,可以使用 Spring 中 @ControllerAdvice 来统一处理,也可以自己来定义异常处理方案.Spring Boot 中,对异常的处理有一些默认的策略,我们分别来看. 默认情况下,Spring Boot 中的异常页面 是这样的: 我们从这个异常提示中,也能看出来,之所以用户看到这个页面,是因为开发者没有明确提供一个 /error 路径,如果开发者提供了 /error 路径 ,这个页面就不会展示出来,不过在 Spring Boot 中…
前面两篇文章我们讲了两件事情: 通过一个简单实例进行spring boot 入门 修改spring boot 默认的服务端口号和默认context path 这篇文章我们来看下怎么通过JdbcTemplate进行数据的持久化. 废话不多说,直接上干货. 一.代码实现 修改pom文件,引入相关依赖 <!-- 引入jdbc 依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <ar…
最近在学习spring boot,感觉确实很好用,开发环境搭建和部署确实省去了很多不必须要的重复劳动. 接下来就让我们一起来复习下. 一.什么是spring boot ? spring boot是干嘛的? Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid applica…
一.不连接数据库启动springboot报错 Cannot determine embedded database driver class for database type NONE 原因:SpringBoot启动时会自动注入数据源和配置jpa 解决办法:在SpringBootApplication中加入(exclude={DataSourceAutoConfiguration.class,HibernateJpaAutoConfiguration.class})…
Spring 注解(一)Spring 注解编程模型 Spring 系列目录(https://www.cnblogs.com/binarylei/p/10198698.html) Spring 注解系列文章: Spring 注解(一)Spring 注解编程模型 Spring 注解(二)注解工具类 AnnotationUtils 和 AnnotatedElementUtils 一.术语 1.1 元注解 元注解是一种标注在别的注解之上的注解.如果一个注解可以标注在别的注解上,那么这个注解已然是元注解.…
5.Spring支持事务处理 5.1.事务准备 以上代码结构与AOP的前置通知.返回通知.异常通知.后置通知一样. 5.2.声明式事务 5.2.1.基于注解 5.2.2.基于配置文件 5. 3.事务传播属性 5.4.事务其他属性 5.4.1.事务的隔离级别 5.4.2.事物的回滚属性 5.4.3.超时与只读属性 5.5.使用xml文件配置事务…
[Spring MVC系列]--(4)返回JSON 摘要:本文主要介绍如何在控制器中将数据生成JSON格式并返回 1.导入包 (1)spring mvc 3.0不需要任何其他配置,添加一个jackson的架包,既可以支持的, 貌似现在只有3.0版本以上才支持整合json哦. (2)json并不是向下兼容的,有些高版本是不能用的,伤不起....最后看到了1.1版本还是支持的,于是就下载了1.1.2的版本. 于是两个jar包就是:jackson-core-asl-1.1.2.jar和jackson-…
后台验证 开发项目过程中,后台在很多地方需要进行校验操作,比如:前台表单提交,调用系统接口,数据传输等.而现在多数项目都采用MVC分层式设计,每层都需要进行相应地校验. 针对这个问题, JCP 出台一个 JSR 303-Bean Validation规范 ,而Hibernate Validator 作为Bean Validation的参考实现,提供了JSR 303规范中所有内置constraint的实现,除此之外还有一些附加的constraint. Hibernate Validation的使用…
Java操作pdf框架 iText是一个能够快速产生PDF文件的java类库.iText的java类对于那些要产生包含文本,表格,图形的只读文档是很有用的.它的类库尤其与java Servlet有很好的给合.使用iText与PDF能够使你正确的控制Servlet的输出. http://itextpdf.com/ 最终下载效果 pom.xml <!-- itext方式导出pdf --> <dependency> <groupId>com.lowagie</group…
缓存 缓存就是数据交换的缓冲区(称作Cache),当某一硬件要读取数据时,会首先从缓存中查找需要的数据,如果找到了则直接执行,找不到的话则从内存中找.由于缓存的运行速度比内存快得多,故缓存的作用就是帮助硬件更快地运行. 因为缓存往往使用的是RAM(断电即掉的非永久储存),所以在用完后还是会把文件送到硬盘等存储器里永久存储.电脑里最大的缓存就是内存条了,最快的是CPU上镶的L1和L2缓存,显卡的显存是给显卡运算芯片用的缓存,硬盘上也有16M或者32M的缓存. Spring3.1开始引入了对Cach…
internationalization(i18n) 国际化(internationalization)是设计和制造容易适应不同区域要求的产品的一种方式. 它要求从产品中抽离所有地域语言,国家/地区和文化相关的元素. 换言之,应用程序的功能和代码设计考虑在不同地区运行的需要,其代码简化了不同本地版本的生产. 开发这样的程序的过程,就称为国际化. 数据国际化 * 关键的思路是从请求作用域获取locale,然后查询对应的数据* 中文语言数据页面:只有中文数据 英文语言数据页面:只有英文数据 浏览器切…
internationalization(i18n) 国际化(internationalization)是设计和制造容易适应不同区域要求的产品的一种方式. 它要求从产品中抽离所有地域语言,国家/地区和文化相关的元素. 换言之,应用程序的功能和代码设计考虑在不同地区运行的需要,其代码简化了不同本地版本的生产. 开发这样的程序的过程,就称为国际化. 中文语言页面 英文语言页面 浏览器切换中文,英文 Application.java package com.jege.spring.boot; impo…
动态修改定时任务cron参数 不需要重启应用就可以动态的改变Cron表达式的值 不能使用@Scheduled(cron = "${jobs.cron}")实现 DynamicScheduledTask.java package com.jege.spring.boot.task; import java.text.SimpleDateFormat; import java.util.Date; import org.springframework.beans.factory.annot…
Java操作excel框架 Java Excel俗称jxl,可以读取Excel文件的内容.创建新的Excel文件.更新已经存在的Excel文件,现在基本没有更新了 http://jxl.sourceforge.net/ Apache POI是Apache基金组织Jakarta项目的子项目,它包括一系列的API,可以操作多种格式的Microsoft Office文件,通过这些API使Java更方便的操作Excel.Word等格式的Office文件 http://poi.apache.org/ Ea…
需求 需要对一个页面进行数据抓取,并导出doc文档 html解析器 jsoup 可直接解析某个URL地址.HTML文本内容.它提供了一套非常省力的API,可通过DOM,CSS以及类似于JQuery的操作方法来取出和操作数据. htmlparser 提供了线性和嵌套两种方式来解析网页,主要用于 html 网页的转换(Transformation) 以及网页内容的抽取 (Extraction). 比较一下 jsoup可以直接拿,类似jquery的选择器一样用起来比较好上手.htmlparser结构简…
freemarker FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页.电子邮件.配置文件.源代码等)的通用工具. 它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件. FreeMarker是免费的,基于Apache许可证2.0版本发布.其模板编写为FreeMarker Template Language(FTL),属于简单.专用的语言.需要准备数据在真实编程语言中来显示,比如数据库查询和业务运算, 之后模板…
前后端分离的必要 现在的趋势发展,需要把前后端开发和部署做到真正的分离 做前端的谁也不想用Maven或者Gradle作为构建工具 做后端的谁也不想要用Grunt或者Gulp作为构建工具 前后端需要通过接口来协作 可能是JSON格式的RESTFul的接口 可能是XML的接口 重点是后台只负责数据的提供和处理,而完全不处理展现 而前端则负责拿到数据,组织数据并开始展现的工作 Swagger Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总…
edatagrid扩展组件 edatagrid组件是datagrid的扩展组件,增加了统一处理CRUD的功能,可以用在数据比较简单的页面. 使用的时候需要额外引入jquery.edatagrid.js 为了能够把后台自动捕获的异常显示到前台这里必须使用最新版本的jquery.edatagrid.js文件 可以直接在数据表格里面进行CRUD 列表 新增 修改 删除 删除异常 项目图片 AjaxResult.java,改变输出属性适应edatagrid.onError方法 package com.j…
jQueryEasyUI jQuery EasyUI是一组基于jQuery的UI插件集合体,而jQuery EasyUI的目标就是帮助web开发者更轻松的打造出功能丰富并且美观的UI界面.开发者不需要编写复杂的javascript,也不需要对css样式有深入的了解,开发者需要了解的只有一些简单的html标签. 案例使用EasyUI插件 datagrid:向用户展示列表数据. dialog:创建或编辑一条单一的用户信息. form:用于提交表单数据. messager:显示一些操作信息. 对use…
最近的项目用spring boot 框架 借此学习了一下 这里做一下总结记录 非常便利的一个框架 它的优缺点我就不在这背书了 想了解的可以自行度娘谷歌 说一下要写什么吧 其实还真不是很清楚,只是想记录一下自己学习的过程 愿景是写成一个小的spring boot系列然后能做一些迭代升级 也可以对比不同技术的优劣 所以也会写其一些周边 比如 用到的技术(datatables,maven,thymeleaf,mybatis,jpa) 和有(tong)趣(ku)的过程 废话就说的到这吧. 可以的话 每个…