自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(148)
  • 资源 (19)
  • 论坛 (225)
  • 收藏
  • 关注

原创 生产问题一则:ThreadLocal使用不当导致的内存泄露

先简单介绍一下 ThreadLocal,它是一个线程级的数据存储对象,生命周期是从一个线程的创建到该线程销毁。ThreadLocal里的数据,只能被所持有的线程读取,所以是线程安全的(前提是该数据不是多线程共享的)。ThreadLocal的get、set、remove等方法,其实是对Thread.threadLocals字段的封装,而Thread.threadLocals的类型是ThreadLocalMap,它维护了一个key/value键值对,ThreadLocalMap.set方法简略代码如下:/

2021-07-28 15:31:29 64

原创 生产问题一则:MySQL隔离级别引发的数据读取失败问题

先简介MySQL的4种隔离级别和解决的3种问题:隔离级别脏读不可重复读幻读读未提交 read-uncommitted是是是读已提交 read-committed否是是可重复读 repeatable-read否否是串行化 serializable否否否脏读:事务A新增或更新数据,还未提交,事务B就能读取到,然后事务A回滚了,导致事务B读取的是脏数据。不可重复读:事务A读取一行数据,事务B更新该数据,事务A再次读取同一行数据,两次读取

2021-06-30 13:03:45 22

原创 SpringCloudGateway限流后,默认返回429的改造:改302跳转或增加响应body

上篇介绍了使用SpringCloudGateway如何在内存中进行限流操作。但是,SpringCloudGateway默认是返回HttpStatus.TOO_MANY_REQUESTS 429状态,可是我们并不希望用户看到这个不友好的提示,而是希望用户看到我们的自定义界面,更好看,或者去一个游戏界面让用户玩玩游戏吧。有一个解决方案,一般在api网关的前面还会部署一个nginx服务,用于网关的负载均衡,那么可以在nginx收到429响应时,转向特定页面进行展示。但是如果我们希望根据不同的服务,转向不同的

2021-03-25 15:06:10 759

原创 SpringCloudGateway内存中基于令牌桶进行限流

研究了一下网上的很多文章,基本都是使用 RedisRateLimiter,即根据Redis来进行限流操作。这样有个好处,就是网关的集群可以使用同一套数据进行限流;当然也有缺点,网关本来就是所有流量的集中出入口,如果每个请求都要往返一次Redis,无疑加重了网关的负担,性能有下降。本文介绍了如何直接在内存中进行限流,内存限流的缺点,当然就是对集群不友好了,比如有3个网关实例在运行,每个网关按每秒1个令牌,令牌桶容量为10,那么实际上就是每秒3个令牌,最大容量是10~30波动,不过基于令牌桶算法的控制,我

2021-03-24 11:52:36 290

原创 生产慢查询记录:MySQL IN 子查询导致的慢查询

嗯,先说结论:MySQL的 in subquery 会导致全表扫描,并不会走索引,即使是用主键id in (子查询)也一样,比如:SELECT id FROM Activity WHERE Id IN (SELECT 1 WHERE 1=1)SELECT id FROM Activity WHERE Id IN (SELECT 1 WHERE 1=0)参考官方对 IN(子查询) 的说明,里面说:先执行外层查询,再匹配子查询生成的数据MySQL evaluates queries “from out

2021-02-05 16:08:56 182

原创 Spring Cache缓存使用问题整理

接上篇,解读了Spring框架的缓存实现原理后,本文记录一些使用过程中的怎么办问题。前言:在没有引入其它类库,也没有自定义配置的情况下,一些默认的缓存实现:CacheManager: org.springframework.cache.concurrent.ConcurrentMapCacheManagerCacheResolver: org.springframework.cache.interceptor.SimpleCacheResolverKeyGenerator: org.spring

2021-01-23 17:06:15 202 1

原创 Spring框架的Cache缓存实现源码解读与原理解析

项目需要,对Spring的Cache缓存实现做了一次分析,写一篇小结在此。本文基于 spring-context 5.2.12.RELEASE的源码:<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.2.12.RELEASE</version> &lt

2021-01-14 08:00:52 386 1

原创 Spring项目统一cacheManager出错:No CacheResolver specified, and no unique bean of type CacheManager found

起因,一些基础数据的接口访问量居高不下,在高峰期很容易出现服务性能问题,并经常需要扩容。最早的解决方案,是让各调用方,自己添加缓存,避免频繁访问基础服务接口。该方案存在的问题,就是数据经常不一致,基础数据变了,但是调用方不知道,如果用MQ去通知,技术方案又复杂了。第二期的解决方案,是在基础数据提供方添加缓存,因为这些数据是否变化,只有提供者知道并可以及时过期处理。该方案效果还是比较明显的,但是监控数据上的TPS依旧存在,大量的HTTP请求也依然存在性能浪费的问题。而且各个服务的缓存方案各不一致,比如

2021-01-09 14:35:06 675

原创 生产慢查询记录:MySQL统计问题导致的慢查询一则

先说结论,变更频繁的大表,应该定期使用 ANALYZE TABLE 命令分析优化表统计信息。正文:收到一起bug反馈,生产环境突然查询变慢,查询消费数据需要近20秒才能有响应,开发兄弟在测试环境使用同样的代码版本,并把生产数据导入测试环境,均无法重现。VPN访问生产环境的swagger接口验证,也是秒级响应,无法重现。第一反应,看有没有慢查询,发现没有注:这一步,获取信息有误,开发给了错误的连接信息,导致判断没有慢查询。幸好线上问题是可以复现的,先把生产的一台服务器下线,然后把请求打到下线的服

2020-12-22 18:28:39 162

原创 Java单元测试:使用PowerMockito库对方法进行进一步mock

单元测试第七篇,在第六篇中,介绍了mockito对public方法的mock,但是mockito不支持私有方法、静态方法等,因此,本文介绍PowerMockito库,它在mokito上进行增强,可以mock 静态方法、私有方法、final方法、enum、构造函数等等。注:要使用PowerMockito,必须使用org.junit.Test,且class和method都必须是public参考:https://github.com/powermock/powermock/issues/1030。相关代码

2020-12-17 15:55:46 403

原创 Java单元测试:使用mockito库进行方法级mock,完成单元测试

单元测试第六篇,演示在单元测试时,如何拦截某些方法的访问,让它们返回我们想要的值,而不是执行该方法本身,以便其它代码的测试和验证。相关代码已经放在Github上:源代码注:前面5篇,是介绍在单元测试中避免访问外部中间件,但有时,我们想进行测试的代码,调用了一些我们并不想测试的函数方法,此时,就可以用mockito框架来mock掉这些不想测试的方法。下面简述开发过程:1、首先,还是正常建立项目,并完成一些常规的业务逻辑开发;2、项目添加mockito库的引用,打开pom.xml,添加:<!-

2020-12-17 15:43:53 757

原创 Java单元测试:使用spring-boot-test库完成MVC控制器的单元测试

单元测试第五篇,演示在单元测试时,如何模拟浏览器访问Controller里的方法,进行测试和验证。相关代码已经放在Github上:源代码下面简述开发过程:1、首先,还是正常建立项目,并有常规的MongoDB操作的业务逻辑;2、项目添加spring-boot-starter-test库的引用,打开pom.xml,添加:<dependency> <groupId>org.springframework.boot</groupId> <artif

2020-12-08 13:54:59 80

原创 Java单元测试:使用de.flapdoodle.embed.mongo库完成MongoDB的操作mock

单元测试第四篇,演示在单元测试时,如何对MongoDB操作进行mock,便于本地或CI/CD环境的质量测试、覆盖率测试。相关代码已经放在Github上:源代码注:该库在首次运行时,会真的去下载并搭建一个Mongo运行环境,因此:1、运行时,需要外网网络,并且质量不能太差,一个包上百兆呢(只会下载一次)2、每次运行,都需要清理旧数据,否则可能对你的测试代码造成干扰。下面简述开发过程:1、首先,还是正常建立项目,并有常规的MongoDB操作的业务逻辑;2、项目添加mock库的引用,打开pom.xm

2020-12-07 20:15:25 554

原创 Java单元测试:使用embedded-redis库完成Redis的操作mock

单元测试第三篇,演示在单元测试时,在没有安装Redis服务时,如果对Redis操作进行mock。相关代码已经放在Github上:源代码注:有些资料说,embedded-redis存在一些问题,我在具体使用中,因为只使用了基本的key value操作,暂时未发现。下面简述开发过程:1、首先,还是正常建立项目,并有常规的REDIS操作的业务逻辑;2、项目添加mock库的引用,打开pom.xml,添加:<dependency> <groupId>it.ozimov&lt

2020-12-02 11:59:00 1414

原创 Java单元测试:使用RabbitMQ mock库完成消息生产和消费的mock模拟

单元测试第二篇,演示在单元测试时,RabbitMQ生产者和消费者的mock。相关代码已经放在Github上:源代码要注意的是,因为不是真实的消息队列中间件,只是进程内mock,因此,生产的消息无法被其它服务(进程)消费,消费者也无法收到真实的MQ消息。下面简述开发过程:1、首先,还是正常建立项目,并有常规的生产消息或消费消息的业务逻辑;2、项目添加mock库的引用,打开pom.xml,添加:<dependency> <groupId>com.github.fri

2020-11-28 22:25:27 846 3

原创 Java单元测试:使用内存数据库h2完成JPA的mock模拟

为了让兄弟们快速介入单元测试的基本使用,整理了一系列不同场景的,基于SpringBoot的单元测试Demo,并梳理一下相关使用过程和注意事项。首先是数据库,本文基于JPA进行说明,开发使用MySql,单元测试使用H2数据库。这样,单元测试可以在Jenkins构建环境或其它管道模式下运行,便于业务的正确性测试和覆盖率检测。相关代码已经放在Github上:源代码下面简述开发过程:1、项目已经正常建立,并有常规的仓储层操作业务逻辑;2、项目添加h2数据库的引用,打开pom.xml,添加:<de

2020-11-20 16:54:26 909 5

原创 日志记录:注解方式记录方法日志

前面分别讲了5篇,包括:Feign、JPA、MVC、Redis、RabbitMQ。对业务项目无侵入,在框架层面实现全局日志记录的解决方案。一些通用的日志需要已经差不多了。但是实际业务中,还是经常需要按实际需要,记录一些日志的.本文就介绍,如何在方法上加一个注解,就完成了对方法的输入输出及耗时,进行记录日志。具体的Demo演示代码,已经上传到:Github代码具体实现,是通过 spring-boot-starter-aop 切面实现的。1、定义一个只能用于方法的注解:import java.l

2020-11-06 15:51:50 462

原创 全局记录RabbitMQ的消费者消息日志

还是为了方便不同环境的问题排查,需要记录 消费者收到的所有消息,最好也能记录一下每个消息的处理时长,哈哈。注:本文的完整代码,已经上传到:Github代码通过分析springframework.amqp代码,发现RabbitListener注解的消费者,是通过 SimpleMessageListenerContainer 类在处理监听:org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer而 SimpleMe

2020-11-05 11:41:08 1513

原创 全局记录SpringBoot Redis的请求和响应日志

同前文,有时需要跟踪Redis的命令、参数,以及Redis的返回数据情况,如何开启Redis的全局日志呢?首先当然是在网上找了一些资料,发现要么是通过Redis第三方工具监控Redis通信,要么是通过代理RedisTemplate,拦截RedisTemplate类的方法,而RedisTemplate类集成了9个opsForXxx方法,还有expire或delete方法又是独立的,而且相关命令基本都长得跟Redis不太一样,不熟悉的话,需要看一下源码,才知道是哪个Redis命令。调研了一下Redis操作

2020-10-24 22:07:31 851

原创 全局记录SpringBoot MVC的请求和响应日志

目录1、使用logbook组件输出日志2、自定义Filter输出日志在线上出现问题需要排查,需要开启整个服务的请求与响应日志,下面简介一下如何开启MVC日志:注1:本文基于 spring-boot-starter-parent 2.3.4.RELEASE注2:由于站点一般访问量都比较大,影响性能,生产不建议开启,仅在需要问题排查时,通过actuator接口开启,排查完毕要及时关闭。1、使用logbook组件输出日志演示代码参考点这里1.1、添加logbook引用:<!-- https:

2020-10-21 10:42:31 634

原创 全局记录JPA的SQL、参数和执行时长日志

目录1、只开启请求的SQL和具体参数:2、希望记录完整的SQL和执行时长:3、记录返回的结果集或更新行数日志同样为了问题排查,需要开启数据库的访问日志,了解请求的SQL及具体参数,最好还记录一下时长,以便排查慢查询,最好还能有返回结果情况,下面简介一下如何开启JPA的日志:注:本文基于spring-boot-starter-parent 2.3.4.RELEASE1、只开启请求的SQL和具体参数:如果有sql和参数就够了,那么在application.yml里添加如下配置就好了:loggin

2020-10-14 20:44:38 1009

原创 全局记录Feign的请求和响应日志

这里写目录标题1、项目里定义FeignClient接口:2、单个FeignClient接口开启日志:3、所有FeignClient接口 开启日志4、使用Aspect切面输出日志项目里使用了Feign进行远程调用,有时为了问题排查,需要开启请求和响应日志,下面简介一下如何开启Feign日志:1、项目里定义FeignClient接口:package com.example.demo.feign;import org.springframework.cloud.openfeign.FeignClient

2020-10-13 12:14:03 2104 2

原创 线上故障小记:低效的组合算法导致的崩溃

快12点了,准备吃饭了,突然收到告警:Process [user2-activity] CPU Time > 50%某个站点CPU占用超50%了。注:因为是服务混部,所以对机器上的单个服务,CPU不应该超过50%。排查步骤:1、看了一下监控大屏,该服务的所有节点,CPU都偏高,不正常。2、检查对应的数据库慢查询,一切正常。3、网关上,下线某台节点,然后对该站点的进程,导出一个内存Dump文件;4、用WinDebug打开分析,发现有4个线程执行时间较长,卡在 ProcessCalTicke

2020-09-04 12:05:25 71

原创 MySQL写入emoji表情,并读取emoji表情的操作。

先放结论,读写emoji表情都正常的操作方式是:1、数据库的表定义,必须是 utf8mb4;2、SpringBoot配置文件里的连接串必须加 characterEncoding=utf83、配置文件里同时要添加初始化SQL语句: initSQL: “SET NAMES utf8mb4”保证以上3步,就可以正确写入,也能正确读取出emoji表情字符。-------------------------------------------------我是分隔符----------------------

2020-07-30 20:06:39 403 2

原创 JPA-JpaRepository方法命名语法小记

梳理了一遍JPA的方法命名语法,记录一下,以便后续备查。注:本文不介绍JPL语法,版本为spring-data-jpa-2.3.0.RELEASE。假设实体类名为 aaa,且定义如下:import lombok.Data;import javax.persistence.Entity;import javax.persistence.Id;@Entity@Datapublic class aaa { @Id private long id; private long

2020-05-21 20:27:34 1245

原创 快捷键冲突情况小记

有相当长一段时间,在使用IDEA调试的时候,发现F8按钮不好使,但是F7和F9又OK,还以为是键盘坏了,今天突然想起以前修复过快捷键冲突的问题,就查了一下安装过的软件,果然,F8被有道词典给注册了,关闭有道的快捷键就好了,写一个文章记录那些有冲突的软件吧。建议如下这些软件,关闭所有快捷键,谁也不知道哪天就冲突了呢……1、有道词典设置=》取词划词=》开关热键 默认是F8,删除它;影响IDEA的F8调试 和 Chrome开发者工具的F8调试其它:设置=》常规Ctrl+Alt+X 打开有道词典Ct

2020-05-13 11:12:45 221

原创 SpringBoot加62进制,自增序列,实现短网址服务

看了一个短网址项目,需要提前批量生成大量短网址,并转为二维码,然后打印出来,线下运营去客户那边贴码,同时在后台绑定跳转地址。这个项目的实现是生成随机的6位字符串,再判断数据库不存在时,才插入数据库,伪代码就是:string code;do{ code = Random.Get(6);// 6位随机串短码}while(DB.Exist(code));DB.Add(code);r...

2020-03-27 23:55:20 599

原创 仿Java实现的,DotNet版本的Feign类库

简介Feign是Java里的一个声明式的http api请求库,可以通过注解(类似.Net的特性)来快速并优雅的封装对http的调用,并且方便理解和后续的维护,已经广泛的在Spring Cloud的解决方案中应用。基于这些优点,我也为.Net封装了一个类似的类库:Beinet.Feign,下面简单介绍一下使用方法。注1:该库基于Framework4.0开发(可以支持WinXP系统),并依...

2020-03-21 13:02:02 500

原创 简介LinFu.DynamicProxy动态代理,及Attribute的构造过程

这里写自定义目录标题这2天,基于项目可维护性的考虑,要实现一套类似于Java Feign的类库,可以快速并且优雅的声明和调用API,当然,Feign都是接口声明,不考虑做接口实现,因此采用LinFu.DynamicProxy作为动态代理,来拦截所有Feign接口方法的调用。LinFu.DynamicProxy介绍,可以参考这里,至于为啥不用Castle DynamicProxy,因为Castl...

2020-03-18 22:38:10 144

原创 MySQL隐式转换,导致的误操作更新数据一则

早上过来,有数据需要刷库,简单整理更新语句如下:UPDATE tb SET content='xxx' WHERE tcode=1因为该表的 tcode 定义如下,并且是唯一索引:`Code` varchar(128) NOT NULL COMMENT '短码'没有想太多,直接安排刷库了,一看刷库结果,影响行数4097行,头一晕,赶紧用查询语句看一下:SELECT tcode F...

2020-03-10 09:56:25 108

原创 .Net常见线程安全问题整理

最近线上又出现了几次线程安全问题 导致的服务异常,线程安全问题都是隐藏的炸弹,有可能几个月都不出问题,也有可能连续几天爆炸好几次,问题出现的结果完全是无法确定的,包括但不限于如下结果:应用异常,且无法自恢复,必须重启站点或服务;陷入死循环,导致CPU占用100%,从而整台服务器崩溃;错误数据入库,导致一系列的排查、数据修复的困难,甚至可能无法修复数据;因此,很有必要做几次全局的筛查...

2019-09-29 17:11:40 597

原创 记一次Windows与.Net 线上请求超时的问题排查过程

某日,收到同事反馈,大量支付数据丢失,未能正常入库,无法确定原因。找同事了解了一下流程和日志,流程很简单:错误日志就是job那边有大量的超时异常:System.Net.WebException: 操作超时 在 System.Net.HttpWebRequest.GetRequestStream(TransportContext& context) 在 System.Net...

2019-06-10 20:27:42 423

原创 Java学习-03:Maven项目创建/安装与引用

Java学习-01:环境配置与编译第一个程序Java学习-02:项目打包与发布本文介绍,如何在IDEA里,创建一个maven项目,并安装到本地的maven仓库时,然后在SpringBoot项目里引用它。1、新建一个Maven项目,操作如图,从maven-archetype-quickstart模板创建:2、在下一步窗口里,输入这个项目的:Group 项目所属的组织,如beinet公司...

2019-05-15 20:00:37 177

原创 Java学习-02:项目打包与发布

IDEA安装参考前文:Java环境配置IDEA项目开发完成后,怎么进行打包和发布?有2种方案,第一种是用IDEA直接打包,第二种是用maven打包。我们的项目都是通过Jenkins调用maven命令行进行打包和推送线上服务器。这里不介绍IDEA本身的打包,只讨论maven打包的2种方式:0、pom配置:在打包前,要先对项目的pom文件增加一些配置:0.1、在下添加 jar,表示打j...

2019-05-07 20:33:37 212

原创 WinDbg排查.net性能或内存问题步骤简述

安装步骤:第一步当然是安装了,需要注意的是,千万不要搜索 windbg 然后下载,搜索到的windbg安装文件,都不是我们想要的,真正的windbg,实际上是在微软的SDK里,下载链接在这里:https://developer.microsoft.com/en-US/windows/downloads/windows-10-sdk点击这个网页里的 DOWNLOAD THE .ISO,文件...

2019-03-29 15:01:40 1175 2

原创 业务开发部署时,消息消费者是独立部署还是跟站点一起部署的考虑。

在当前互联网场景下,消息队列作为业务解耦的中间件服务,已经越来越多的得到了应用;但是,在实际的部署中,我发现有相当多的开发人员,把队列的消费代码,直接写到了Web站点的代码里,并且部署上线。应该说,在小规模的应用场景下,这种作法没有太大的问题:开发简单,一个项目完成所有业务场景;部署简单,只需要部署一个站点就完事了,后续的更新维护和日志排查,也只需要看一个地方就ok。但是,在规模较大...

2019-03-27 10:57:34 293

原创 记录一次问题排查过程:Random线程不安全导致的CPU满

先写结论System.Random是线程不安全的,要避免使用单例,或者进行加锁操作。参考:https://docs.microsoft.com/en-us/dotnet/api/system.random这里有一句话:If you don’t ensure that the Random object is accessed in a thread-safe way, calls to me...

2019-03-21 15:58:02 556

原创 System.Web.PreApplicationStartMethodAttribute应用场景

前几天整理了一下开发框架的内容,记录一下我们的项目中,对 System.Web.PreApplicationStartMethodAttribute这个属性的一些应用场景。注:Nuget上有个WebActivatorEx库,它也定义了相同的一个类:PreApplicationStartMethodAttribute,简单来说:WebActivatorEx.PreApplicationStartM...

2019-02-27 13:15:26 509

原创 .net异步上下文对象简介:AsyncLocal 和 CallContext

在Web开发过程中,有时需要在整个生命周期里传输数据,一般常见的做法就是使用 :HttpContext.Current.Items.Add(“name”, “value”);这样就可以在整个上下文里访问到需要的对象了,甚至HttpContext.Current.Items也是支持async异步上下文的。如果你只做web开发,那么用它就对了,可以不考虑其它对象。注:我在测试过程中,发现有时a...

2019-01-22 20:49:45 2520

原创 .net的线程本地存储Thread Local Storage:ThreadStaticAttribute/TheadLocal/LocalDataStoreSlot

在项目中,发现有同学使用了ThreadStaticAttribute,之前没怎么使用过,特意了解和测试了一下,不是很推荐使用这个特性。这3个东西,叫做线程本地存储,全名:Thread Local Storage。ThreadStaticAttribute的文档:https://docs.microsoft.com/zh-cn/dotnet/api/system.threadstaticatt...

2019-01-09 16:36:29 125

ASP.Net做的简易版文件管理器,就一个aspx文件

由于工作中的程序日志,是通过IIS自带的目录浏览功能来查看,不能进行一些处理,比如文件太多,页面显示太慢,想移动一些文件到旧的目录,或一些其它的文件管理操作,就做了一个简单的资源管理器,为了简单,代码和html全在一个文件里,什么压缩解压的功能也没加 注:把文件放到网站目录下即可运行,注意进入时要加一个QueryString来填写进入密码,初始密码为:beinet.cn 请自行修改代码里的密码配置 运行方式:FileManager.aspx?p=beinet.cn 比如你的网站是:http://www.beinet.cn/,你把这个文件放在根目录下,那么进入这个文件方式就是: http://www.beinet.cn/FileManager.aspx?p=beinet.cn 如果你发现有什么bug,请给我留言 或者你增加了什么新功能,希望给我发一个版本,一起进步,呵呵 2010.11.17更新日志: 1、版面修改; 2、增加目录或文件改名功能(使用js的prompt弹出窗口,所以IE8下可能会有提示) 3、增加目录批量删除 和 目录批量移动功能 4、增加目录大小获取功能 最后说明:以后如有更新,直接发布在 http://beinet.cn 谁让csdn不能更新呢

2010-11-17

C#的Demo项目:RabbitMQ封装和使用

如题,C#的Demo项目:RabbitMQ封装和使用, 引用了RabbitMQ.Client 版本:3.6.9 RabbitMQ .NET客户端操作类库, 并简单展示了3种Exchange的使用

2018-05-23

基于C#.net开发的hosts静态域名解析文件修改工具

汗啊汗,刚刚发布,就发现有不足的地方,又修改了几个地方,大家还是去俺的博客下载吧(有做广告的嫌疑,嘿嘿) http://beinet.cn/Blog/BlogShow.aspx?id=ef26b5d8-9bad-4b9a-9e8b-77910e6a6cca 基于工作需要,业余开发了这么一个工具,用于修改hosts文件,并可以创建多种版本的快捷方式,比如:测试项目1用的hosts、测试项目2用的hosts,以便实时切换, 同时也提供了快捷的修改注册表以让hosts快速生效的功能,大概就这么多了,下面是下载地址,如果需要源代码,请向我留言或来信索取吧, 我也很希望得到你们的功能增强版,呵呵。

2010-11-25

C#版本和javascript版本的DES加密函数(注:可以交互加解密)

因项目需要,要用js加密后,提交给C#解密,在网上找了半天,无数个版本,却不能互相使用 就随便下载了一个JS版本的,把它改写成C#版本的 这样JS加密后,C#也能解密 反之C#加密后,JS也能解密 共享给大家吧。 注:是VS.Net2008版本,里面包含js的加解密函数和C#的加解密函数

2009-06-24

redis应用场景简介

去年我写的培训用教材,redis应用场景简介,简单列举了一些Redis的使用场景。 发现下载积分居然无法调整……

2019-05-06

修正:支持Chrome、FireFox的梅花雨日历控件3.0修正版

今天刚刚又修正了2个问题,但是因为这里不让编辑上传的文件,大家还是去我的博客下载吧: http://beinet.cn/Blog/BlogShow.aspx?id=c1c31322-f824-41a7-bc03-6b5ca98e4906 因为公司需要支持多版本的浏览器,再把我07年修正的那个版本拿来修改了一下, 在IE6,IE7,IE8,chrome谷歌浏览器6.0.472.55,FireFox火狐3.6.8下测试通过 需要说明的是,测试时间不多,所以可能测试不够详细,欢迎大家指出bug,并在我的博客发表回复:http://beinet.cn 注意:刚刚测出一个bug,请用记事本打开:

2010-09-14

2014年驾照科目一考试

自动抓取驾校一点通的考试题目后,生成的.net运行程序,可以自动测试,自动保存历史记录等, 这里只有程序,如果需要源代码,要自己去git上下载: https://github.com/youbl/Beinet.cn.DrivingTest

2014-03-06

C#版的算24点的算法

C#版的算24点的算法 06年写的,上传上来分享吧。

2009-09-04

WebScarab,比美HttpWatch和瑞士军刀的网站攻击测试软件

一个用来分析使用HTTP和HTTPS协议的应用程序框架,可以用来学习HTTP协议 我更多的是用来对自己做的网站进行注入攻击,以确保自己开发的网站的安全性足够 网上大家常用httpwatch来分析网页数据,但是HttpWatch只能分析,不能进行网站攻击,如果要攻击,通常还要加上nc瑞士军刀,可是即使是这样,对某些需要登录的网站,常常也无能为力 而WebScarab直接就可以在提交时修改数据,实时攻击,即实现先登录,再攻击,多说无益,大家看我的教程吧,有问题,欢迎大家跟我联系:youbl@126.com 注意:这个工具是基于java开发的,所以必须安装jre运行环境,然后双击压缩包里那个jar文件,就可以进行安装了。

2008-06-18

2014年驾照科目一考试大图版

自动抓取驾校一点通的考试题目后,生成的.net运行程序,可以自动测试,自动保存历史记录等, 这里只有程序,如果需要源代码,要自己去git上下载 注:程序里已经抓取好了全部的考试题目 和 大图 源码里有2个form,一个是考试的form,一个是抓取考题的form(如果题目变了,需要重新抓取) 代码下载地址是git: https://github.com/youbl/Beinet.cn.DrivingTest

2014-03-07

android build-tools_r24.0.1-linux

安卓build tools,省得下载了,哈哈

2016-11-01

支持AJAX的TreeView树例子,使用省市县三级xml作演示

看到网上很多想用ajax的树的例子,很奇怪,明明TreeView自带AJAX功能,取非要自己去写一大堆代码, 工作量增加了,而性能又没有提高多少 正好自己这次用到了,就做了一个例子,供大家一起研究参考 注:顺便下载了一个省市县的3级xml文件,作为ajax树联动展示的例子 这个例子还实现了选中父结点时,选中全部子结点; 取消一个子结点,同时取消全部级别的父结点。

2009-07-06

C#版的贪食蛇程序(使用VS.Net2005重新封装)

用C#编写的一个贪食蛇程序, 以前上传过一个cs文件版的,但是很多朋友都不知道怎么放入到Vs.Net2005中去,而且注释相对也比较少,看的不是很明白,所以我重新写了一下注释,并重新写了部分源代码 大家看看吧,有问题可以mail俺,youbl#126.com 注意修改#为@

2008-09-04

CodeComplete(代码大全)中文版

没什么好说的,经典书籍,从网上拷贝了一点说明,大小是9M,压缩后4M左右。<br><br>本书从软件质量和编程思想等方面论述了软件构造问题,并详细论述了紧跟潮流的新技术、高屋建瓴的观点、通用的概念,还含有丰富而典型的程序示例。本书中所论述的技术不仅填补了初级与高级编程技术之间的空白,而且也为程序员们提供了一个有关编程技巧的信息来源。本书适合经验丰富、自学成才的程序员阅读,也适合于那些几乎不懂什么编程技巧的新程序员阅读.-the book from the software quality and programming ideas discussed aspects of the software structure, this paper discusses in detail the trend of keeping up with new technologies, strategic point of view, the concept of generic, It also contains a rich and typical examples of the procedure. The book discussed by the technology not only to fill the junior and senior programming between the gaps, but also for the programmers to provide the programming skills a source of information. The book for experienced, self-taught programmer reading, also suitable for those almost do not know what the new programming techniques programmers reading.

2007-11-07

带进程路径的任务管理器

WinXP或Win2003自带的任务管理器看不到进程路径,查找起来很麻烦,这个是可以替换系统任务管理器的版本,下载后,覆盖到System32\dllcache目录下 注意:有时覆盖后,又变回旧版本了,需要在安全模式下覆盖

2012-02-14

android build-tools_r24.0.1-windows

android build tools r24.0.1 windows,直接这里下载吧

2016-11-01

不要下载这个了,又做了一个新的

不要下载这个了,又做了一个新的改进,在Chrome和FireFox下测试通过的 下载地址: http://download.csdn.net/source/2694314

2007-11-14

C#版的贪食蛇程序

用C#编写的一个贪食蛇程序,附上全部源代码,和一家一起研究,希望大家喜欢

2007-11-01

小巧的Asp.net分页控件源代码

个人项目中常用的分页控件,跟大家分享,有什么问题大家一起研究探讨 效果大致是这样的: |< < 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 > >|

2009-12-15

求一个rar遍历压缩子目录的批处理

发表于 2020-08-28 最后回复 2020-08-28

CSV文件内容中有逗号,用Split的问题

发表于 2008-01-04 最后回复 2020-05-28

【分享】仿Java实现的,DotNet版本的Feign HTTP请求类库

发表于 2020-03-22 最后回复 2020-05-20

【分享】SpringBoot开发的短网址服务源代码

发表于 2020-03-27 最后回复 2020-03-27

cp命令如何根据时间复制,并保留源文件路径

发表于 2016-09-18 最后回复 2020-03-06

IIS8.5上的站点,内存一直增长,但是托管内存并没有增长……

发表于 2017-12-01 最后回复 2020-03-06

打开chrome,就反复不断的请求clients1.google.com

发表于 2016-09-07 最后回复 2020-03-06

2,3个字段的表,数据量大了,需要分表吗?

发表于 2018-03-30 最后回复 2020-03-06

分享个人想法:消息消费者是独立部署还是跟站点一起部署的考虑

发表于 2019-03-27 最后回复 2020-03-06

阿里cdn域名被劫持……

发表于 2018-08-29 最后回复 2020-03-06

水边2的留言板

发表于 2020-01-02 最后回复 2020-03-06

IIS访问时间不一致的诡异问题

发表于 2012-07-16 最后回复 2019-10-12

SqlServer里,如何一条sql进行递归删除?

发表于 2010-09-09 最后回复 2019-08-14

经验分享:实例化SqlParameter时,如果是字符型,一定要指定size属性

发表于 2012-01-31 最后回复 2018-08-29

【分享】一瓶5年前的老酒,比市面上好用的Hosts管理工具

发表于 2017-11-04 最后回复 2018-03-30

开源我做的几个C#工具

发表于 2012-10-08 最后回复 2017-10-31

for的效率测试和结果,分享一下

发表于 2012-07-06 最后回复 2017-10-31

php中使用preg_replace替换中文,加了u模式,依然乱码的问题

发表于 2017-09-05 最后回复 2017-09-05

[分享]2014驾照科目一考试程序与源码

发表于 2014-03-06 最后回复 2017-08-31

MySql中插入中文报错:incorrect string value

发表于 2008-03-24 最后回复 2017-06-17

C#面试题,并散分

发表于 2009-04-02 最后回复 2017-05-01

求教,如何判断某个name是否进行过setcookie

发表于 2016-10-26 最后回复 2016-11-01

Centos下编译安装php,php-fpm.conf能放在其它路径吗?

发表于 2015-09-15 最后回复 2016-09-18

弱弱请教:@抑制符无效的问题

发表于 2016-08-29 最后回复 2016-08-30

求php里只获取大文件http code的快速方案

发表于 2016-07-07 最后回复 2016-07-07

ExecuteReader 要求已打开且可用的连接。连接的当前状态为正在连接。

发表于 2010-08-06 最后回复 2016-06-10

使用plUpload上传到其它域名时,Method为Options而不是Post的问题

发表于 2015-06-08 最后回复 2015-10-17

为什么创建的索引无效?force index也一样无效呢?

发表于 2015-09-02 最后回复 2015-09-02

[求助]怎么知道APK文件是基于哪个JDK版本编译的?

发表于 2014-12-12 最后回复 2015-09-02

IIS7下,在多字节的目标代码页中,没有此 Unicode 字符可以映射到的字符。 (Exception from HRESULT: 0x80070459)

发表于 2014-10-21 最后回复 2015-09-02

IIS7集成模式,接收POST数据非常慢的问题,求助

发表于 2014-09-14 最后回复 2015-09-02

mysql更新表某字段值,使其等于前7条记录的汇总值,如何写sql?

发表于 2015-07-27 最后回复 2015-07-28

join多表关联时,也只能用到一个索引吗?

发表于 2015-06-15 最后回复 2015-07-27

intval在win7x64和centos上最大值范围不同的问题

发表于 2015-05-22 最后回复 2015-05-25

mysql多表关联更新问题

发表于 2015-01-29 最后回复 2015-01-30

求一个bat批处理

发表于 2014-08-04 最后回复 2014-10-21

[问题分享]VS2013自带的Newtonsoft导致的编译异常

发表于 2014-09-05 最后回复 2014-09-17

Win8.1下,TotalCommander里,双击Console程序,一闪而过,无法正常运行

发表于 2014-07-02 最后回复 2014-09-14

大家帮忙分析下该不该跳槽呢

发表于 2014-04-16 最后回复 2014-08-04

源代码分享:C#版本的正则测试工具,带分组汇总功能,类似于RegexTester

发表于 2011-08-31 最后回复 2014-03-21

空空如也

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

TA关注的人 TA的粉丝

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