- 博客(35)
- 资源 (10)
- 问答 (2)
- 收藏
- 关注
转载 Spring Boot干货系列:(九)数据存储篇-SQL关系型数据库之MyBatis的使用
转载自:点击打开链接前言上篇我们介绍了Spring Boot对传统JdbcTemplate的集成,这次换一下,介绍下Spring Boot中如何集成MyBatis。这里分别介绍注解方式以及XML方式的整合。喜欢哪种方式自己选择。正文项目框架还是跟上一篇一样使用Spring Boot的ace后端模板,你可以基于它来跟着博主一起来调整代码,如果没看过上一篇,那就下载本篇源码研究吧。跟上篇一样先添加基础...
2018-04-24 09:39:47 209
转载 Spring Boot干货系列:(八)数据存储篇-SQL关系型数据库之JdbcTemplate的使用
转载自:点击打开链接前言前面几章介绍了一些基础,但都是静态的,还不足以构建一个动态的应用。本篇开始就要介绍数据交互了,为了演示效果更加好,博主花了大把时间整合了一个后端模板框架,基于Bootstrap3的ACE模板,并实现了一个基本的增删改查分页功能。让我们一起动手,学技术的同时,顺便把我们的项目完善起来,这样跟着博主学到最后,你就有了一个属于自己的Spring Boot项目啦。正文本文介绍在Sp...
2018-04-23 16:54:20 243
转载 Spring JdbcTemplate使用详解
JdbcTemplate简介 Spring对数据库的操作在jdbc上面做了深层次的封装,使用spring的注入功能,可以把DataSource注册到JdbcTemplate之中。 JdbcTemplate位于中。其全限定命名为org.springframework.jdbc.core.JdbcTemplate。要使用JdbcTemlate还需一个这个包包含了一下事务和异常控制 JdbcTem...
2018-04-23 13:48:00 11033
转载 Spring Boot干货系列:(七)默认日志logback配置解析
转载自:点击打开链接前言今天来介绍下Spring Boot如何配置日志logback,我刚学习的时候,是带着下面几个问题来查资料的,你呢如何引入日志?日志输出格式以及输出方式如何配置?代码中如何使用?正文Spring Boot在所有内部日志中使用Commons Logging,但是默认配置也提供了对常用日志的支持,如:Java Util Logging,Log4J, Log4J2和Logback。...
2018-04-23 13:21:18 1456
转载 Spring Boot干货系列:(六)静态资源和拦截器处理
转载自:点击打开链接前言本章我们来介绍下SpringBoot对静态资源的支持以及很重要的一个类WebMvcConfigurerAdapter。正文前面章节我们也有简单介绍过SpringBoot中对静态资源的默认支持,今天详细的来介绍下默认的支持,以及自定义扩展如何实现。默认资源映射Spring Boot 默认为我们提供了静态资源处理,使用 WebMvcAutoConfiguration 中的配置各...
2018-04-20 16:08:15 643
转载 Spring Boot干货系列:(五)开发Web应用之JSP篇
转载自:点击打开链接前言上一篇介绍了Spring Boot中使用Thymeleaf模板引擎,今天来介绍一下如何使用SpringBoot官方不推荐的jsp,虽然难度有点大,但是玩起来还是蛮有意思的。正文先来看看整体的框架结构,跟前面介绍Thymeleaf的时候差不多,只是多了webapp这个用来存放jsp的目录,静态资源还是放在resources的static下面。引入依赖<!--WEB支持-...
2018-04-20 13:54:29 296
转载 Spring Boot干货系列:(四)开发Web应用之Thymeleaf篇
转载自:点击打开链接前言Web开发是我们平时开发中至关重要的,这里就来介绍一下Spring Boot对Web开发的支持。正文Spring Boot提供了spring-boot-starter-web为Web开发予以支持,spring-boot-starter-web为我们提供了嵌入的Tomcat以及Spring MVC的依赖。项目结构推荐一个好的项目结构会让你开发少一些问题,特别是Spring B...
2018-04-20 10:55:57 286
转载 Spring Boot干货系列:(三)启动原理解析
转载自:点击打开链接前言前面几章我们见识了SpringBoot为我们做的自动配置,确实方便快捷,但是对于新手来说,如果不大懂SpringBoot内部启动原理,以后难免会吃亏。所以这次博主就跟你们一起一步步揭开SpringBoot的神秘面纱,让它不在神秘。正文我们开发任何一个Spring Boot项目,都会用到如下的启动类@SpringBootApplicationpublic class App...
2018-04-19 15:53:46 148
转载 解决Java compiler level does not match the version of the installed Java project facet问题
Java compiler level does not match the version of the installed Java project主要是说:“Java 编译器的版本与项目中的设置版本不一致”。一般情况下项目可以正常运行,但是在项目文件夹上会出现一个红色小叉,如图所示,代码中并没有任何错误解决办法:首先查看自己Eclipse使用的JDK版本:windows > prefe...
2018-04-19 15:28:49 799
转载 Spring中的@scope注解
默认是单例模式,即scope="singleton"。另外scope还有prototype、request、session、global session作用域。scope="prototype"多例@scope默认是单例模式(singleton)如果需要设置的话@scope("prototype")1.singleton单例模式, 全局有且仅有一个实例2.prototype原型模式, 每次获取...
2018-04-19 14:21:17 877
转载 Spring Boot干货系列:(二)配置文件解析
转载自点击打开链接前言上一篇介绍了Spring Boot的入门,知道了Spring Boot使用“习惯优于配置”(项目中存在大量的配置,此外还内置了一个习惯性的配置,让你无需手动进行配置)的理念让你的项目快速运行起来。所以,我们要想把Spring Boot玩的溜,就要懂得如何开启各个功能模块的默认配置,这就需要了解Spring Boot的配置文件application.properties。正文S...
2018-04-19 13:41:47 201
转载 Java单元测试(3)
通过前 2 篇文章,您一定对 JUnit 有了一个基本的了解,下面我们来探讨一下 JUnit4中一些高级特性。一、 高级 Fixture上一篇文章中我们介绍了两个 Fixture 标注,分别是 @Before 和 @After ,我们来看看他们是否适合完成如下功能:有一个类是负责对大文件(超过 500 兆)进行读写,他的每一个方法都是对文件进行操作。换句话说,在调用每一个方法之前,我们都要...
2018-04-18 14:25:06 396
转载 Java单元测试(2)
我们继续对初级篇中的例子进行分析。初级篇中我们使用Eclipse自动生成了一个测试框架,在这篇文章中,我们来仔细分析一下这个测试框架中的每一个细节,知其然更要知其所以然,才能更加熟练地应用JUnit4。一、 包含必要地Package在测试类中用到了JUnit4框架,自然要把相应地Package包含进来。最主要地一个Package就是org.junit.*。把它包含进来之后,绝大部分功能就有...
2018-04-18 14:14:20 172
转载 Java单元测试(1)
我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这一小部分功能是正确的。但是,我们同时应该确保每一个函数都完全正确,因为如果我们今后如果对程序进行扩展,用到了某个函数的其他功能,而这个功能有bug的话,那绝对是一件非常郁闷的事情。所以说,每编写完一个函数之后,都应该对这个函数的方方面面进行测试,这样的测...
2018-04-18 14:11:06 633
转载 项目出现内存溢出的原因及解决方案
内存溢出是指应用系统中存在无法回收的内存或使用的内存过多,最终使得程序运行要用到的内存大于虚拟机能提供的最大内存。引起内存溢出的原因有很多种,常见的有以下几种: 1.内存中加载的数据量过于庞大,如一次从数据库取出过多数据; 2.集合类中有对对象的引用,使用完后未清空,使得JVM不能回收; 3.代码中存在死循环或循环产生过多重复的对象实体; 4.使用的第三方软件中的BUG; 5.启动参数内...
2018-04-18 08:29:39 6210 1
转载 java foreach 循环原理
java foreach 语法是在jdk1.5时加入的新特性,主要是当作for语法的一个增强,那么它的底层到底是怎么实现的呢?因为面试时被问到,所以在这边做一个记录。首先来看看foreach能够使用的类型是什么:编译器报错原因写的很清楚了,要求:数组或实现了java.lang.Iterable接口的对象。看下jdk源码对Iterable接口的声明:/** Implementing this int...
2018-04-17 16:31:36 249
转载 当spring 容器初始化完成后,执行某个方法
在做web项目开发中,尤其是企业级应用开发的时候,往往会在工程启动的时候做许多的前置检查。比如检查是否使用了我们组禁止使用的Mysql的group_concat函数,如果使用了项目就不能启动,并指出哪个文件的xml文件使用了这个函数。而在Spring的web项目中,我们可以介入Spring的启动过程。我们希望在Spring容器将所有的Bean都初始化完成之后,做一些操作,这个时候我们就可以实现一个...
2018-04-17 16:21:37 3402
转载 Spring Boot干货系列:(一)优雅的入门篇
转载自点击打开链接前言Spring一直是很火的一个开源框架,在过去的一段时间里,Spring Boot在社区中热度一直很高,所以决定花时间来了解和学习,为自己做技术储备。正文首先声明,Spring Boot不是一门新技术,所以不用紧张。从本质上来说,Spring Boot就是Spring,它做了那些没有它你也会去做的Spring Bean配置。它使用“习惯优于配置”(项目中存在大量的配置,此外还内...
2018-04-17 14:57:07 202
转载 Linux下安装Tomcat并部署项目
步骤一、下载安装包a. 下载tomcat Linux安装包,地址:http://tomcat.apache.org/download-80.cgi , 我们下载的版本是8.0,下载方式如图:b. 因为tomcat的安装依赖于Java JDK,所以需要先判断Linux系统下面是否安装了JDK并配置了环境变量b.1 输入命令:Java -version,如果显示JDK版本号,则证明已经安装了...
2018-04-16 14:21:58 4475 1
转载 Activit入门简单教程
1:工作流的概念 说明:1) 假设:这两张图就是华谊兄弟的请假流程图 2) 图的组成部分: A. 人物:范冰冰 冯小刚 王中军 B. 事件(动作):请假、批准、不批准 工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现”。 ...
2018-04-16 14:00:22 436
转载 Linux 下报错:A Java RunTime Environment (JRE) or Java Development Kit (JDK) must解决方案
一、报错环境:在Linux mint下,前几天还用得很好的的eclipse,今天开机不知为什么这样。 Eclipse 3.6 在 linux mint 12 可以在终端顺利启动Eclipse,但是鼠标双击,或者用起动器启动就会出现如下的内容: A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be avail...
2018-04-12 12:23:40 1109
转载 Linux下安装Eclipse
操作系统版本:CentOS Linux release 7.2.1511 (Core)Eclipse版本:eclipse-jee-neon-1a-linux-gtk-x86_64.tar.gz安装方式:压缩文件解压缩安装下载地址:http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/neon1a安装步骤:(...
2018-04-11 16:55:51 526
转载 Linux CentOS 7 下 JDK 1.7 安装与配置
Linux上一般会安装Open JDK,关于OpenJDK和JDK的区别:http://www.cnblogs.com/sxdcgaq8080/p/7487369.html 下面开始安装步骤:--------------------------------------------------------------------------第一步---------------------------...
2018-04-11 16:27:33 131
原创 Redis简介
Redis是完全免费开源的,遵守BSD协议,是一个高性能的key-value数据库。特点: ① Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用; ② Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储; ③ Redis支持数据的备份,即master-slave模式的数据...
2018-04-11 13:07:18 161
转载 简述Oracle的rownum原理
对于Oracle的rownum问题,很多资料都说不支持>,>=,=,between……and,只能用以上符号(<、& lt;=、!=),并非说用>,>=,=,between……and 时会提示SQL语法错误,而是经常是查不出一条记录来,还会出现似乎是莫名其妙的结果来,其实您只要理解好了这个rownum伪列的意义就不应该感到惊 奇,同样是伪列,rownum与ro...
2018-04-11 11:02:20 395
转载 Spring对Hibernate事务管理
在谈Spring事务管理之前我们想一下在我们不用Spring的时候,在Hibernate中我们是怎么进行数据操作的。在Hibernate中我们每次进行一个操作的的时候我们都是要先开启事务,然后进行数据操作,然后提交事务,关闭事务,我们这样做的原因是因为Hibernate默认的事务自动提交是false,他是需要我们人为的手动提交事务,假如你不想每次都手动提交事务的话,你可以在hibernate.c...
2018-04-11 10:36:39 175
转载 面试题
public class Null { public static void hello () { System.err.println("hello"); } public static void main(String[] args) { ((Null) null).hello(); }}正常运行,打印:hellopublic class Son extends Father...
2018-04-09 11:54:17 126
转载 关于String s = new String("xyz"); 创建几个对象的问题
String s1= "Hello ";jvm首先在string池内里面看找不找到字符串 "Hello ",找到,返回他的引用给s1,否则,创建新的string对象,放到string池里。这里由于s= "Hello "了,对象已经被引用,所以依据规则s和s1都是引用同一个对象。所以 s==s1将返回true。(==,对于非基本类型,是比较两引用是否引用内存中的同一个对象)String ...
2018-04-08 21:21:35 778
原创 根据公式计算值
public static void main(String[] args) { System.err.println(calValue("(1+3)*3/2")); } public static Double calValue(String str) { Double d = 0.0; Pattern p = Pattern.compile("[\u4e00-\u9fa5]...
2018-04-04 18:51:48 486
转载 去除List集合中的重复值(四种好用的方法)
对list集合中的重复值进行处理,大部分是采用两种方法,一种是用遍历list集合判断后赋给另一个list集合,一种是用赋给set集合再返回给list集合。 但是赋给set集合后,由于set集合是无序的,原先的顺序就打乱了。所以我又想着能不能用set的特性进行去重又不打乱顺序呢? 试了一下,也是可以的,几种方法在不同情况下都有各自的优势。现在将代码写出来,比较一下。public class Test...
2018-04-04 11:18:38 6818
转载 悲观锁和乐观锁的实现
一、定义1.悲观锁:即很悲观,每次拿数据的时候都觉得数据会被人更改,所以拿数据的时候就把这条记录锁掉,这样别人就没法改这条数据了,一直到你的锁释放。2.乐观锁:即很乐观,查询数据的时候总觉得不会有人更改数据,等到更新的时候再判断这个数据有没有被人更改,有人更改了则本次更新失败。二、实现过程2.悲观锁:悲观锁的实现采用的数据库内部的锁机制,一个典型的倚赖数据库的悲观锁调用:select * from...
2018-04-03 14:05:26 301
原创 数据库表中,一般什么样的字段适合添加索引
主键、外键、where、group by、order by1. 表的主键、外键必须有索引2. 数据量超过300的表应该有索引3. 经常与其他表进行连接的表,在连接字段上应该建立索引4. 经常出现在where字句中的字段,特别是大表的字段,应该建立索引5. 索引应该建在选择型高的字段上6. 索引应该建在小字段上,对于大的文本字段甚至超长字段,不要建索引7. 复合索引的建立需要进行仔细分析,尽量考虑使...
2018-04-03 13:47:43 15238 5
转载 Object类中的方法
如图可知,Object类有12个成员方法,按照用途可以分为以下几种 1,构造函数 2,hashCode和equale函数用来判断对象是否相同, 3,wait(),wait(long),wait(long,int),notify(),notifyAll() 4,toString()和getClass(), 5,clone() 6,finalize()用于在垃圾回收函数说明clone()clone()...
2018-04-03 11:04:30 139
转载 JVM内存区域介绍
JVM内存主要可以分为五个区域:程序计数器、虚拟机栈、本地方法栈、堆、方法区。其中除了堆和方法区是线程共有的,其他几个区域都是线程私有的,下面分别介绍: 1、程序计数器 程序计数器是一块较小的内存,通过这个计数器来选取下一条需要执行的字节码指令。Java虚拟机的多线程是通过线程之间切换来轮流获得处理器的执行时间的,每个线程都有自己独立的程序计数器,它们互不影响,也就是线程私有的。如果执行的是Jav...
2018-04-02 13:37:14 131
转载 SpringData Jpa、Hibernate、Jpa之间的关系
JPA规范本质上就是一种ORM规范,注意不是ORM框架——因为JPA并未提供ORM实现,它只是制订了一些规范,提供了一些编程的API接口,但具体实现则由服务厂商来提供实现,JBoss应用服务器底层就以Hibernate作为JPA的实现。既然JPA作为一种规范——也就说JPA规范中提供的只是一些接口,显然接口不能直接拿来使用。虽然应用程序可以面向接口编程,但JPA底层一定需要某种JPA实现,否则JP...
2018-04-02 11:34:01 268
Eclipse离线配置PMD插件
2019-04-16
使用Java如何扫描电脑中已安装的和未安装的所有软件
2018-04-17
TA创建的收藏夹 TA关注的收藏夹
TA关注的人