Docker入门学习
_Eden_
docker学习容器
一、容器1.将单个操作系统中的资源划分到孤立的组中,在孤立的组中平衡有冲突的资源使用需求2.Docker提供了容器管理的工具可以无需关注底层操作,使用效果类似于轻量级的虚拟机,并且容器的创建和停止相对于虚拟机来说比较快;虽然不同容器之间为了保证一定的安全性采取安全隔离,但是在某些情况下需要消息共享灯可以利用通信机制进行通信二、虚拟化虚拟化的核心是对资源进行抽象呈现出来来打破实体结构之间不可切割的障
logback+kafka+ELK实现日志记录(操作)
酷酷的码农小哥
javakafkaspringbootspring
logback+kafka+ELK实现日志记录前言环境准备配置Logbackpom文件改造新增logback-spring.xmlboot配置文件一下怎么去下载安装我就不多说了,直接上代码。日志平台业务思路用户请求进入后台根据搜索的参数去查询内容返回所有信息,返回json数据,当用户查看详情后根据查询到的内容里面的traceId去es里查询和traceId相等的所有日志信息最后返回给前端业务流程[
设计一个分布式系统中获取用户可用的支付方式列表接口
徐寿春
TOP1--必修课java
packagecom.orde.service.demo;importlombok.AllArgsConstructor;importlombok.Data;importjava.util.ArrayList;importjava.util.List;importjava.util.concurrent.CompletableFuture;importjava.util.concurrent.Ex
【LLM】25.1.11 Arxiv LLM论文速递
hinmer
arxivLLM每日更新chatgptgpt人工智能自然语言处理aiaigc深度学习
25.1.1012:00-25.1.1112:00共更新36篇—第1篇----=====Supervisionpoliciescanshapelong-termriskmanagementingeneral-purposeAImodels关键词:通用型人工智能,风险管理,监督政策,模拟框架PDF链接摘要:通用型人工智能(GPAI)模型,包括大型语言模型(LLM)的快速普及和部署,给AI监管实体带来
Ollama 完整教程:本地 LLM 管理、WebUI 对话、PythonJava 客户端 API 应用
web13765607643
java
随着大语言模型(LLM)的普及和应用场景的广泛扩展,Ollama提供了一个强大的本地LLM管理工具,支持WebUI对话功能,同时还为Python和Java提供了灵活的客户端API。本教程将详细介绍如何使用Ollama工具,涵盖从本地安装、模型管理、WebUI聊天界面到通过Python和Java进行集成的全方位应用。一、Ollama简介Ollama是一款用于本地运行大语言模型的工具,支持对LLM模型
Java 封装与继承:面向对象编程的两大支柱
来恩1003
Java从入门到精通java开发语言
Java学习资料Java学习资料Java学习资料引言在Java的面向对象编程(OOP)体系里,封装和继承是极为关键的概念。它们不仅是构建复杂软件系统的基础,也为代码的设计、维护与扩展提供了强大助力。接下来,我们将深入探究这两大支柱的内涵、实现方式及其在实际开发中的价值。封装封装的定义封装是把对象的属性和操作这些属性的方法捆绑在一起,形成一个独立的单元,并尽可能隐藏对象的内部实现细节,只向外部提供必
华为OD机试2024年E卷-数组拼接[100分]( Java | Python3 | C++ | C语言 | JsNode | Go)实现100%通过率
梅花C
华为OD题库华为od
题目描述现在有多组整数数组,需要将它们合并成一个新的数组。合并规则,从每个数组里按顺序取出固定长度的内容合并到新的数组中,取完的内容会删除掉,如果该行不足固定长度或者已经为空,则直接取出剩余部分的内容放到新的数组中,继续下一行。输入描述第一行是每次读取的固定长度,0<长度<10第二行是整数数组的数目,0<数目<1000第3-n行是需要合并的数组,不同的数组用回车换行分隔,数组内部用逗号分隔,最大不
Java入门笔记(1)
王磊鑫
java笔记开发语言
引言在计算机编程的广袤宇宙中,Java无疑是一颗格外耀眼的恒星。那么,Java究竟是什么呢?Java是美国Sun公司(StanfordUniversityNetwork)在1995年推出的一门计算机高级编程语言。曾经辉煌的Sun公司在2009年被Oracle(甲骨文)公司收购,但Java的影响力并未因此而衰减。普遍认同Java的联合创始人之一詹姆斯·高斯林(JamesGosling)为“Java之
华为OD机试E卷 - 最大值(Java & Python& JS & C++ & C )
算法大师
最新华为OD机试华为odjavapythonjavascriptc++华为OD机试E卷C语言
最新华为OD机试真题目录:点击查看目录华为OD面试真题精选:点击立即查看题目描述给定一组整数(非负),重排顺序后输出一个最大的整数。示例1输入:[10,9]输出:910说明:输出结果可能非常大,所以你需要返回一个字符串而不是整数。输入描述数字组合输出描述最大的整数示例1输入109输出910说明解题思路题目要求是:给定一组
Java设计模式 三十五 责任链模式 + 中介者模式
空灵宫(Ethereal Palace)
设计模式java设计模式责任链模式
责任链模式+中介者模式责任链模式(ChainofResponsibilityPattern)和中介者模式(MediatorPattern)是两种行为型设计模式,它们分别处理不同的职责和协作方式。将这两种模式结合使用,可以更好地解耦系统中的组件,特别是在需要处理多个对象之间复杂交互的场景中。让我们看看这两种模式的特点以及如何结合使用。责任链模式(ChainofResponsibilityPatter
java之小六壬算命代码实现——预知自己命运如何!
钮钴禄·爱因斯晨
java学习java开发语言AIGCgithub
我命由我,不由天,是魔是仙,算算就知道了~欢迎来访~个人主页欢迎各位佬们互三哦~互三必回!!#一、小六壬背景介绍1.文化起源小六壬作为中国古代占卜法,文化背景深厚。起源说法不一,流传较广的是唐代李淳风创立“六壬时课”,即小六壬,以区别“大六壬”。也有东汉起源、黄帝时代传说、马前课演化、鬼谷子传承等观点。其发展历程中,唐朝创立后在民间流传,用于日常生活预测;明朝刘基将其用于军事决策;清朝乾隆年间被记
找鞍点(Java)
wzx_Eleven
java蓝桥杯算法
一个矩阵元素的“鞍点”是指该位置上的元素值在该行上最大、在该列上最小。本题要求编写程序,求一个给定的n阶方阵的鞍点。输入格式:输入第一行给出一个正整数n(1≤n≤6)。随后n行,每行给出n个整数,其间以空格分隔。输出格式:输出在一行中按照“行下标列下标”(下标从0开始)的格式输出鞍点的位置。如果鞍点不存在,则输出“NONE”。题目保证给出的矩阵至多存在一个鞍点。输入样例1:417414836161
Redisson 实现分布式锁
程序员jin
编程开发数据库分布式数据库redis
文章目录一.锁介绍二.什么是分布式锁三.为什么需要分布式锁四.分布式锁实现五.分布式锁注意事项六.看门狗机制七.Redisson实现分布式锁一.锁介绍单机锁:用于一台服务器的同步执行。分布式锁:用于多台服务器之间的同步执行。有限资源的情况下,控制同一时间(段)只有某些线程(用户/服务器)能访问到资源。Java实现锁:synchronized关键字、并发包的类。Javasynchronized实现锁
kamailio-5.8.4-centos9编译
狂爱代码的码农
VOIP那些事kamailio
安装必要的依赖包在开始编译之前,你需要安装编译Kamailio所需的一些基础依赖包:dnfinstall-ymakegccgcc-c++flexbisonlibxml2-developenssl-develsqlite-develmysql-develpcre-devellibcurl-devel下载并解压Kamailio源码包假设你已经把kamailio-5.8.4_src.tar.gz文件下载
爬取电影天堂
越哥的女人
爬取每部电影的详细信息分析每页的url,可以得到规律是:第t页的url为:http://dytt8.net/html/gndy/dyzz/list_23_t.html于是可以先分析第一页,然后对页数进循环,就可得到所有最新电影的详细信息。fromlxmlimportetreeheaders={"User-Agent":"Mozilla/5.0(WindowsNT6.1;Win64;x64)Appl
用Java发送Email就这么简单
五行星辰
业务系统应用技术java前端
咱程序员在开发过程中,时常会遇到需要发送邮件的场景,好比通知用户注册成功、提醒密码找回啥的。这时候,Java就派上大用场啦,今儿个咱就唠唠咋用Java发送Email。一、准备工作要实现Java发送邮件,咱得先引入相关的依赖。要是用Maven构建项目,在pom.xml文件里加上这几行代码:javax.mailmail1.4.7javax.activationactivation1.1.1这就好比给你
用 Java 发送 HTML 内容并带附件的电子邮件
五行星辰
业务系统应用技术javahtml
实现思路首先,设置邮件服务器的相关属性,包括是否需要认证、使用的邮件协议、服务器地址、端口等。创建一个会话对象,使用Session.getInstance方法,并提供邮件服务器的属性和认证信息。创建一个MimeMessage对象作为邮件消息,设置发件人、收件人、邮件主题等信息。为了发送HTML内容,使用setContent方法并指定内容类型为text/html。对于附件,创建一个MimeMulti
XML外部实体注入--漏洞利用
索然无味io
网络安全xml前端网络安全php笔记学习web安全
一.基本概念1.XXE漏洞原理介绍:XXE漏洞在应用程序解析XML输入时触发,若未限制外部实体加载,攻击者便能掌控外部加载文件,进而引发漏洞。其常见于可上传xml文件之处,如上传点未对xml文件过滤,恶意xml文件就可上传。2.漏洞危害文件读取:能读取服务器任意文件,如利用]>&xxe;可获取敏感信息。命令执行:在特定条件下,可执行系统命令,危害系统安全。内网探测与攻击:探测内网端口、攻击内网网站
搭建vue项目
LYy0
vue.js前端javascript
一、VueVue是一款用于构建用户界面的JavaScript框架。它基于标准HTML、CSS和JavaScript构建,并提供了一套声明式的、组件化的编程模型,帮助你高效地开发用户界面。无论是简单还是复杂的界面,Vue都可以胜任。二、环境1.nodejs环境:下载地址三、创建Vue应用创建的项目将使用基于Vite的构建设置,并允许我们使用Vue的单文件组件(SFC)。$npmcreatevue@l
Spring Boot中使用MapStruct进行对象映射
后端springboot
SpringBoot中使用MapStruct进行对象映射大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!在现代的Java应用开发中,对象之间的转换是一个常见但不可避免的任务。MapStruct作为一个强大的对象映射框架,可以帮助开发者轻松地进行复杂对象之间的映射转换。本文将深入探讨如何在SpringBoot项目中使用MapStruc
【2025 ODA teigha .NET系列开发教程 第五章】给CAD实体添加附属数据XDATA,包括源码
三好学生~张旺
ODATeigha.NET开发教程.net
系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章Python机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档2025ODAteigha.NET系列开发教程系列文章目录AutoCADXData扩展数据开发指南什么是XData?XData的两种存储方式1.全局字典存储(XRecord)2.实体附加存储步骤1:注册应
java fx如何安装,JavaFX环境配置详细步骤
运营小巴
为了运行JavaFX应用程序,我们必须在系统上设置JavaFX环境。JDK1.8之后的所有Java版本都支持JavaFX,因此我们必须在系统上安装JDK1.8或更高版本。有各种IDE,例如Net-beans或Eclipse,也支持JavaFX库。在本章中,我们将讨论执行JavaFX应用程序的各种方法。安装Java步骤1:验证是否已安装检查系统上是否已经安装了Java。就我而言,它尚未安装,因此我需
Java单例模式详解--七种单例模式实现+单例安全+实际应用场景
飞天葫芦侠
面向对象设计模式单例模式java安全设计模式
单例模式保证了一个类只有一个实例,并且提供了一个全局访问点。单例模式的主要作用是节省公共资源,方便控制,避免多个实例造成的问题。实现单例模式的三点:私有构造函数私有静态变量维护对象实例公有静态方法提供获取实例对象七种单例模式实现1.静态类:第一次运行初始化,全局使用2.懒汉模式(线程不安全):懒汉模式是指在第一次获取实例时才创建对象,实现了延迟加载,构造函数返回当前对象实例,但多个访问者同时获取对
VS Code中JavaFX 项目环境配置
「已注销」
javavscodeui
1.获取JavaFX1.1JavaFX下载JavaFX网站打开后应如图1.1.1所示:图1.1.1单击左下角Download按钮,进入如图1.1.2所示页面:图1.1.2JavaFXversion:选择你要使用的JavaFX版本,通常建议使用最新版本。为了稳定性考虑,不建议选择测试版,即后缀有[EarlyAccess]的版本。OperatingSystem:选择你用来进行JavaFX开发时所使用的
JavaFx-桌面应用开发利器(三)FXML和Scene Builder
web18224617243
面试学习路线阿里巴巴android前端后端
本文接上文JavaFx-桌面应用开发利器(二)基础架构篇,在熟悉了JavaFx的基础框架后,通过基础的学习示例。相信你对基础的Stage和Scene对象等都有了一定的基础认识。在学习的时候,建议各位都能亲自动手进行编码,更有利于掌握相关知识。本文主要讲解JavaFx里面的FXML进行UI可视化开发,同时结合SceneBuilder,说明如何加速开发速度。一、首先介绍下简单介绍下FXML。FXML并
freebsd12 安装gnome3图形界面
sayang_shao
FreeBSDFreeBSD12gnome3freebsd12
1、准备工作注:由于我是在实体机上做的所以没有提供截图。也可以访问官方文档进行安装:https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/x11-wm.html已经安装完Freebsd12系统可以联网2、开始安装pkg更新#pkgupdate安装显卡驱动(本机为intel)#pkginstallxf86-video-intel开启li
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
作者在进入大学前是一个不折不扣的计算机白痴,曾经被人笑话过不懂鼠标是什么,