林元煌

勿以善小而不为、勿以知识小而不分享

Spring Boot(八)——Shiro+FreeMarker

Shiro简介   Apache Shiro是一个功能强大、灵活的,开源的安全框架。它可以干净利落地处理身份验证、授权、企业会话管理和加密。 Shiro能做什么呢 用户访问权限控制,比如:判断用户是否分配了一定的安全角色,判断用户是否被授予完成某个操作的权限; 在非 web 或 EJB...

2018-03-29 18:07:49

阅读数:3260

评论数:1

Spring Boot(七)——部署

打包成jar的方式:windows环境:1、到项目的根目录下(pom.xml同级)2、通过mvn命令打包,需要配置好mvn的环境变量,或者直接是用mvn的绝对路径命令。也可通过开发工具打包,不同的开发工具打包方式不同,这里就不一一介绍了。mvn clean package ## 去除测试代码的打包...

2017-12-20 17:35:52

阅读数:4384

评论数:0

Spring Boot(六)——Spring Date Jpa

Spring Date Jpa介绍什么是JPA?JPA是Java Persistence API的简称,中文名Java持久层API,是JDK5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。Sun引入新的JPAORM规范出于两个原因:其一,简化现有JavaEE和J...

2017-12-14 14:42:31

阅读数:5588

评论数:2

Spring Boot(五)——RabbitMQ

RabbitMq的介绍 RabbitMq的基本原理可以自行上网查阅,或者点击传送门:RabbitMQ的基本原理。 使用配置 1、老规矩,先在pom.xml中添加相关依赖: <!--消息队列模块--> <dependen...

2017-12-12 11:04:50

阅读数:14771

评论数:6

Spring Boot(四)——Mongodb

Mongodb介绍MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式...

2017-12-11 11:48:06

阅读数:3148

评论数:3

Spring Boot(三)——Redis

Redis介绍REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供...

2017-11-22 15:57:35

阅读数:7462

评论数:0

Spring Boot(二)——MyBatis

  MyBatis介绍 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Pl...

2017-10-18 10:59:49

阅读数:3316

评论数:0

Spring Boot(一)——入门环境搭建

Spring Boot简介Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(ra...

2017-10-17 15:23:44

阅读数:9097

评论数:5

Java并发编程(六)-Phaser

phaser 英文意思移相器,相位器,表示“阶段器”,用来解决控制多个线程分阶段共同完成任务的情景问题,其作用相比CountDownLatch和CyclicBarrier更加灵活。如100个人参加高考需要考四场考试,早上考语文,需要等100人都考完语文才能进行下午的数学,下午的数学都考完才能考明...

2018-11-20 14:46:21

阅读数:4820

评论数:0

Java并发编程(五)-Lock

Lock是java 1.5中引入的线程同步工具,它主要用于多线程下共享资源的控制。本质上Lock仅仅是一个接口(位于源码包中的java\util\concurrent\locks中)。

2018-11-07 15:04:21

阅读数:4392

评论数:0

Java并发编程(四)-Semaphore信号量

Semaphore Semaphore翻译成字面意思为 信号量,Semaphore可以控同时访问的线程个数,通过 acquire() 获取一个许可,如果没有就等待,而 release() 释放一个许可。 Semaphore类位于java.util.concurrent包下,它提供了2个构造器:...

2018-11-06 14:39:56

阅读数:4696

评论数:0

Java并发编程(三)-CountDownLatch和CyclicBarrier

CountDownLatch CountDownLatch类利用它可以实现类似计数器的功能。比如有一个任务A,它要等待其他4个任务执行完毕之后才能执行,此时就可以利用CountDownLatch来实现这种功能了。 CountDownLatch类只提供了一个构造器: //参数coun...

2018-11-05 11:24:35

阅读数:4979

评论数:0

Python——入门准备

机器语言 计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 优点是最底层,执行速度最快 缺点是最复杂,开发效率最低 汇编语言 简写的英文标识符取代二进制去编写程序,本质仍然是直接操作硬件; 优点是比较底层,执行速度最快 缺点是复杂,开发效率最低 ...

2018-11-01 11:17:37

阅读数:118

评论数:0

Java并发编程(二)-线程池的介绍

如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务? 在Java中可以通过线程池来达到这样的效果。今...

2018-11-01 11:08:53

阅读数:2185

评论数:0

Java面试题-Struts、Servlet(持续更新)

什么是Struts2 ?   Struts2 是一款优秀MVC框架   MVC:是一种思想,是一种模式,将软件分为 Model模型、View视图、Controller控制器 。MVC由来是web开发 JavaEE软件三层结构 : web层(表现层)、业务逻辑层、数据持久层 (sun提供...

2018-10-31 14:02:02

阅读数:6229

评论数:0

Java面试题-Spring Boot和Spring Cloud(持续更新)

Spring Boot相关项目 Spring IO platform:用于系统部署,是可集成的,构建现代化应用的版本平台,具体来说当你使用maven dependency引入spring jar包时它就在工作了。 Spring Boot:旨在简化创建产品级的 Spring 应用和服务,简化了配...

2018-10-19 11:55:05

阅读数:4778

评论数:0

Java面试题-集合(持续更新)

  从上面的集合框架图可以看到,Java 集合框架主要包括两种类型的容器,一种是集合(Collection),存储一个元素集合,另一种是图(Map),存储键/值对映射。Collection 接口又有 3 种子类型,List、Set 和 Queue,再下面是一些抽象类,最后是具体实现类,常用的有...

2018-10-19 11:51:30

阅读数:4775

评论数:0

Java面试题-Redis和Memcache(持续更新)

什么是redis? redis 是一个基于内存的高性能key-value数据库。 redis淘汰策略 Redis提供了下面几种淘汰策略供用户选择,其中默认的策略为noeviction策略: noeviction:当内存使用达到阈值的时候,所有引起申请内存的命令会报错。 allkeys-...

2018-05-15 16:51:39

阅读数:6489

评论数:0

Java面试题-MyBatis(持续更新)

MyBatis框架及原理分析   MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架,其主要就完成2件事情:   1、封装JDBC操作   2、利用反射打通Java类与SQL语句之间的相互转换   MyBatis的主要设计目的就是让我们对执行SQL语句时...

2018-04-18 17:04:44

阅读数:6887

评论数:0

Java面试题-网络、流、IO(持续更新)

HTTP1.0 HTTP 1.1主要区别  长连接   HTTP 1.0需要使用keep-alive参数来告知服务器端要建立一个长连接,而HTTP1.1默认支持长连接。  节约带宽   HTTP 1.1支持只发送header信息(不带任何body信息),如果...

2018-04-18 14:27:58

阅读数:1778

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭