何白白开发记录

日常开发,鸡毛蒜皮
28 篇文章
10 人订阅

全部文章

何白白

软通动力 · 高级开发工程师 (已认证)

获取注解信息

882
何白白

软通动力 · 高级开发工程师 (已认证)

比反射更快!使用ASM获取class信息(ClassReader)

通常我们想要在java运行时获取class的信息时,通常使用反射的方式来获取其中的属性,方法,注解等信息。通常是这样的:

1281
何白白

软通动力 · 高级开发工程师 (已认证)

动态加载class,卸载class

912
何白白

软通动力 · 高级开发工程师 (已认证)

java代码执行系统命令

1212
何白白

软通动力 · 高级开发工程师 (已认证)

通过数据库生成实体类

​ 这只是一个简单的解析数据库建表语句之后,根据解析结果生成java文件的一个简单工具。写的原因有两个。

762
何白白

软通动力 · 高级开发工程师 (已认证)

一次项目代码重构-使用spring容器干掉条件判断

这是在一次公司项目中进行重构时,一些复杂业务时想到的一个去掉一些if else的办法。能够使代码逻辑更加清晰,减少一些业务上的耦合。

701
何白白

软通动力 · 高级开发工程师 (已认证)

正则简单使用说明

543
何白白

软通动力 · 高级开发工程师 (已认证)

使用Java打印字符串表格(中英文内容不乱)

最近在学习使用java来编写cli应用,但是在信息展示上碰到了难题。原因是没有很好工具来展示一个由字符串组成的表格。在git上搜到阿里巴巴有一个叫做 text-...

792
何白白

软通动力 · 高级开发工程师 (已认证)

获取系统中环境信息

1006
何白白

软通动力 · 高级开发工程师 (已认证)

自己写一个mvc框架吧(四)

上一章写了获取方法的入参,并根据入参的参数类型进行数据转换。这时候,我们已经具备了通过反射调用方法的一切必要条件。现在我们缺少一个http请求的入口,就是一个s...

702
何白白

软通动力 · 高级开发工程师 (已认证)

自己写一个mvc框架吧(一)

写了好几年的java程序,基本上每个项目都有用到mvc的框架,可能是spring mvc也可能是struts。这些框架怎么用相信大家也都很熟悉了,但是有没有想过...

541
何白白

软通动力 · 高级开发工程师 (已认证)

手写一个orm框架-7

上一篇讲了怎样生成一个sql中where的一部分,之后我们要做事情就简单很多了,就只要像最开始一样的生成各种sql语句就好了,之后只要再加上我们需要的条件,一个...

882
何白白

软通动力 · 高级开发工程师 (已认证)

手写一个orm框架-6

上一篇里我们实现了生成insert的sql,下面要开始实现update,delete,select的sql语句了。但是这些语句有一个比较麻烦的地方是:它们一般后...

1174
何白白

软通动力 · 高级开发工程师 (已认证)

手写一个orm框架-4

在上一篇里,我们已经取到了我们在生成sql语句中所需要的信息,这一篇里我们开始根据class来生成我们需要的sql。在这之前我们先确认几件事情

963
何白白

软通动力 · 高级开发工程师 (已认证)

手写一个orm框架-1

在class中先使用注解的形式,将class和表做一个映射关系(属性名称和字段名称的映射)。

582
何白白

软通动力 · 高级开发工程师 (已认证)

自己写一个mvc框架吧(五)

上一章本来是说这一章要写视图处理的部分,但是由于我在测试代码的时候需要频繁的修改配置文件,太麻烦了。所以这一章先把支持注解的功能加上,这样就不需要经常地修改配置...

695
何白白

软通动力 · 高级开发工程师 (已认证)

自己写一个mvc框架吧(三)

上一篇我们将url与Method的映射创建完毕,并成功的将映射关系创建起来了。这一篇我们将根据Method的入参参数名称、参数类型来获取参数,并转换参数类型,使...

1083
何白白

软通动力 · 高级开发工程师 (已认证)

手写一个orm框架-2

​ 想要实现一个orm的功能,我觉得就是要将class和数据库中的表创建映射关系。把class的名称和表的名称,class属性名称和表的字段名称,属性类型与表的...

682
何白白

软通动力 · 高级开发工程师 (已认证)

手写一个orm框架-3

上一篇我们完成了class到表映射关系的建立,但是这个并不能被代码正确处理,我们还需要让程序能够正确的识别这些映射关系。

1084
何白白

软通动力 · 高级开发工程师 (已认证)

手写一个orm框架-5

首先我们要根据User.java拿到所有的表的字段个名称,和对应的值。就是上一篇写到的:EntityTableRowMapper

451

扫码关注云+社区

领取腾讯云代金券