自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

KK_GKD的博客

https://github.com/cwjokaka

  • 博客(18)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

原创 【从零写javaweb框架】(八)请求转发器

上一篇我们实现了把ClassHelper/BeanHelper/IocHelper/ControllerHelper在项目启动时加载进来。【从零写javaweb框架】(七)初始化框架现在开始写请求转发器,请求转发器是MVC的核心:需要编写一个servlet,让它来处理所有的请求。从HttpServletRequest对象中获取请求方法与请求路径,通过ControllerHelper.get

2018-01-31 00:49:56 790

原创 【从零写javaweb框架】(七)初始化框架

在上一篇【从零写javaweb框架】(六)加载Controller,我封装了请求对象(Request)与处理对象(Handler),并写了ControllerHelper来维护维护Request与Handler之间的映射关系。集合上几篇编写的ClassHelper/BeanHelper/IocHelper/ControllerHelper,我们现在需要做的是在项目启动时把他们都加载进来。p

2018-01-28 23:03:26 447

原创 【从零写javaweb框架】(六)加载Controller

在上一篇我们实现了依赖注入功能【从零写javaweb框架】(五)实现依赖注入功能现在编写一个ControllerHelper通过ClassHelper,可以获取所有定义了Controller注解的类,然后再通过反射获取该类中所有带有Action注解的方法,获取Action注解中的请求表达式,进而获取请求方法与请求路径,封装一个请求对象(Request)与处理对象(Handler),最后将R

2018-01-28 16:05:13 918

原创 【从零写javaweb框架】(五)实现依赖注入功能

上一篇我们写了一个方便反射的工具类ReflectionUtil,和一个用来实例化和保存Bean的容器BeanHelper。【从零写javaweb框架】(四)实现Bean容器经过前几篇的积累,我们现在终于可以写依赖注入的功能了,一个简单的IOC并不难实现。先简单介绍一下IOC(Inversion of Control,控制反转),意思是实例化过程并不是由开发者用new的方式来实例化,

2018-01-26 00:43:26 521

原创 【从零写javaweb框架】(四)实现Bean容器

上一章,我们写了ClassUtil类,用于提供与类操作相关的方法,然后又写了Controller/Service注解来标识框架要加载的类,Action用于标识Controller里的方法,Inject用于实现依赖注入,最后再写了一个ClassHelper来实行Bean类的加载和存取。【从零写javaweb框架】(三)开发一个类加载器本章我们会写一个Bean的容器,用来实例化和保存Bean。

2018-01-25 22:35:37 355

原创 【mysql索引】之使用索引扫描做排序

前言今天看了《高性能MySQL》的索引扫描做排序章节,并且亲身实践了一下,发现有些结果与原书不一样,个人猜测是MySQL版本不一样造成的,下面分享一下我个人的笔记。简介MySQL 有两种方式生成有序结果:通过排序操作或者按索引顺序扫描。如果EXPLAIN出来type列的值为index,则说明MySQL使用索引扫描来做排序。(这句有疑问,很多情况下都type都不是index,

2018-01-25 17:26:19 648

原创 【mysql索引】之覆盖索引

今天参考了《高性能MySQL》与几篇博文,总结一下我个人的对覆盖索引的理解。首先,覆盖索引并不是一种新的数据结构,它的意思是在查询的时候,利用到的索引已经完全包含需要查询字段的情况,在这种情况下,查询结果直接就是索引的值,并不需要再利用索引回表查询了。继续拿sakila数据库(MySQL安装好后自带的一个demo数据库)来举例,比如EXPLAIN SELECT ac

2018-01-24 18:08:20 243

原创 【从零写javaweb框架】(三)开发一个类加载器

上一篇我们写了4个常用工具类,1个维护常量的类,并且通过依赖它们用ConfigHelper实现了配置文件的读取,上一篇链接:【从零写javaweb框架】(二)定义和加载配置项,现在需要开发一个类加载器,用来加载包名下的所有类。现在写一个ClassUtil类,用于提供与类操作相关的方法(本篇文章都会在在框架项目中进行):package org.smart4j.framework.

2018-01-23 22:57:48 621

原创 【mysql索引】之多列索引

第零步:简单说一说多列索引并不是指建立多个单列索引,而是指在多个字段建立一个索引。在多个列上建立独立的单列索引大部分情况下并不能提高MySQL的查询性能,MySQL在5.0之后推出了索引合并策略(index merge),一定程度上可以使用多个单列索引来定位指定的行,但实际上更多时候说明了表上的索引建的很糟糕:1.当数据库服务器对多个单列索引做相交操作(

2018-01-22 14:19:29 1026

原创 【从零写javaweb框架】(二)定义和加载配置项

上一篇我们搭建了项目环境【从零写javaweb框架】(一)搭建开发环境,接下来要做的是定义和加载框架的配置项第一步:定义配置项打开上一篇创建好的demo1示例项目,在src/main/resources目录下创建一个smart.properties文件,内容如下:#MySQL驱动smart.framework.jdbc.driver=com.mysql.jdbc.Driver#

2018-01-21 22:41:06 613

原创 【从零写javaweb框架】(一)搭建开发环境

编程的第一步都是从搭建项目开始,写框架也不例外。第一步:创建框架项目首先创建我们的框架的maven项目,创建好后,修改pom.xml:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLo

2018-01-21 17:26:20 665

原创 【从零写javaweb框架】(零)前言

前言:首先想说的是,本系列的文章都是围绕黄勇写的《架构探险:从零开始写JavaWeb框架》一书,写这系列文章一方面是为了督促自己学习框架方面的知识,一方面是想分享自己在学习过程中对这本书的理解和感想。文章会从原书第3章开始写起(前两章主要内容是在IDEA中创建项目、写一个最简单的Web应用、Git仓库的简单使用),学习顺序和代码内容大部分会与原书一致,不一致的地方会指出来,中间会插入我个人的理解和...

2018-01-21 14:22:41 731

原创 【mysql索引】之前缀索引

第零步:简单说一说有时候需要索引很长的字符(例如BLOB,TEXT,或者很长的VARCHAR),这样会使得索引又大又慢。改良方法有:1.改用哈希索引(这里不讲)。2.使用字符串的前几个字符作为索引(即前缀索引)。下面具体主要说第2种方法,主要思路就是选择足够长的前缀以保证较高的选择性,同时又不能太长(造成空间浪费)。所谓选择性,是指不重复的索引数量除以总记录数,范围是(0,1],唯一索引之所以查询

2018-01-19 14:54:08 9868 4

原创 【数据结构】之利用并查集解决食物链问题

上一篇我简单地封装了一个并查集:【数据结构】之并查集简易封装这次用它来解决一个食物链的问题:/** * 食物链问题: * 有N只动物,编号为1到N,所有动物都属于A,B,C中的其中一种。 * 已知A吃B,B吃C,C吃A。 * 按顺序给出以下两种信息共K条: * 第一种:x和y属于同一种类。 * 第二种:x吃y。 * 然而这些信息可能会出错:有可能有的信息和之前给出的信息矛

2018-01-14 21:17:47 474

原创 【数据结构】之并查集简易封装

原理可以看上一节:【数据结构】之实现并查集下面对并查集进行简单的封装:头文件union_find.h:#ifndef INC_6_FOOD_LINK_UNION_H#define INC_6_FOOD_LINK_UNION_H#include #include typedef struct UnionFind{ unsigned int size; int

2018-01-14 21:08:47 274

转载 【REST】风格框架实战(从MVC到前后端分离)

本文转载自http://blog.csdn.net/justloveyou_/article/details/74379479#comments摘要:  本人在前辈《从MVC到前后端分离(REST-个人也认为是目前比较流行和比较好的方式)》一文的基础上,实现了一个基于Spring的符合REST风格的完整Demo,具有MVC分层结构并实现前后端分离,该项目体现了一个具有REST风格项

2018-01-06 19:10:37 627

原创 【数据结构】之实现并查集

#include /** * 并查集适用于管理元素分组情况的数据结构,本质上是树结构(不是二叉树) * 可以高效的进行以下操作: * 1.判断两个元素是否属于同一组(通过判断两个元素的根节点是否一样即可) * 2.合并两个元素所在的组(把其中一个元素的根节点的父节点指向另一个元素的根节点) * * 在该实现下,进行一次操作的时间复杂度为O(a(N)) * 其中N是元素个数,a(N

2018-01-03 23:50:20 222

原创 【数据结构】之实现二叉搜索树

#include #include /** * 二叉树是比较高效的存取结构 * 单次操作的时间复杂度为O(logN),N为总元素个数 * 二叉搜索树满足一下特点: * 左子树上的所有节点都比自己小 * 右子树上的所有节点都比自己大 *///定义数树的节点typedef struct Node{ int val; //值 struct N

2018-01-03 00:58:06 196

Maven3.2.5 教程 电子版

Apache Maven 是一套软件工程管理和整合工具。基于工程对象模型(POM)的概念,通过一个中央信息管理模块,Maven 能够管理项目的构建、报告和文档。 本教程将教你如何在使用 Java 开发的工程中,或者任何其他编程语言中使用 Maven。

2017-10-20

医疗信息管理

很好用的管理系统.经常用于医疗管理系统。

2013-12-27

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

TA关注的人

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