自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

爪哇小黄的博客

让我们一起来学习JAVA。

  • 博客(37)
  • 收藏
  • 关注

原创 String字符串与List集合互转

// List转StringString idsStr = StringUtils.join(ids, ",");// String 转 ListList<String> list = Arrays.asList(ids.split(","));// 因为Arrays.asList返回一个固定长度的Arraylist集合,如果我们需要去删除/添加元素时候就可以尝试自己去实现// 将转化的集合进行添加/删除元素操作需进一步转化List<String> list = n.

2021-04-16 21:38:40 9479 1

原创 Spring Aop编程

传统我们写代码一般会在每个方法的最前面都加入校验权限,这种方式属于硬编码,对原有的代码是有侵入的。面向切面是一种编程范式,对面向对象来说是一种互补关系,能将特定代码进行拦截分离,实现代码无侵入。先来了解一下软件平台常见的几种分离方式:(1)水平分离:展示层 -> 服务层 -> 持久层;(2)垂直分离:模块划分(业务上的分离),比如订单、库存等;(3)切面分离:分离功能性需求与非功能性需求PS:常见的非功能性需求有:权限控制、日志、异常处理、缓存控制、事务控制、性能监控、分布式

2021-01-01 11:44:45 126

原创 Code Review

什么是代码Review?代码Review是指在软件开发过程中,通过对源代码进行系统性检查来确认代码实现的质量保证机制。查找各种缺陷,包括代码缺陷、功能实现问题、编码合理性、性能优化等;保证软件总体质量和提高开发者自身水平。Code Review是轻量级代码评审,相对于正式代码评审,轻量级代码评审所需要的各种成本要明显低很多,如果流程正确,它可以起到更加积极的效果。Code Review是一种传递知识的手段,可以让其他并不熟悉代码的人知道作者的意图和想法,从而可以在以后轻松维护代码。Code Review

2020-05-21 14:47:01 1087

原创 Netty 性能改造(最流行的NIO框架)

Netty是一个高性能、异步事件驱动的NIO框架,它提供了对TCP、UDP和文件传输的支持。作为当前最流行的NIO框架,Netty在互联网领域、大数据分布式计算领域、游戏行业、通信行业等获得了广泛的应用,一些业界著名的开源组件也基于Netty的NIO框架构建。 Netty 利用 Java 高级网络的能力,隐藏其背后的复杂性而提供一个易于使用的 API 构建一个客户端/服务端,...

2019-06-24 20:26:08 518

原创 Spring Cloud 从入门到精通

推荐文章:Spring Cloud 从入门到精通 Spring Cloud 是一套完整的微服务解决方案,是基于 Spring Boot 框架的一个大的容器,可以将市面上较好的微服务框架集成进来,从而简化了开发者的代码量。 总结:目前所在公司的项目是已经是一个完整微服务项目(包含基础服务和业务服务),基础服务包含服务注册、服务发现、服务路由等配置...

2019-04-23 14:53:51 418

原创 构造方法私有化和单例模式

即对构造方法加上private关键词(由于私有化的方法和属性只能在本类中看到和访问,其他类无法访问且实例化)如: class Singleton{ private Singleton(){ // 将构造方法进行了封装,私有化 } };单例模式DEMO:class Singleto...

2019-03-02 15:36:30 183

原创 MongoDb 学习

(一)MongoDb入门(开源的 NoSQL 数据库:免费、开源、良好的技术支持)      MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解觉方案      MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。支持的数据结构非常松散,是类似json的bson格式,因此...

2019-01-24 16:22:54 117

原创 Nosql(Redis + Memcache + MongoDb)

(一)Nosql        Nosql的全称是Not Only Sql,这个概念早起就有人提出,在09年的时候比较火。Nosql指的是非关系型数据库,而我们常用的都是关系型数据库。就像我们常用的mysql,sqlserver一样,这些数据库一般用来存储重要信息,应对普通的业务是没有问题的。但是随着互联网的高速发展,传统的关系型数据库在应付超大规模,超大流量以及高并发读写的时候力不从...

2019-01-22 17:35:55 402

原创 Redis 学习

(一)Redis入门      Redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库(高性能键值对数据库),支持的键值数据类型:字符串类型、列表类型、有序集合类型、散列类型、集合类型      Redis 应用场景:缓存(重点应用)、任务队列、应用排行榜、网站访问统计、数据过期处理、分布式集群架构中的 session 分离  ...

2019-01-22 17:13:57 130

原创 三大缓存框架(Ehcache+Memcache+Redis)

(一)Java Web开发缓存方案,Ehcache和Redis哪个更好1、Ehcache(纯Java的进程内缓存框架,也叫二级缓存)        Ehcache是一个开源的、设计于提高在数据从RDBMS中取出来的高花费、高延迟采取的一种缓存方案(在Java项目广泛的使用)。正因为Ehcache具有健壮性(基于java开发)、被认证(具有apache 2.0  license)、充满特...

2019-01-22 17:02:14 9471

原创 FreeMarker比JSP好在什么地方

(一)FreeMarker(根据提供的数据和创建好的模板,去自动的创建html静态页面(基于模板来生成文本输出))        FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具。 它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件       模板编写为F...

2019-01-19 10:29:51 1596

原创 Spring Boot学习

(一)Spring Boot(并不是对Spring功能上的增强,而是提供了一种快速开发使用Spring的方式(微框架,2013年伴随着Spring4.0诞生的),Spring Boot是个微服务框架的起点(背靠强大的Spring 生态社区,支撑Spring Cloud技术体系))      由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程,并...

2019-01-17 10:09:50 177

原创 Oracle 数据库学习

(一)Oracle 安装        1、 主要就是一些新特性的问题。11g比10g更稳定一些,其他的差别不大。12c添加新特性,不过还不够大众化。所以学习等使用就建议使用11g(11g是老版本,12c是新版本。12c增加了big data、data optimization、manageability、high availability等一些新功能)       2、  本地安...

2018-11-20 10:11:58 138

原创 SQL Server 数据库学习

试试

2018-11-20 10:10:52 138

原创 MYSQL 必知必会

试试

2018-11-20 10:08:24 85

原创 SQL 语法

(一)SQL            SQL 是一种标准 - 但是...            SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统。SQL 语句用于取回和更新数据库中的数据。SQL 可与数据库程序协同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以及其他数据库系统。         ...

2018-11-20 09:31:17 108

原创 将Java Web项目上传至阿里云服务器

(一)项目环境准备(Tomcat8 + JDK8 + Mysql5.7 环境)           1、将java web项目上传至阿里云服务器(将打包好的.war文件和Tomcat上传至服务器,并且需要把.war文件放在Tomcat的webapps目录下)                http://blog.csdn.net/fengsigaoju/article/details/...

2018-11-16 16:12:28 1247

原创 Mybatis框架(DAO开发+全局配置文件+映射文件+动态SQL)

(一)DAO开发方法(使用Mybatis开发Dao有两个方法,即 原始Dao方法 和 Mapper接口开发方法)           *  原始 DAO开发方法: 需要写dao接口和dao实现类,需要向dao实现类注入SqlSessionFactory,在方法体内通过SqlSessionFactory创建SqlSession           *  Mapper动态代理方法(程序员只...

2018-11-01 23:02:32 340

原创 Mybatis框架(入门)

(一)MyBatis 概述           MyBatis 本是Apache的一个开源项目 iBatis,2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis(支持普通 SQL查询,存储过程和高级映射的优秀持久层架),再后来托管到github下       (1)MyBatis对JDBC的操作数据库的过程...

2018-11-01 23:01:53 200

原创 SpringMVC 框架(架构+ 处理流程 + 优势 +注解)

(一)Spring MVC           Spring MVC 是一个典型的MVC框架,是Spring内置的Web框架,可以作为应用项目的展示层,继Spring 2.0对Spring MVC进行重大升级后,Spring 2.5又为Spring MVC引入了注解驱动功能,再到3.0时代,全面支持REST的网络服务和更容易的网络编程(Spring MVC 3.0)(最新Spring ...

2018-11-01 23:00:35 174

原创 Spring框架核心技术(核心接口+核心机制+AOP+注解+新特性)

(一)Spring容器(负责管理Bean与Bean之间的依赖关系)           Spring 容器最基本的接口就是BeanFactory,负责配置、创建、管理Bean,有一个子接口ApplicationContext,因此称之为Spring上下文,(在Spring中,所有管理的对象都是JavaBean对象,而BeanFactory和ApplicationContext就是sprin...

2018-11-01 22:59:31 944

原创 Spring框架(入门)

(一)Spring 框架介绍 (最新Spring 5.0、开源框架)      Spring 是于2003年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Developmentand Design中阐述的部分理念和原型衍生而来,是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前...

2018-11-01 22:58:39 139

原创 Java Web 三层架构模式(Web+Service +Dao)和 MVC设计模式(Web)

        三层架构是一个分层式的软件体系架构设计,可适用于任何一个项目。MVC是一个设计模式,是根据项目的具体需求来决定是否适用于该项目(Web项目开发)      *  三层架构模式: 所谓三层是表述层(WEB层)、业务逻辑层(Business Logic),以及数据访问层(Data Access)                 l WEB层(表现层):包含JSP和Servl...

2018-11-01 22:57:52 9143 2

原创 Java Web 分页技术(PageBean)

  *  分页工具类PageBean:  /* * 分页类的封装 */ public class PageBean&lt;T&gt; { private int pageNo; // 当前页数 private int totalCount; // 总记录数 private int totalPage; // 总页数 private int...

2018-11-01 22:55:56 758

原创 JavaBean 总结(一个封装类)

        JavaBean 是一种JAVA语言写成的可重用组件(为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器(服务器端小组件))        JavaBean一般分为可视化组件和非可视化组件两种,可视化组件可以是简单的GUI元素,如按钮或文本框,也可以是复杂的,如报表组件;非可视化组件没有GUI表现形式,用于封装业务逻辑、数据库操作等,其最大的优点在于...

2018-10-29 11:08:13 2603

原创 Java Web 会话技术(Cookie 与 Session)

(一)会话技术       1、存储客户端的状态              例如网站的购物系统,用户将购买的商品信息存储到哪里?因为 http协议是无状态的,也就是说每个客户访问服务器端资源时,服务器并不知道该客户端是谁,所以需要会话技术识别客户端的状态。会话技术是帮助服务器记住客户端状态(区分客户端)        2、会话技术            从打开一个浏览器访问...

2018-10-29 11:07:42 304

原创 JSP 技术

         JSP(Java Server Pages):其本身就是 Servlet 的简化,由Sun公司建立的一种以 java 语言作为脚本语言的动态网页技术标准,在传统的网页HTML文件(*. htm、*. html)中加入Java程序片段(Scriptlet) 和 JSP标记(tag),构成了JSP网页(*. jsp)(JSP适合编写输出动态内容,但不适合编写 java 逻辑)...

2018-10-28 11:07:09 169

原创 Servlet 开发

        Servlet 是运行在Web服务器上的一个java类,通过HTTP协议接收客户端的请求,同时向客户端一个响应。Sun公司提供的动态web资源开发技术(Sun公司在其API中提供了一个servlet接口),本质是上一段java小程序,可以将Servlet加入到Servlet容器中运行(Tomcat)                   【Servlet生命周期】...

2018-10-28 11:06:45 88

原创 Java(JDK 1.8新特性)

(一)主要内容     1、Lambda 表达式     2、函数式接口     3、方法引用与构造器引用     4、Stream API     5、接口中的默认方法与静态方法     6、新时间日期API     7、其他新特性 (二)新特性简介         (1)速度更快(主要体现在数据底层结构,如红黑树取代链表等)         (2)代...

2018-10-19 11:16:26 1290

原创 Java(高级特性(并发+事务+消息服务+安全))

(一)并发编程(Java 通过 Executor 提供四种线程池)              Executor框架是指 java 5中引入的一系列并发库中与executor相关的一些功能类,其中包括线程池,Executor、Executors,ExecutorService,CompletionService,Future,Callable等             并发编程的一种编程...

2018-10-19 11:15:24 197

原创 Java(高级特性(反射+动态代理+注解))(框架实现原理)

(一)反射机制          反射:是指程序可以访问、检测和修改它本身状态或行为的一种能力          反射机制:JAVA 有着一个非常突出的动态相关机制:Reflection(Java5 版本提供的高级新特性),JAVA反射机制是在运行状态中,对于任意一个类,都能够知道该类的所有属性和方法;对于任意一个对象,都能够调用该对象的任意一个方法和属性         反射...

2018-10-19 11:11:05 701

原创 Java(高级特性(异常+IO流+多线程))

(一)异常机制 所谓异常是指在程序运行的过程发生的一些不正常事件,如除0溢出,数组下标越界,所要读取的文件不存在、网络连接失败、非法参数等 Java程序的执行过程中如出现异常事件,可以生成一个异常类对象,该异常对象封装了异常事件的信息,并将其交给java运行时系统,这个过程称为抛出异常,不处理的话将会导致程序中断 Java通过API中Thr...

2018-10-19 11:10:54 964

原创 Java(JDK1.5新特性(枚举+泛型))

       JDK1.5已经发布很长时间,之所以还拿出来是因为其增加了很多个重要的特性,使用这些特性有助于我们简化开发,编写的代码更加简洁清晰安全,主要有以下几个特性:静态导入、可变参数、增强for循环、自动拆装箱、泛型和枚举(简单又实用)(一)静态导入           所谓静态导入只不过是在普通的import语句中加入关键字static,例如:               ...

2018-10-19 11:10:38 283

原创 Java(集合框架)

(一)Java集合框架(任何集合框架包括三部分内容:对外的接口、接口的实现和对集合运算的算法)      1、Java集合类:集合是一种工具类,就像是容器(容器类),用于存储任意数量的具有共同属性的对象。如果是类型相同但是作用和意义不同的属性不能放到同一个集合中(姓名,性别都是字符串类型但是意义不同)。Java中提供了有关集合的类库称为CollectionAPI(Collection ...

2018-10-18 11:37:47 134

原创 Java API(常用类)

(一)Java API概述        Java API(Java Application Programming Interface,Java应用程序接口),是Java语言提供的组织成包结构的许多类和接口的集合。Java API为用户编写应用程序提供了极大的便利。Java API包含在JDK中,因此用户只要安装了JDK运行环境就可以使用该API(在Java中的API就是JDK中提供...

2018-10-18 11:36:03 2913

原创 Java(面向对象)

(一)类和对象1、(1)面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以。     (2)面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。2、全局声明其实只是可以公用一个指定类型的变量,而全局变量则是已经初始化并且分配了唯一的地址并且在任何地方都...

2018-10-18 11:34:07 155

原创 Java(入门之语法基础)

(一)入门1、Java SE(标准版,标准版基础核心)、Java EE(企业版,大型企业应用开发)、Java ME(嵌入式开发) 2、(1)JDK:Java Development kit(Java开发工具包),调试、编译源文件,生成文档等,包含各种开发工具(安装完JDK后就有JRE和JVM),现在已经更新到JDK11(现在要做的就是,赶紧熟悉JDK 8,现在已经是很多互联网企业标...

2018-10-16 11:19:44 186

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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