- 【Validator】字段验证器struct与多层级验证,go案例
{⌐■_■}
golang信息可视化开发语言
标签用法总结表标签功能代码实例required字段必填Namestring\v:“required”``alphaunicode验证字段是否只包含字母和Unicode字符Namestring\v:“alphaunicode”``gte验证字段值是否大于等于指定值Ageuint8\v:“gte=10”``lte验证字段值是否小于等于指定值Ageuint8\v:“lte=130”``e164验证电话号
- SQL SUM() 函数:快速掌握与高级应用
lsx202406
开发语言
SQLSUM()函数:快速掌握与高级应用SQL(StructuredQueryLanguage)作为一种强大的数据库查询语言,广泛应用于各种数据管理系统中。SUM()函数是SQL中用于执行数值聚合操作的关键函数之一,主要用于计算数据表中某列数值的总和。本文将详细介绍SUM()函数的基本用法、高级应用场景,并提供一些实用的优化技巧。一、SUM()函数的基本用法1.1基础语法SUM()函数的基本语法如
- 前端框架大比拼:React.js, Vue.js 及 Angular 的优势与适用场景探讨
布兰妮甜
前端框架前端前端框架react.jsvue.jsangular.js
文章目录前言一、React.js特点使用方法适用场景二、Vue.js特点使用方法适用场景三、Angular特点使用方法适用场景四、如何选择合适的前端框架五、前端框架对项目性能的影响结语前言随着互联网技术的飞速发展,前端开发已经从简单的页面展示演变为复杂的应用构建。为了应对日益增长的需求,各种前端框架应运而生,帮助开发者提高开发效率、优化用户体验。本文将详细介绍当前最流行的三个前端框架——React
- chrome源码剖析—UI架构&&消息机制
ปรัชญา แค้วคำมูล
c++性能优化chrome
Chrome浏览器的UI架构是高度模块化且基于现代图形技术和用户界面设计理念构建的。它的UI架构涵盖了窗口、标签页、控件、通知、菜单等组件的管理和交互。Chrome的UI基本上是通过views框架和Aura(Chrome自己的UI层)构建的,后者又基于Skia(2D图形渲染)和Blink(网页渲染引擎)工作。在开发ChromeUI时,涉及的关键概念包括开发步骤、模块化架构、消息机制等。以下是一个详
- 一个QT多线程的框架程序
CoderIsArt
qt开发语言ui
工程文件#-------------------------------------------------##ProjectcreatedbyQtCreator2023-03-23T21:21:21##-------------------------------------------------QT+=coreguigreaterThan(QT_MAJOR_VERSION,4):QT+=wi
- dmfldr 使用手册
yangeoooo
达梦工具
dmfldrUSERID=SYSDBA/SYSDBACONTROL=‘c:\fldr.ctl’2.1启动dmfldrUSERID和CONTROL是启动dmfldr必须要指定的参数,且USERID必须是第一个参数,CONTROL必须是第二个参数。[dmdba@ora79~]$dmfldrhelpFormat:./dmfldrKEYWORD=valueExample:./dmfldrSYSDBA/SY
- 数据结构c语言版上海交通大学出版社项目三《稀疏矩阵相加》
友人.227
数据结构c语言开发语言
两个稀疏矩阵A和B采用十字链表方式存储,计算C=A+B,C也采用十字链表方式存储。根据矩阵相加的运算法则,若将矩阵B加到矩阵A上,对于A的十字链表来说,可能进行的操作有:①当aij与bij均不等于0,且aij+bij≠0时,改变结点的value值;②当aij≠0且bij=0时,value值不变;③当aij=0且bij≠0时,插入一个新结点;④当aij与bij均不等于0,且aij+bij=0时,删除
- 深入RUST标准库内核(三)NonNull<T>/Unique<T>/mem::replace/Layout/GlobalAlloc
任成珺
rust开发语言后端
本书摘自《深入RUST标准库》,已经全网发售,恳请支持文章目录裸指针模块再分析NonNull代码分析NonNull创建关联方法NonNull类型转换方法NonNull方法NonNull的使用实例NonNull与MaybeUninit相关函数Unique代码分析mem模块函数泛型类型创建泛型类型拷贝与替换所有权转移的底层实现变量调用drop的时机其他函数RUST堆内存申请及释放RUST类型系统的内存
- Python数据获取:从基础到实践,一场数据探索之旅
傻啦嘿哟
关于python那些事儿pythonoracle开发语言
目录一、引言二、理解数据获取的基本概念三、使用Python进行网络数据抓取3.1基础工具:requests库3.2解析HTML:BeautifulSoup库3.3实战案例:抓取网页新闻列表四、从文件中读取数据4.1使用pandas读取CSV文件4.2读取Excel文件五、数据库数据访问六、数据清洗与预处理6.1处理缺失值6.2处理异常值6.3处理重复值6.4数据格式化与编码6.5数据标准化与归一化
- python可执行程序必须以管理员_Python实现管理员权限运行CMD指令
weixin_39977488
一、subprocess.PopenPython执行cmd指令属于外部调用,subprocess.Popen方法即可,实现如下:#!/usr/bin/python3#coding:utf-8importsubprocessdefcommand(cmd,timeout=1800000):try:sp=subprocess.Popen(cmd,shell=True,stdout=subprocess.
- 基于Qt5.14.2和mingw的Qt源码学习(五) — 事件循环之windows事件循环基础和控制台中的事件循环
coding-hwz
通过Qt源码学习C++和OOP#事件循环windowsc++
基于Qt5.14.2和mingw的Qt源码学习(五)—事件循环之windows事件循环基础和控制台中的事件循环一、QEvent1、Q_GADGET2、spontaneous()3、accept()和ignore()二、QEventLoop1、ProcessEventsFlags2、exec(1)QAtomicIntegera.loadAcquirestoreReleaseb.loadRelaxed
- 前端的请求头和响应头以及常见用途
在浏览器中发送HTTP请求时,通常需要查看请求头(requestheaders)和响应头(responseheaders)。这些头部信息包含了关于请求或响应的重要信息,例如内容类型、编码方式、cookie等。我们在对接后端的时候经常会碰到跟请求头和响应头的问题,下面是关于请求头和响应头的一些常用字段说明,了解这些非常重要,请求头(RequestHeaders)请求头包含了客户端(浏览器)向服务器发
- monaco-editor 的 Language Services
前端
我们是袋鼠云数栈UED团队,致力于打造优秀的一站式数据中台产品。我们始终保持工匠精神,探索前端道路,为社区积累并传播经验价值。本文作者:修能这是一段平平无奇的SQL语法SELECTid,sum(name)FROMstudentGROUPBYidORDERBYid;如果把这段代码放到monaco-editor(@0.49.0)中,一切也显得非常普通。monaco.editor.create(ref.
- kafka-保姆级配置说明(consumer)
xiao-xiang
kafkakafka分布式
bootstrap.servers=#deserializer应该与producer保持对应#key.deserializer=#value.deserializer=##fetch请求返回时,至少获取的字节数,默认值为1##当数据量不足时,客户端请求将会阻塞##此值越大,客户端请求阻塞的时间越长,这取决于producer生产效率和网络传输能力fetch.min.bytes=1##如果broker
- Vue - watchEffect()的使用
来一碗刘肉面
Vuevue.jsjavascript前端
在Vue3中,watchEffect()是一个用于自动追踪响应式数据变化并执行副作用的API。与watch()不同,watchEffect()不需要手动指定要观察的数据,而是会自动根据内部访问的响应式数据进行依赖追踪。这使得watchEffect()更加简洁和直观,适用于某些需要副作用的场景。简单说:立即执行一个函数,同时响应式地追踪其依赖,并在依赖的数据更改时重新执行该函数。基本语法:watch
- RabbitMQ 死信队列详解
web18484626332
面试学习路线阿里巴巴android前端后端
一、死信的概念死信,顾名思义就是无法被消费的消息。一般来说,Producer将消息投递到Broker或者直接到Queue里了,Consumer从Queue取出消息进行消费,但某些时候由于特定的原因导致Queue中的某些消息无法被消费,这样的消息如果没有后续的处理,就变成了死信,有死信自然就有了死信队列。应用场景:为了保证订单业务的消息数据不丢失,需要使用到RabbitMQ的死信队列机制,档消息消费
- 力扣111 二叉树的最小深度
想念@思恋
leetcode
#层次遍历classSolution:defminDepth(self,root:TreeNode)->int:ifrootisNone:return0queue=[]layer=[]cur=rootqueue.append(cur)layer.append(1)min_layer=1cur_layer=1whilequeue:cur=queue.pop(0)cur_layer=layer.pop
- rabbitmq-死信队列(死信交换机)(十)
小白划水
rabbitmqrabbitmq分布式java
消息进入死信队列的条件队列消息数量到达限制;比如给队列最大只能存储10条消息,当第11条消息进来的时候存不下了,第11条消息就被称为死信消费者拒接消费消息,basicNack/basicReject,并且不把消息重新放入原目标队列,requeue=false;原队列存在消息过期设置,消息到达超时时间未被消费;队列绑定死信交换机(重点,也就是在正常队列里设置者两个参数)给队列设置参数:x-dead-
- lvgl常用API.
dongxinddd123
前端javascript开发语言
显示lv_obj_clear_flag(uiobj,LV_OBJ_FLAG_HIDDEN);隐藏lv_obj_add_flag(uiobj,LV_OBJ_FLAG_HIDDEN);左右滑动:LV_EVENT_GESTURELV_DIR_LEFTLV_DIR_RIGHTif(event_code==LV_EVENT_GESTURE&&lv_indev_get_gesture_dir(lv_indev
- 【Eigen教程】高级矩阵操作(四)
十年一梦实验室
矩阵c++算法线性代数开发语言
内存对齐(MemoryAlignment)按值传递Eigen对象给函数(PassingEigenobjectsbyvaluetofunctions)别名(Aliasing)内存映射(MemoryMapping)一元表达式(UnaryExpression)Eigen仿函数(EigenFunctor)内存对齐(MemoryAlignment)Eigen的矩阵和向量在分配内存时会自动对齐,以提高性能,特
- leetcode——搜索二维矩阵II(java)
gentle_ice
leetcode矩阵算法java
编写一个高效的算法来搜索*m*x*n*矩阵matrix中的一个目标值target。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例1:输入:matrix=[[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]],target=5输出:true示例2:输入:matrix=
- 在每棵树中找最大值
嘻嘻哈哈樱桃
算法二叉树算法
目录题目思路代码题目给定一棵二叉树的根节点root,请找出该二叉树中每一层的最大值。示例1:输入:root=[1,3,2,5,3,null,9]输出:[1,3,9]示例2:输入:root=[1,2,3]输出:[1,3]思路同力扣102,层序遍历,取每一层的最大值代码classSolution{publicListlargestValues(TreeNoderoot){Listresult=newA
- FISCO BCOS(二十三)———maven和gradle引入FISCO BCOS Javasdk
林中有神君
#FISCOBCOS2.8.0mavenjavamybatis
build.gradle引入依赖dependencies{compile('org.fisco-bcos.java-sdk:fisco-bcos-java-sdk:2.7.2')
- Classifier Guidance 与 Classifier-Free Guidance
Adenialzz
stablediffusion
ClassifierGuidance与Classifier-FreeGuidanceDDPM终于把diffusion模型做work了,但无条件的生成在现实中应用场景不多,我们终归还是要可控的图像生成。本文简要介绍两篇关于diffusion模型可控生成的工作。其中Classifier-FreeGuidance的方法还是现在多数条件生成diffusion模型的主流思路。ClassifierGuidan
- No thread-bound request found: Are you referring to request attributes outside of an actual web requ
SUDO-1
javajava
Nothread-boundrequestfound:Areyoureferringtorequestattributesoutsideofanactualwebrequest,orprocessingarequestoutsideoftheoriginallyreceivingthread?Ifyouareactuallyoperatingwithinawebrequestandstillrec
- Diffusion中guidance_scale 的理解
不当菜鸡的程序媛
Diffusion人工智能stablediffusion
guidance_scale是一个控制生成图像引导程度的参数。它的含义和使用与论文Imagen:PhotorealisticText-to-ImageDiffusionModelswithComposableConditions中的公式(2)的引导权重类似。1.Classifier-FreeGuidance的背景Classifier-FreeGuidance是一种在扩散模型中提高生成样本质量的方法
- 【spark床头书系列】如何在YARN上启动Spark官网权威详解说明
BigDataMLApplication
sparkspark大数据分布式
【spark床头书系列】如何在YARN上启动Spark官网权威详解说明点击这里看全文文章目录添加其他JAR文件准备工作配置调试应用程序Spark属性重要说明KerberosYARN特定的Kerberos配置Kerberos故障排除配置外部Shuffle服务使用ApacheOozie启动应用程序使用Spark历史服务器替代SparkWebUI官网链接确保HADOOP_CONF_DIR或者YARN_C
- 【游戏设计原理】85 - 菲兹定律
tealcwu
#游戏设计的100个原理游戏游戏策划
1.什么是菲兹定律菲兹定律描述了目标大小、目标距离与到达目标所需时间之间的关系。目标越大、离起始点越近,人们越容易快速而精确地点击它。相反,目标越小或距离越远,操作的难度就越高。2.适用场景菲兹定律适用于以下场景:游戏设计战斗与瞄准:决定目标的大小和移动速度,平衡挑战与玩家体验。操控设计:控制器(如鼠标、手柄)精度与速度的优化。用户界面设计(UI/UX)按钮布局:将常用的功能按钮设计得更大,放置在
- JAVA中contains函数的用法(字符)
艾诺_Aynor
学习笔记JAVAJAVAJAVA基础contains
booleancontains(CharSequences):判断指定内容中是否包含括号中的内容;一般推荐把常量字符串写在前面,变量写在后面.
- Tesla V100驱动安装
郭宝才
linux服务器运维
确认操作系统kernel版本,参考链接:https://docs.nvidia.com/cuda/archive/12.2.0/cuda-installation-guide-linux/index.html安装依赖yuminstall-ygccgcc-c++rdma-coredkmselfutils-libelf-develntpyuminstall-ykernel-devel-$(uname-
- JVM StackMapTable 属性的作用及理解
lijingyao8206
jvm字节码Class文件StackMapTable
在Java 6版本之后JVM引入了栈图(Stack Map Table)概念。为了提高验证过程的效率,在字节码规范中添加了Stack Map Table属性,以下简称栈图,其方法的code属性中存储了局部变量和操作数的类型验证以及字节码的偏移量。也就是一个method需要且仅对应一个Stack Map Table。在Java 7版
- 回调函数调用方法
百合不是茶
java
最近在看大神写的代码时,.发现其中使用了很多的回调 ,以前只是在学习的时候经常用到 ,现在写个笔记 记录一下
代码很简单:
MainDemo :调用方法 得到方法的返回结果
- [时间机器]制造时间机器需要一些材料
comsci
制造
根据我的计算和推测,要完全实现制造一台时间机器,需要某些我们这个世界不存在的物质
和材料...
甚至可以这样说,这种材料和物质,我们在反应堆中也无法获得......
 
- 开口埋怨不如闭口做事
邓集海
邓集海 做人 做事 工作
“开口埋怨,不如闭口做事。”不是名人名言,而是一个普通父亲对儿子的训导。但是,因为这句训导,这位普通父亲却造就了一个名人儿子。这位普通父亲造就的名人儿子,叫张明正。 张明正出身贫寒,读书时成绩差,常挨老师批评。高中毕业,张明正连普通大学的分数线都没上。高考成绩出来后,平时开口怨这怨那的张明正,不从自身找原因,而是不停地埋怨自己家庭条件不好、埋怨父母没有给他创造良好的学习环境。
- jQuery插件开发全解析,类级别与对象级别开发
IT独行者
jquery开发插件 函数
jQuery插件的开发包括两种: 一种是类级别的插件开发,即给
jQuery添加新的全局函数,相当于给
jQuery类本身添加方法。
jQuery的全局函数就是属于
jQuery命名空间的函数,另一种是对象级别的插件开发,即给
jQuery对象添加方法。下面就两种函数的开发做详细的说明。
1
、类级别的插件开发 类级别的插件开发最直接的理解就是给jQuer
- Rome解析Rss
413277409
Rome解析Rss
import java.net.URL;
import java.util.List;
import org.junit.Test;
import com.sun.syndication.feed.synd.SyndCategory;
import com.sun.syndication.feed.synd.S
- RSA加密解密
无量
加密解密rsa
RSA加密解密代码
代码有待整理
package com.tongbanjie.commons.util;
import java.security.Key;
import java.security.KeyFactory;
import java.security.KeyPair;
import java.security.KeyPairGenerat
- linux 软件安装遇到的问题
aichenglong
linux遇到的问题ftp
1 ftp配置中遇到的问题
500 OOPS: cannot change directory
出现该问题的原因:是SELinux安装机制的问题.只要disable SELinux就可以了
修改方法:1 修改/etc/selinux/config 中SELINUX=disabled
2 source /etc
- 面试心得
alafqq
面试
最近面试了好几家公司。记录下;
支付宝,面试我的人胖胖的,看着人挺好的;博彦外包的职位,面试失败;
阿里金融,面试官人也挺和善,只不过我让他吐血了。。。
由于印象比较深,记录下;
1,自我介绍
2,说下八种基本类型;(算上string。楼主才答了3种,哈哈,string其实不是基本类型,是引用类型)
3,什么是包装类,包装类的优点;
4,平时看过什么书?NND,什么书都没看过。。照样
- java的多态性探讨
百合不是茶
java
java的多态性是指main方法在调用属性的时候类可以对这一属性做出反应的情况
//package 1;
class A{
public void test(){
System.out.println("A");
}
}
class D extends A{
public void test(){
S
- 网络编程基础篇之JavaScript-学习笔记
bijian1013
JavaScript
1.documentWrite
<html>
<head>
<script language="JavaScript">
document.write("这是电脑网络学校");
document.close();
</script>
</h
- 探索JUnit4扩展:深入Rule
bijian1013
JUnitRule单元测试
本文将进一步探究Rule的应用,展示如何使用Rule来替代@BeforeClass,@AfterClass,@Before和@After的功能。
在上一篇中提到,可以使用Rule替代现有的大部分Runner扩展,而且也不提倡对Runner中的withBefores(),withAfte
- [CSS]CSS浮动十五条规则
bit1129
css
这些浮动规则,主要是参考CSS权威指南关于浮动规则的总结,然后添加一些简单的例子以验证和理解这些规则。
1. 所有的页面元素都可以浮动 2. 一个元素浮动后,会成为块级元素,比如<span>,a, strong等都会变成块级元素 3.一个元素左浮动,会向最近的块级父元素的左上角移动,直到浮动元素的左外边界碰到块级父元素的左内边界;如果这个块级父元素已经有浮动元素停靠了
- 【Kafka六】Kafka Producer和Consumer多Broker、多Partition场景
bit1129
partition
0.Kafka服务器配置
3个broker
1个topic,6个partition,副本因子是2
2个consumer,每个consumer三个线程并发读取
1. Producer
package kafka.examples.multibrokers.producers;
import java.util.Properties;
import java.util.
- zabbix_agentd.conf配置文件详解
ronin47
zabbix 配置文件
Aliaskey的别名,例如 Alias=ttlsa.userid:vfs.file.regexp[/etc/passwd,^ttlsa:.:([0-9]+),,,,\1], 或者ttlsa的用户ID。你可以使用key:vfs.file.regexp[/etc/passwd,^ttlsa:.: ([0-9]+),,,,\1],也可以使用ttlsa.userid。备注: 别名不能重复,但是可以有多个
- java--19.用矩阵求Fibonacci数列的第N项
bylijinnan
fibonacci
参考了网上的思路,写了个Java版的:
public class Fibonacci {
final static int[] A={1,1,1,0};
public static void main(String[] args) {
int n=7;
for(int i=0;i<=n;i++){
int f=fibonac
- Netty源码学习-LengthFieldBasedFrameDecoder
bylijinnan
javanetty
先看看LengthFieldBasedFrameDecoder的官方API
http://docs.jboss.org/netty/3.1/api/org/jboss/netty/handler/codec/frame/LengthFieldBasedFrameDecoder.html
API举例说明了LengthFieldBasedFrameDecoder的解析机制,如下:
实
- AES加密解密
chicony
加密解密
AES加解密算法,使用Base64做转码以及辅助加密:
package com.wintv.common;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import sun.misc.BASE64Decod
- 文件编码格式转换
ctrain
编码格式
package com.test;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
- mysql 在linux客户端插入数据中文乱码
daizj
mysql中文乱码
1、查看系统客户端,数据库,连接层的编码
查看方法: http://daizj.iteye.com/blog/2174993
进入mysql,通过如下命令查看数据库编码方式: mysql> show variables like 'character_set_%'; +--------------------------+------
- 好代码是廉价的代码
dcj3sjt126com
程序员读书
长久以来我一直主张:好代码是廉价的代码。
当我跟做开发的同事说出这话时,他们的第一反应是一种惊愕,然后是将近一个星期的嘲笑,把它当作一个笑话来讲。 当他们走近看我的表情、知道我是认真的时,才收敛一点。
当最初的惊愕消退后,他们会用一些这样的话来反驳: “好代码不廉价,好代码是采用经过数十年计算机科学研究和积累得出的最佳实践设计模式和方法论建立起来的精心制作的程序代码。”
我只
- Android网络请求库——android-async-http
dcj3sjt126com
android
在iOS开发中有大名鼎鼎的ASIHttpRequest库,用来处理网络请求操作,今天要介绍的是一个在Android上同样强大的网络请求库android-async-http,目前非常火的应用Instagram和Pinterest的Android版就是用的这个网络请求库。这个网络请求库是基于Apache HttpClient库之上的一个异步网络请求处理库,网络处理均基于Android的非UI线程,通
- ORACLE 复习笔记之SQL语句的优化
eksliang
SQL优化Oracle sql语句优化SQL语句的优化
转载请出自出处:http://eksliang.iteye.com/blog/2097999
SQL语句的优化总结如下
sql语句的优化可以按照如下六个步骤进行:
合理使用索引
避免或者简化排序
消除对大表的扫描
避免复杂的通配符匹配
调整子查询的性能
EXISTS和IN运算符
下面我就按照上面这六个步骤分别进行总结:
- 浅析:Android 嵌套滑动机制(NestedScrolling)
gg163
android移动开发滑动机制嵌套
谷歌在发布安卓 Lollipop版本之后,为了更好的用户体验,Google为Android的滑动机制提供了NestedScrolling特性
NestedScrolling的特性可以体现在哪里呢?<!--[if !supportLineBreakNewLine]--><!--[endif]-->
比如你使用了Toolbar,下面一个ScrollView,向上滚
- 使用hovertree菜单作为后台导航
hvt
JavaScriptjquery.nethovertreeasp.net
hovertree是一个jquery菜单插件,官方网址:http://keleyi.com/jq/hovertree/ ,可以登录该网址体验效果。
0.1.3版本:http://keleyi.com/jq/hovertree/demo/demo.0.1.3.htm
hovertree插件包含文件:
http://keleyi.com/jq/hovertree/css
- SVG 教程 (二)矩形
天梯梦
svg
SVG <rect> SVG Shapes
SVG有一些预定义的形状元素,可被开发者使用和操作:
矩形 <rect>
圆形 <circle>
椭圆 <ellipse>
线 <line>
折线 <polyline>
多边形 <polygon>
路径 <path>
- 一个简单的队列
luyulong
java数据结构队列
public class MyQueue {
private long[] arr;
private int front;
private int end;
// 有效数据的大小
private int elements;
public MyQueue() {
arr = new long[10];
elements = 0;
front
- 基础数据结构和算法九:Binary Search Tree
sunwinner
Algorithm
A binary search tree (BST) is a binary tree where each node has a Comparable key (and an associated value) and satisfies the restriction that the key in any node is larger than the keys in all
- 项目出现的一些问题和体会
Steven-Walker
DAOWebservlet
第一篇博客不知道要写点什么,就先来点近阶段的感悟吧。
这几天学了servlet和数据库等知识,就参照老方的视频写了一个简单的增删改查的,完成了最简单的一些功能,使用了三层架构。
dao层完成的是对数据库具体的功能实现,service层调用了dao层的实现方法,具体对servlet提供支持。
&
- 高手问答:Java老A带你全面提升Java单兵作战能力!
ITeye管理员
java
本期特邀《Java特种兵》作者:谢宇,CSDN论坛ID: xieyuooo 针对JAVA问题给予大家解答,欢迎网友积极提问,与专家一起讨论!
作者简介:
淘宝网资深Java工程师,CSDN超人气博主,人称“胖哥”。
CSDN博客地址:
http://blog.csdn.net/xieyuooo
作者在进入大学前是一个不折不扣的计算机白痴,曾经被人笑话过不懂鼠标是什么,