I was trying to push to a canonical repository this morning and got the following error:
$ git push origin master error: src refspec master matches more than one. error: failed to push some refs to 'ssh://user@host/srv/git/repo' This happened because I had accidentally created a master tag locally:
$ git tag master tag1 tag2 tag3 tag4 Once I deleted the tag locally:
tag -d master I was able to push again.
如果是客户端的话,使用ifconfig -a即可得到ip地址,从中即可发现是否拥有了ipv6地址。
root@ubuntu904:~# ifconfig eth2 Link encap:以太网 硬件地址 00:0c:29:20:01:31 inet 地址:10.20.60.24 广播:10.20.255.255 掩码:255.255.0.0 inet6 地址: fe80::20c:29ff:fe20:131/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 跃点数:1 接收数据包:58001 错误:0 丢弃:0 过载:0 帧数:0 发送数据包:2912 错误:0 丢弃:0 过载:0 载波:0 碰撞:0 发送队列长度:1000 接收字节:6705622 (6.7 MB) 发送字节:393072 (393.0 KB) 中断:19 基本地址:0x2000 root@ubuntu904:~# netstat -anp |grep ssh 如果是服务器端的话,查看sshd服务器是否监控ipv6的22号端口,运行netstat -anp |grep ssh
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2536/sshd tcp6 0 0 :::22 :::* LISTEN 2536/sshd 或者运行netstat -ln -A inet6 得到开启ipv6的服务,知道了机器是否支持ipv6,下面就可以书写ipv6的跳转了,目标机的ipv6地址为fe80::20c:29ff:fe2b:dfe5,跳转主机的ipv6地址为fe80::20c:29ff:fe92:3f,执行命令:
rollout buttonRol "按钮测试" width:170 height:345
(
mapButton btn1 "物体贴图" pos:[40,30] width:85 height:22 materialButton btn2 "物体材质" pos:[40,70] width:85 height:22 pickbutton btn3 "拾取物体" pos:[40,114] width:85 height:22
checkbutton ckb1 "隐藏设置" pos:[40,152] width:85 height:22
colorPicker cp1 "拾取颜色" pos:[40,192] width:85 height:22
button btn7 "ScenceWireColor" pos:[40,238] width:85 height:22
on btn1 picked texmap do
(
$.material.diffuseMap = texmap
showtexturemap $.material on
)
on btn2 picked mtl do
(
$.material = mtl
)
on btn3 picked obj do
1 sphere() 2 3 select objects 4 5 a = $ 6 7 a.segs = 32 8 9 a.material = standard() 10 11 a.material = standard diffuse:orange 12 13 a.material.specular_level=70 14 15 a.material.glossiness=70 16 17 a.material.specular=white 18 19 a.material.selfillumamount=0 20 21 a.material.opacity=0 22 23 a.material.opacity=100 24 25 a.material.shadertype=0 26 27 a.material.maps[2]=checker() 28 29 a.material.diffusemap = marble() 30 31 showtexturemap a.material on 32 33 a.material.maps[2].color1=red 34 35 a.material.maps[2].coords.u_tiling = 2 36 37 a.
1概述
1.1编写目的 指出编写《需求规格说明书》的目的。下面是示例:
编写此文档的目的是进一步定制软件开发的细节问题,希望能使本软件开发工作更具体。为了使用户、软件开发者及分析和测试人员对该软件的初始规定有一个共同的理解,它说明了本软件的各项功能需求、性能需求和数据需求,明确标识各项功能的具体含义,阐述实用背景及范围,提供客户解决问题或达到目标所需要的条件或权能,提供一个度量和遵循的基准。具体而言,编写软件需求说明的目的是为所开发的软件提出:
a) 软件设计总体要求,作为软件开发人员、软件测试人员相互了解的基础。
b) 功能、性能要求,数据结构和采集要求,重要的接口要求,作为软件设计人员进行概要设计的依据。
c) 软件确认测试的依据。
1.2编写依据 指明该《需求规格说明书》的依据。一般可以写依据XXX软件的方案书,策划书等。
1.3术语和缩略词 缩写、术语及符号
解 释
2软件概要 2.1软件总体描述 从总体上描述该软件的情况,包括软件的形式(网站,运行时系统,插件等)和软件的主要的功能,使读者对该软件有一个整体的认识。一般一两段话即可。
2.2软件设计约束及有关说明 软件设计的约束以及有关说明如下所示。
开发环境:
编程语言:
遵循的规范:软件的设计和开发过程需要严格按照合同要求,根据软件的设计方案来进行。软件开发过程应遵循软件工程规范,对过程和版本进行管理和控制。
测试环境:可以写明在什么单位测试,测试单位使用的软硬件环境。
软件交付形式:
软件交付日期:
其他:见合同。
2.3使用者特点 指明软件的使用者具有的特定。示例:
本软件主要在甲方工作环境中使用,使用者包括项目管理人员,开发人员及工程师等,使用者在计算机的应用、使用上不存在障碍,都在计算机的操作和使用方面得到过相关的培训。
3开发和运行环境 3.1硬件环境 XXX软件的运行环境为个人计算机。详细要求见表3.1。
表3. 1 软件运行环境硬件要求
需求名称
详细要求
CPU
内存
硬盘
3.2支持软件环境 需求名称
详细要求
操作系统
…
…
…
…
3.3接口 3.3.1 外部接口
说明软件运行时和外部环境的接口,包括软件的界面表现形式等方面。示例:
外部接口的用户界面部分按Windows应用软件用户界面的规范来设计,界面设计风格与XXX环境保持一致,采用XXX以及对话框等方式作为用户界面,便于用户使用。
3.3.2 软件接口
说明软件与它运行的软件环境之间的接口。示例:
本软件运行于XXX软件及以上版本上,整个环境需要运行在Windows某某版本及更高版本并装有XXX(依赖软件)的操作系统之上。
3.3.3 硬件接口
指明软件和运行的硬件环境的接口。
Inter或其他系列的微型计算机,内存XXXG以上,硬盘XXXG以上。
3.3.4 内部接口
说明软件内部各个模块之间的接口或规范,软件各个模块间数据交换的格式等。示例:
软件内部的接口是通过XXX来进行交换的。用户使用XXX软件……可以说软件的各个模块之间主要通过XXX来进行关联,传送数据并交换信息,从而降低软件模块间的耦合程度。
3.4控制和操作 说明使用软件时需要进行的控制和操作方式。示例:
libcurl使用心得 Libcurl为一个免费开源的,客户端url传输库,支持FTP,FTPS,TFTP,HTTP,HTTPS,GOPHER,TELNET,DICT,FILE和LDAP,跨平台,支持Windows,Unix,Linux等,线程安全,支持Ipv6。并且易于使用。
http://curl.haxx.se/libcurl/
从http://curl.haxx.se/libcurl/ 下载一个稳定的版本,注意选择OS。
在使用之前请大家多阅读libcurl的文档:因为如果要实际运用到项目中,最好对libcurl有具体的了解,具体在
http://curl.haxx.se/libcurl/c/
curl_easy_setopt() curl_easy_perform() curl_easy_getinfo() 这三个函数的使用上,需要多去钻研,多看Samples,你才能灵活使用libcurl。
感谢这篇文章:
http://blog.163.com/xu_chao2000/blog/static/27770610200801303252802/
给了我许多启发,再次感谢!
给出我的一个简单的代码例子:
说明:
1.关键在curl_easy_setopt函数设置option,可以设置ftp,http,get,post等许多选项,请根据具体使用情况设置。
2.对取回来的数据需要进行判断,比如http下载文件,如果文件不存在,需要进行处理。因为writer是可以将buf填充404 not found等网页内容的,不能将这个内容当成文件内容,所以需要判断http web返回来的code,进行判断。
3.我有个问题,就是想得到服务器上filename的具体名称,verbose调试已经返回了,但是我在getinfo的时候,试过好多选项,但未找到这个存放真实服务器文件名的选项,如果有知道的麻烦告诉我,谢谢了!
#include " curl/curl.h " #pragma comment(lib, " libcurl.lib " )
long writer(void * data, int size, int nmemb, string & content);
bool CurlInit(CURL *& curl, const char* url,string & content);
bool GetURLDataBycurl(const char* URL, string & content);
void main()
{
char *url ="http://www.baidu.com/img/baidu.gif";
string content;
if ( GetURLDataBycurl(url,content))
一、Windows键 + 空格键“Space”
[作用]:透明化所有窗口,快速查看桌面(并不切换)
[快捷键]:win+空格
[小结]:当你打开了很多程序窗口的时候,这招非常有用,而且桌面还会有华丽的光影效果哦。没用过的赶紧试试先
二、Windows键 + D
[作用]:最小化所有窗口,并切换到桌面,再次按又重新打开刚才的所有窗口
[快捷键]:win+d
[小结]:这个功能在以前的系统里是都有的,只不过win7的显示桌面放到了任务栏的右下角了 (就是最右边的那个长方形小条)
三、Windows键 + tab键
[作用]:传说中的3D桌面展示效果
[快捷键]:win+tab
[小结]:记得本区应该有一个帖就是关于这个效果的,不过感觉这招最简单了
四、Windows键 + ctrl键+tab键
[作用]:3D桌面浏览并锁定(可截屏)
[快捷键]:win+ctrl+tab
[小结]:见识了它的效果想留个图,win+tab是办不到di,win7说了 — I can!
五、Windows键 + 数字键
[作用]:针对固定在快速启动栏中的程序,按照数字排序打开相应程序
[快捷键]:win+数字(1-9)
[小结]:吼吼,这个功能爽吧
六、Windows键 + P
[作用]:打开“外接显示”的设置窗口
[快捷键]:win+p
[小结]:办公室一族,对这个功能肯定不会陌生吧。对了,接投影仪快速切换,嘿嘿。
七、Windows键 + X
[作用]:打开“移动中心”设置窗口
[快捷键]:win+x
[小结]:设置窗口里包括显示器亮度控制、音量控制、笔记本电池监控、Mobile手机同步设置、外接显示器管理…等多种功能
八、修复系统默认文件关联
[作用]:修复系统默认文件关联
[快捷键]:无
[小结]:当我们无意中破坏了系统默认的文件关联,这招就派上用场了。win7下可不像winxp那样容易修改文件 关联的,不信?试试
[操作方法]:开始->cmd,按如下格式输入 assoc.XXX=XXXfile
XXX代表文件类型,比如修复TXT和BAT的文件关联,命令就是assoc.TXT=TXTfile 和assoc.BAT=BATfile
九、关闭系统休眠功能
[作用]:关闭系统休眠功能
[快捷键]:无
[小结]:windows7下的休眠功能需要硬件和操作系统的功能支持,目前该功能出现多种问题,建议在正式版出来之前先关闭它,而且还可以为系统盘节省大量磁盘空 间(大约4G)。
[操作方法]:开始->cmd,输入powercfg -h off,回车
十、Windows键 + 小键盘方向键
[作用]:快速调整窗口大小
[快捷键]:Win + ↑ ↓ ← →
PublicFunction funFindDirectory(ByVal strDir As String, Optional vMode As Long =vbDirectory) As Integer
Dim vFileNames As String
Dim vLoop As Integer
Dim vFileAttr As FILEATTRIB
varFileCount = 0
varDirCount = 0
On Error GoTo lopErr
If strDir = "" Then
strDir = varCurrentPath
End If
If Right(Trim(strDir), 1) <>"\" Then
strDir = Trim(strDir) &"\"
End If
strDir = UCase(strDir)
vFileNames = Dir(strDir, vMode)
ReDim Preserve vFiles(11)
ReDim Preserve vDirectories(11)
Err.Clear
* 创建弹出div窗口。 1、接口说明:DivWindow(id,title,width,height,content) 构造函数,创建一个弹出窗口对象 参数:id 弹出窗口id; title:弹出窗口标题名称; width:弹出窗口宽度 height:弹出窗口高度 content: 弹出窗口显示内容 2、接口说明: closeDivWindow(id) 关闭窗口 参数: id 弹出窗口id 3、接口说明:setPopupTopTitleFontColor(PopupTopTitleFontColor) 设置弹出窗口标题字体颜色 参数: 4、接口说明:setPopupTopBgColor(tBgColor) 设置弹出窗口标题背景颜色 5、接口说明:setPopupColor(borderColor,bgColor,tFontColor,cBgColor,fColor) 设置弹出窗口风格,包括标题栏的背景,弹出窗口边框颜色,内容窗体背景颜色,内容窗体字体颜色
6、接口说明:open() 使用方法: var a = new DivWindow("1","窗口测试",580,400,"Welcome to visited my personal website:<br><a href=http://www.youthfly.net target=_blank>http://www.youthfly.net</a><br><ahref=http://www ... youthfly.net</a><br><br>thx!!!=)..."L);
a.setPopupTopBgColor("black","blue","white","white","black"); a.open(); 生成的html: <div id='"window"+id'></div> 控制背景的div,使背景逐渐变暗 <div id='"windowTopBg"+id'> <div id='"windowTop"+id'> <span id='"windowTopTitle"+id'>title</span> <span id='"windowTopOperate"+id'>maxORmin</span> <span id='"windowTopClose"+id'>close</span> </div> <div id='"windowContent"+id'>content</div> </div> @author Nieger Dai @date 2007.11.15 */ var isIe = (document.
1、EL简介 1)语法结构 ${expression} 2)[]与.运算符 EL 提供.和[]两种运算符来存取数据。 当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用 []。 例如: ${user.My-Name}应当改为${user["My-Name"] } 如果要动态取值时,就可以用[]来做,而.无法做到动态取值。例如: ${sessionScope.user[data]}中data 是一个变量 3)变量 EL存取变量数据的方法很简单,例如:${username}。它的意思是取出某一范围中名称为 username的变量。 因为我们并没有指定哪一个范围的username,所以它会依序从Page、Request、Session、 Application范围查找。 假如途中找到username,就直接回传,不再继续找下去,但是假如全部的范围都没有找到时, 就回传null。 属性范围在EL中的名称 Page PageScope Request RequestScope Session SessionScope Application ApplicationScope 4) 1--EL表达式用${}表示,可用在所有的HTML和JSP标签中作用是代替JSP页面中复杂的JAVA代码. 2--EL表达式可操作常量 变量 和隐式对象. 最常用的 隐式对象有${param}和${paramValues}. ${param}表示返回请求参数中单个字符串的值. ${paramValues}表示返回请求参数的一组 值.pageScope表示页面范围的变量.requestScope表示请求对象的变量. sessionScope表示会话 范围内的变量.applicationScope表示应用范围的变量. 3 --<%@ page isELIgnored="true"%> 表示是否禁用EL语言,TRUE表示禁止.FALSE表示不禁 止.JSP2.0中默认的启用EL语言. 4-- EL语言可显示 逻辑表达式如${true and false}结果是false 关系表达式如${5>6} 结 果是false 算术表达式如 ${5+5} 结果是10 5--EL中的变量搜索范围是:page request session application 点运算符(.)和"[ ]"都是 表示获取变量的值.区别是[ ]可以显示非词类的变量 2、EL隐含对象 1)与范围有关的隐含对象 与范围有关的EL 隐含对象包含以下四个:pageScope、requestScope、sessionScope 和 applicationScope; 它们基本上就和JSP的pageContext、request、session和application一样; 在EL中,这四个隐含对象只能用来取得范围属性值,即getAttribute(String name),却不能取得 其他相关信息。 例如:我们要取得session中储存一个属性username的值,可以利用下列方法: session.
1 加入struts2 需要的包 附件中 2 修改web.xml 增加 <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> 3 做一个jsp的页面内容,如下(主体部分) <body> <form name="loginForm" action="<%=request.getContextPath()%>/login//userLogin" method="post"> <input type="text" name="user.userName" /><br/> <input type="submit" name="submit" value="确定"/> </form> </body> 4 com.lxb.domain包中增加一个类 package com.lxb.domain; public class User { private String userName; public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } } 5 com.lxb.action 中的UserLoginAction.java package com.lxb.action; import com.lxb.domain.User; public class UserLoginAction { private User user; public User getUser() { return user; } public void setUser(User user) { this.
1、下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-5.0.26-0.i386.rpm MySQL-client-5.0.26-0.i386.rpm 下载地址为:http://dev.mysql.com/downloads/mysql/5.0.html,打开此网页,下拉网页找到“Red Hat Enterprise Linux 3 RPM (x86) downloads”项,找到“Server”和“Client programs”项,下载需要的上述两个rpm文件。 2、安装MySQL rpm文件是Red Hat公司开发的软件安装包,rpm可让Linux在安装软件包时免除许多复杂的手续。该命令在安装时常用的参数是 –ivh ,其中i表示将安装指定的rmp软件包,V表示安装时的详细信息,h表示在安装期间出现“#”符号来显示目前的安装过程。这个符号将持续到安装完成后才停止。 1)安装服务器端 在有两个rmp文件的目录下运行如下命令: # rpm -ivh MySQL-server-5.0.26-0.i386.rpm 显示如下信息。 warning: MySQL-server-5.0.26-0.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5 Preparing...########################################### [100%] 1:MySQL-server########################################### [100%] 。。。。。。(省略显示) /usr/bin/mysqladmin -u root password 'new-password' /usr/bin/mysqladmin -u root -h test1 password 'new-password' 。。。。。。(省略显示) Starting mysqld daemon with databases from /var/lib/mysql 如出现如上信息,服务端安装完毕。测试是否成功可运行netstat看Mysql端口是否打开,如打开表示服务已经启动,安装成功。Mysql默认的端口是3306。 # netstat -nat Active Internet connections (servers and established) Proto Recv-Q Send-Q Local AddressForeign AddressState tcp00 0.
环境 JDK1.6, eclipse 3.4 JEE, maven 2.0.9, m2eclipse, mysql 我个人总是使用eclipse 的那个birt all in one 包, 版本是3.4.1的那个. 安装appfuse mvn archetype:create -DarchetypeGroupId=org.appfuse.archetypes -DarchetypeArtifactId=appfuse-modular-struts -DremoteRepositories=http://static.appfuse.org/releases -DarchetypeVersion=2.0.2 -DgroupId=com.appdemo -DartifactId=appdemo cd appdemo mvn -Dmaven.test.skip=true mvn war:inplace mvn appfuse:full-source mvn eclipse:eclipse -Dmaven.test.skip=true rd /s /q web\src\main\webapp\WEB-INF\classes rd /s /q web\src\main\webapp\WEB-INF\lib cd web mvn jetty:run 依次运行上面10个步骤,保证你最后得到一个可以运行的appfuse , 打开浏览器http://localhost:8080/ 就可以看到
如果你maven 报outofmemory 错,在maven 第一行加上set MAVEN_OPTS=-Xmx384m -XX:PermSize=48m
如果你mysql 密码不为空的话,在第一部之后记得修改pom.xml 里面的password 的值.
如果你不需要在命令行下启动jetty 的话, 7,8,9,10 都可以不运行.直接在eclipse 里面导入整个项目.一个core和一个web 项目. 如果你喜欢maven 的话, 你可以安装m2eclipse , 然后导入maven 项目,里面设置maven的repository 位置, 如果你不喜欢maven 的话,直接导入项目,然后配置M2_REPO 这个变量只想你的maven repository 的目录.
SqlMap的配置是iBatis中应用的核心: 1、命名空间: <sqlMap namespace="mune">,在此空间外要引用此空间的元素,则需要加上命名空间名。 (在三层架构中一般在持久层调用的时候通过命名空间名访问) 2、实体的别名:<typeAlias type="java.util.HashMap" alias="hmap"/> 也可以是自己写的实体类 <typeAlias alias="mune" type="com.pur.mune"/> 3、SQL入参parameterClass 插入语句入参:parameterClass="类别名" 来设定。 查询语句入参:可以设定类别名,也可以设定为map,也可以设定为iBatis支持的原生类型(比如string、int、long等),当只有一个原生类型入参时,则在SQL中用value关键字来引用。比如: <select id="getById" parameterClass="hamp“ resultMap="result_base"> select * from customer where id = #value# </select> map是最强大的入参方式,任何入参方式都可以转换为这种入参方式,因为iBatis仅接受一个入参,当几个参数分布在不同对象中的时候,将这些对象的属性(或者对象本身put)到map中,然后一次传递给sql语句是非常有效。可以自己写一个将对象或者对象集合转换为map的工具(我已经实现一个了)。 另外,map的中的元素(比如pobj)是个复杂对象,则还可以在SQL中以#pobj.protyename#的格式来引用其中内嵌的属性。当然不推荐这么干。 4、返回值参数类型 返回值参数也同样有两种类型,一种是对象类型resultClass="Account",一种是resultMap="AccountResult"。这两种类型的选择常常会令人迷惑不解,一言明其理:当结果集列名和类属性名完全对应的时候,则应该使用resultClass来指定查询结果类型。当然有些列明不对应,可以在sql中使用as重命名达到一致的效果。 当查询结果列名和类属性名对应不上的时候,应该选择resultMap指定查询结果集类型。否则,则查询出来填充的对象属性为空(数字的为0,对象的为null)。 但是实际上resultMap是对一个Java Bean的映射,需要先定义xml的映射后,才可以引用,例如: <resultMap id="muneAccountResult" class="mune"> <result property="id" column="ACC_ID"/> <result property="firstName" column="ACC_FIRST_NAME"/> <result property="lastName" column="ACC_LAST_NAME"/> <result property="emailAddress" column="ACC_EMAIL"/> </resultMap> resultMap映射的结果的目的就是要将查询的结果集绑定到映射对象的属性上。 不管使用哪种返回值参数类型,其最终目的就是要把每条记录映射到一个类的对象或者对象集合上,如果有某个类属性映射不上,则在得到的这个对象或对象集合中这个属性为空。映射的属性可以是表与实体中的一部分。不要同时使用两种返回值参数类型,这样只会令人迷惑。 5、SQL中参数的引用 SQL中引用parameterClass的参数有三种方式: iBatis内置支持的类型,比如int、string,使用#value#来引用,这个value是关键字,不可变。 map类型的参数,使用#keyName#来引用,keyName为键名。 复杂对象的参数,使用#propertyName#来引用,propertyName类属性的名字。 6、模糊查询中参数的引用 模糊查询是针对字符串而言的,如果遇到两个单引号要包含一个参数,则不能再用#来引用变量了,而应该改为$,比如:'%$varName$%',当然,也可以使用 '%' || #varname# || '%' 来绕过此问题。 7、SQL片段 可以通过<sql id="
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; /** * * * */ public final class JDBCSingleton { private String url = "jdbc:mysql://localhost:3306/jdbc"; private String username = "root"; private String password = "root"; // 构造函数私有 private JDBCUtilSingle() { } // 构造私有实例 private static JDBCUtilSingle instance = null; public static JDBCUtilSingle getInstance() { //延迟加载 if (instance == null) { //加锁 防止线程并发 synchronized (JDBCUtilSingle.class) { //必须有的判断 if(instance == null){ instance = new JDBCUtilSingle(); } } } return instance; } // 注册驱动 static { try { Class.
这些天日子过得很无聊,所以就花时间画了画Swing界面。之前很多牛人们发了很多厉害的帖子(像三号管家,还有什么刀来的?),但是对于新手(像我)来说,这样的例子未免太过复杂了,他们只想快速地知道界面是怎么画出来的,然后能快速实践,而不想去研究那一大推的代码。基于此,本人萌发了写此文的冲动。由于本人也是菜鸟,所以如果做得不好,还请高手们键下留情。
首先当然是先奉上截图:
上图中的主面板实现自JComponent,然后重写其paintComponent(Graphics g)方法绘制而成。本界面的所有组件都是这样做出来。所以说容易吧。代码如下:
/** * 主面板 * @author Guijin.Liang * */ public class MyContentPanel extends JComponent{ private static final long serialVersionUID = 1L; public void paintComponent(Graphics g) { g.setColor(new Color(168,148,128));//设置边框颜色 g.drawRoundRect(0, 0, 681, 121, 20, 20); //画一个圆角矩形 //消除锯齿 RenderingHints rh = new RenderingHints(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); Graphics2D g2 = (Graphics2D)g; g2.addRenderingHints(rh); //半透明 g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0.5f)); //设置填充颜色,这里设置了渐变,由下往上 g2.setPaint(new GradientPaint(this.getWidth()/2 , 1 , new Color(255,255,255) , this.getWidth()/2 , this.getHeight() -1 , new Color(0,0,255))); //填充圆角矩形 g2.
其实这篇文章早就该写了,但是每当打开博客准备着手去写的时候,便开始回忆,记忆渐渐的回到了过去一幕幕的放映着,但是手指却是僵硬的,不知为何连敲键盘的力气都没有,那段经历是我一生当中都永远不会忘记的,我是不愿意去回忆,不愿意让别人知道我的过去,随着时间的流逝,自己也渐渐明白要想成功必定付出常人不能承受的痛苦才能成为可能,希望将自己的经历写出来能够帮助跟我一样曾经徘徊在学校阴暗角落的人,希望不懂事的孩子看过本人的经历之后能够痛改前非努力学习,在将来的某一天带着自己的老爸老妈出去玩玩,看看海啊,坐坐飞机啊,吃吃好吃的,穿穿好看的衣服;让他们能够很欣慰的告诉人家我儿子很孝顺很懂事,我这辈子再苦再累都值的;俗话说的好:“百善孝为先”;请读者走进我的人生吧;
让时间回到2005冬天,
随着春季招生的流行,像我这种学习成绩差没有什么理想的颓废男,也就跟着“臭水”流进了“臭水沟“职校。在上不上职校之间我妈也徘徊了很久,她是一个好强的人,总想我能成为她的偶像成为她的骄傲,可是我从来没有做到过在上初中的时候经常打架、斗恶、谈恋爱、玩游戏、旷课、网吧包夜,一个星期要去学校三四次,不是拿什么奖,不是评什么三好学生,而是处罚带家长,有一次跟人打架把人眼睛打出问题来了,要去医院治疗,我妈直接说别让我来直接让110过来。她对我太失望了,她把一生的尽力全用在我身上,希望我能成为有用的人,为她争脸,爸妈感情不是很好,我妈是失恋才跟我爸的所以没有什么感情就结婚了;结婚后发现自己没有了什么盼头只能将自己这辈子没有完成的愿望让自己的儿子去实现,老天总是那么爱捉弄人,恰恰我就是一个学习很差的孩子,没办法我就是学不进去;她老说你什么都好就是学习不好,我愿意你什么都不好只要学习好,妈什么都愿意就算再苦再累在高兴,曾经努力过有那么点苗头后来就没了再也没了;老妈三思过后还是同意让我去上职校,学一个技术以后还能有碗饭吃。
2006过完春节,我开始准备准备东西去城里的“臭水”沟了就是我的职校,叫大名鼎鼎的成功电脑学校,走进成功走向成功!这是我们学校的宣传广告语;就是学什么计算机啊、数控啊,这类高科技东西;当时也管不着这些了能学个数控就行了,据说那个时候数控比较热门。一早上大概是大年初八吧,我妈和我各提着被子准备送我去学校了,我迈着沉重的脚步,走到一个小店门口我妈突然跑进去买了一条糕,就是那种红纸包的苏宁大搞,也是个牌子的;我妈放到了我背包里,我问妈你买这东西干什么啊,我又不喜欢吃,妈没说话,其实我知道这意味着什么;走在路上妈似乎流泪了,她舍不得我这个儿子,这个长了18年从来没离开过她的儿子,我跟我妈感情很好;就是2006年的冬天也就是我准备离开家门去城里上学的这个冬天,我妈突然怀孕了然后打胎的,我照顾了她一个多月,我不是很懂这些,我妈说儿子,妈要休息一个月不能做事不能乱动,家里的一些家务事你把做好等你爸和你姐回来过年;这个月我学会了照顾人,学会了一个女人是多么的辛苦为了一个家庭,用自己曾经很强壮的身体来抵挡外来的压力,更让我懂的了一个女人做月子那是天大的事情,稍不注意就会留下病根(老妈教育);
到了学校之后我妈看了看我说:“儿子妈要走了,你自己要照顾好自己”。那个时候天已经快黑了,冬天嘛白天短;屁股还没做热学校就用车子把我们拖到了一个军训的地方,比较偏僻连个电话亭都没有;那个时候是我第一离开家门,都是一些新面孔新事物也没时间想家,更没时间想我妈;军训十来天很快就过去了;
第一次有了在外面想着家里的感觉,军训后我回家了,坐在车子上多么美好啊,感觉自己好想出人头地了回家看望老娘了,呵呵可笑;我妈比较坚强,不容易表露出自己的感情,更不容易哭了,只有我这个儿子曾经让她痛彻心扉无比绝望,上小学五年级我离家出走,拿了家里的500块钱从后门走了,那是我和我姐的学费钱;家里的那个时候条件不是很好,两个人上学我和我姐,经济比较紧张;事后我妈哭的很伤心。还有一次,是上初中对时候放学了不回家跟学校里的混混鬼混去了,我妈晚上出来找我,在一个路口我妈看见我了,我妈没说话“扑通”我妈跪下了,我这下昏了,真的伤到了妈的心。妈对不起,现在后悔,当时让您那么操心,头上的大部分白发是因为儿子不懂事让您烦出来的;
到家后老妈忙这个忙那个,全是好吃的;后来在一个邻居家玩,我称大姐,跟我说你军训的这段时间你妈晚上睡不着老是哭,想你这个调皮的儿子,担心你在那么远的地方怎么吃的冷不冷会不会跟人家打架,有一句话讲的好啊,儿行千里母担忧,我是她儿子,不管我再调皮再不懂事,在父母心里你永远是最好的,永远支持着你;不好意思,我擦一下眼泪........
到学校后要进入正常而又漫长的学习路程,我的数控呢!我的专业呢!居然没有,去了之后才恍然大悟,职校都是一些民办的学校,跟宣传广告上面的东西不能比,基本上你理想的专业都没有,刚来也没办法又不想让家里人操心忍着;就这样混混噩噩的过去了半年,在一次课堂上校长跟我们说学校要引进北大青鸟让我们下课后到哪个教室去听一下宣传介绍,当时对北大青鸟这个名词都不懂是什么意思,同学说估计是教人怎样养鸟的,呵呵;
一进教室,有两到三个人穿着一身黑色衣服里面白色衬衫,看上去就感觉是搞高科技的东西的;在准备着投影仪,我们几个也找了个位置做下来准备看看什么东西;人到齐后简单的介绍了一下北大青鸟是什么,就放了一段FLASH特效;我当时看乖乖多厉害啊;什么东西弄的啊,这个有意思;事后久久不能平静,想学;
后来学校说要学的可以报名学习,学费是一学期三四千吧记不清了,心里很想学但是涉及到的金额比较多所以犹豫了,因为要交两种学费,一是我本身上的大专学费还有个就是北大青鸟学费;经过一段思想斗争后终于拨通了老妈的电话跟她讲了大概情况,我妈二话没说就答应了,最让我印象深刻的是老妈只说了只要是学习用的老妈就算不吃饭,都支持你;
不好意思,我再擦一下眼泪.........
进了北大青鸟班之后,学了计算机网络、C语言、HTML、Photoshop、Dreamweaver等一些知识;但是我真的不知道这些东西能用来干吗,一头雾水;时间过的飞快又要交下学期的北大青鸟的学费了,我开始犹豫我不想交了,感觉这东西学了能干什么呢,能找到工作吗;随着学校新一年的春季招生开始,我帮着学校招生和一个性魏的老师在一起,据说这个老师比较厉害是西安电子科技大学毕业的是专家级的程序高手,曾经在中科院就任;这个老师平易近人,非常朴素容易接近,也许是老师看我比较顺眼吧,我们坐在人家高考学校的门口等人家出来给他们发招生简章;老师问我“你是学什么的啊”我说数控老师微笑了一下,说“那个东西脏死了,一天到晚没有干净的衣服,鼻孔里每天都是满满的,跟我学软件开发吧”,我一听什么啊,软件开发,这个东西不是说学就学的啊,我看过一会人家做网站的满屏全是代码,我的个乖乖,那个东西真的会死人的,不学;老师突然来了劲说“你看坐在办公室里,敲敲代码,喝喝咖啡多舒服”,本人农村出生,从小就比较能吃苦比较勤奋,就是没用在学习上包;吃苦就吃苦,不学;
话说回来谁不想以后出人头地啊,但是那个东西真的很难学,我是初中毕业而且初中还是烂桃子,成绩很差,想要学软件开发必定要脱胎换骨才行;这道墙难住了我。
因为我的那个魏老师技术比较厉害,所以学校让他代我们的C语言课,在他的课堂上基本上都是想学习的人,一眼看下去我估计我的基础是最差的,学编程要逻辑思维好一点的,我恰恰很烂。总是怕这个怕那个的遇到问题又不敢问,生怕问了别人会笑,真是丢人啦。有一次是老师让我们写一段C语言代码,用来计算两个数字然后将结果打印到屏幕上,代码大概是这样的:
#include "stdio.h"
void main()
{
int i,j;
printf("Pelase Enter Number1");//别笑当时就这么过来的,把Please敲成Pelase还不敢该,就怕该错了;
scanf("%d",&i);
printf("Pelase Enter Number2");
scanf("%d",%j);
print("%d",i+j);
}
就是这段代码困扰着我很久,不明白这段代码中那些东西是可以自己改动的,问了一个同学,结果他的反应真的能让我要从六楼跳下去(教室在六楼);竟然用那种藐视的眼光看我说的;我来火了,妈的不说就算了干嘛还摆着一副臭脸啊;后来自己回去慢慢的研究也就懂了,我把代码一点一点的删掉看哪些不会影响代码的正常运行;就是这种个人让我发疯似的的学习C语言;
后来放暑假去了上海,爸妈都在上海打工,去了之后跑到书店买了两本C语言书籍,因为床比较小我和我爸一张床,他白天做事比较累,我刚好就用晚上时间学习,百天他上班了我来睡觉;这样的安排还是蛮好的;一个暑假过去了,以为自己不得了了C语言我很精通了,到了学校之后发现,苦心人,天不负;果然那些曾经瞧不起我的同学,跟我也搭上话了,我用C语言写了个屏保程序,他们问题C语言还能写图形啊;我郁闷了;我也不告诉你,我可以把代码给你看呵呵;第一次尝到了学习的甜头;后来北大青鸟的事情就这样不了了之了;老师经常讲培训机构出来的全是垃圾人才,这话说的难听啊;话说的没错,在他们眼里那可是数一数二的高手才能算的上人才;他在班级里说,专业软件开发人员参加国家的软考那才是真功夫,不是虚的;其实他这么说是想激励我们去学习,说我们学的知识离真正的软件开发真是冰山一角,毕业后能弄个七八百块钱的工作就不错了;也许老师是良心发现吧,觉得培训机构也是骗钱,他每天晚上给我们培训不要钱免费,这真的让我们感动,哪有这样的老师啊;我知道了软考这个东西之后就上网查了一下软考是什么东西,意味着什么,难度有多大;上网搜了一堆文档看了,对软考有了一个整体的概念,决定报考高级程序员(现在改名为高级程序员),这个证书有含金量,难度相当大;把要考试的想法跟老师说了下,老师非常支持说这才是进入软件开发的正确道路,只有这里面才会涉及到软件这座大山里的边边角角,各种各样的知识点,才能成功的走向软件开发这条路;自己也不知量力的跑到书店买来了一本软件设计书教程,当时在班级里谁能弄了程序员教程看看就很牛B了,我尽然看软件设计师,那个时候才19岁,别人就是嘲笑;
给自己定了计划每天晚上八点看书到12点,中午别人睡午觉我就看书,准备努力一年通过考试;说的轻松要想做到真的很难,每天中午别人都在宿舍里睡觉,我就跑到楼上看书,本来中午就很困,看着看着就睡着了,意志告诉我不能睡起来继续看,就算看不下去也要把这个时间熬过去,我还有个爱好就是打篮球,听到外面球响了心里痒痒的,跟自己商量说先打球然后看书,结果球打了就更困了,书实在看不下去;不知不觉就睡着了,突然醒来书上全是口水;半边脸全是印子,一次次这样不断的缩小每天的睡觉时间,有时候晚上都一两点了还在看书,看到高兴的地方还自己就笑起来了,呵呵;自己对自己讲,成功的人一定要有段痛苦的经历才能成为可能;夜以继日,我努力着;很快到了考试的时间了第一次考试上午43下午39挂掉了;继续考,给自己更大的力量争取下次通过,每天还是坚持看书,后来慢慢的不知不觉的养成了晚上不弄个书看看心里难受呢;就这样我成功的通过了第二次的软考高级程序员,过了之后我将我的好消息第一个告诉了我亲爱的老娘,让她高兴一下;但是她又不懂,不能很彻底的明白这个东西是什么,有什么用;怕我骗他特的跑到她上班的地方问了她上班的同事,给我打了一千块钱,庆祝庆祝;
这样一来已经是09年了,我成功的通过了高程,学校里几乎没人知道,连我的恩师也不知道,只有几个好兄弟知道;后来到软考办去问一下,原来我还是我们市最小的高程呢,19岁就过了;时间过的很快出来工作一年多了,现在就职于一家软件公司,从事.net软件开发工作。
当年上学的时候很喜欢看一些通过自己努力成为高手的心得体验,他们同样说了自己在怎样的环境里成为了数一数二的IT领域的高手,真的很希望有更多的人去抒写着自己的成长经历,让一些还没有找到自己方向的颓废男或想立足于软件开发领域的人得到前进的动力,只要努力就会成功;朋友请记住一句话:苦心人,天不负;你的付出没人看见,但是老天看见;他会让你得到你所付出的东西;真心的希望,自己的这篇文章能够帮助你找到方向; 谢谢!
转载于:https://www.cnblogs.com/wangiqngpei557/archive/2011/04/29/2032807.html
比如我们要将选中的单元格中的字符串"『一時団体情報』"改变为红色,执行以下操作即可。
Private Sub Button_Click()
cString = "『一時団体情報』"
nColor = 3
nLenth = Len(cString)
Set oRange = Selection
For Each oCell In oRange.Cells
i = 0
On Error Resume Next
i = Application.WorksheetFunction.Find(cString, oCell.Value)
If i > 0 Then
oCell.Characters(i, nLenth).Font.ColorIndex = nColor
End If
Next
End Sub
其实这篇文章早就该写了,但是每当打开博客准备着手去写的时候,便开始回忆,记忆渐渐的回到了过去一幕幕的放映着,但是手指却是僵硬的,不知为何连敲键盘的力气都没有,那段经历是我一生当中都永远不会忘记的,我是不愿意去回忆,不愿意让别人知道我的过去,随着时间的流逝,自己也渐渐明白要想成功必定付出常人不能承受的痛苦才能成为可能,希望将自己的经历写出来能够帮助跟我一样曾经徘徊在学校阴暗角落的人,希望不懂事的孩子看过本人的经历之后能够痛改前非努力学习,在将来的某一天带着自己的老爸老妈出去玩玩,看看海啊,坐坐飞机啊,吃吃好吃的,穿穿好看的衣服;让他们能够很欣慰的告诉人家我儿子很孝顺很懂事,我这辈子再苦再累都值的;俗话说的好:“白山孝为先”;请读者走进我的人生吧;
让时间回到2005冬天,
随着春季招生的流行,像我这种学习成绩差没有什么理想的颓废男,也就跟着“臭水”流进了“臭水沟“职校。在上不上职校之间我妈也徘徊了很久,她是一个好强的人,总想我能成为她的偶像成为她的骄傲,可是我从来没有做到过在上初中的时候经常打架、斗恶、谈恋爱、玩游戏、旷课、网吧包夜,一个星期要去学校三四次,不是拿什么奖,不是评什么三好学生,而是处罚带家长,有一次跟人打架把人眼睛打出问题来了,要去医院治疗,我妈直接说别让我来直接让110过来。她对我太失望了,她把一生的尽力全用在我身上,希望我能成为有用的人,为她争脸,爸妈感情不是很好,我妈是失恋才跟我爸的所以没有什么感情就结婚了;结婚后发现自己没有了什么盼头只能将自己这辈子没有完成的愿望让自己的儿子去实现,老天总是那么爱捉弄人,恰恰我就是一个学习很差的孩子,没办法我就是学不进去;她老说你什么都好就是学习不好,我愿意你什么都不好只要学习好,妈什么都愿意就算再苦再累在高兴,曾经努力过有那么点苗头后来就没了再也没了;老妈三思过后还是同意让我去上职校,学一个技术以后还能有碗饭吃。
2006过完春节,我开始准备准备东西去城里的“臭水”沟了就是我的职校,叫大名鼎鼎的成功电脑学校,走进成功走向成功!这是我们学校的宣传广告语;就是学什么计算机啊、数控啊,这类高科技东西;当时也管不着这些了能学个数控就行了,据说那个时候数控比较热门。一早上大概是大年初八吧,我妈和我各提着被子准备送我去学校了,我迈着沉重的脚步,走到一个小店门口我妈突然跑进去买了一条糕,就是那种红纸包的苏宁大搞,也是个牌子的;我妈放到了我背包里,我问妈你买这东西干什么啊,我又不喜欢吃,妈没说话,其实我知道这意味着什么;走在路上妈似乎流泪了,她舍不得我这个儿子,这个长了18年从来没离开过她的儿子,我跟我妈感情很好;就是2006年的冬天也就是我准备离开家门去城里上学的这个冬天,我妈突然怀孕了然后打胎的,我照顾了她一个多月,我不是很懂这些,我妈说儿子,妈要休息一个月不能做事不能乱动,家里的一些家务事你把做好等你爸和你姐回来过年;这个月我学会了照顾人,学会了一个女人是多么的辛苦为了一个家庭,用自己曾经很强壮的身体来抵挡外来的压力,更让我懂的了一个女人做月子那是天大的事情,稍不注意就会留下病根(老妈教育);
到了学校之后我妈看了看我说:“儿子妈要走了,你自己要照顾好自己”。那个时候天已经快黑了,冬天嘛白天短;屁股还没做热学校就用车子把我们拖到了一个军训的地方,比较偏僻连个电话亭都没有;那个时候是我第一离开家门,都是一些新面孔新事物也没时间想家,更没时间想我妈;军训十来天很快就过去了;
第一次有了在外面想着家里的感觉,军训后我回家了,坐在车子上多么美好啊,感觉自己好想出人头地了回家看望老娘了,呵呵可笑;我妈比较坚强,不容易表露出自己的感情,更不容易哭了,只有我这个儿子曾经让她痛彻心扉无比绝望,上小学五年级我离家出走,拿了家里的500块钱从后门走了,那是我和我姐的学费钱;家里的那个时候条件不是很好,两个人上学我和我姐,经济比较紧张;事后我妈哭的很伤心。还有一次,是上初中对时候放学了不回家跟学校里的混混鬼混去了,我妈晚上出来找我,在一个路口我妈看见我了,我妈没说话“扑通”我妈跪下了,我这下昏了,真的伤到了妈的心。妈对不起,现在后悔,当时让您那么操心,头上的大部分白发是因为儿子不懂事让您烦出来的;
到家后老妈忙这个忙那个,全是好吃的;后来在一个邻居家玩,我称大姐,跟我说你军训的这段时间你妈晚上睡不着老是哭,想你这个调皮的儿子,担心你在那么远的地方怎么吃的冷不冷会不会跟人家打架,有一句话讲的好啊,儿行千里母担忧,我是她儿子,不管我再调皮再不懂事,在父母心里你永远是最好的,永远支持着你;不好意思,我擦一下眼泪........
到学校后要进入正常而又漫长的学习路程,我的数控呢!我的专业呢!居然没有,去了之后才恍然大悟,职校都是一些民办的学校,跟宣传广告上面的东西不能比,基本上你理想的专业都没有,刚来也没办法又不想让家里人操心忍着;就这样混混噩噩的过去了半年,在一次课堂上校长跟我们说学校要引进北大青鸟让我们下课后到哪个教室去听一下宣传介绍,当时对北大青鸟这个名词都不懂是什么意思,同学说估计是教人怎样养鸟的,呵呵;
一进教室,有两到三个人穿着一身黑色衣服里面白色衬衫,看上去就感觉是搞高科技的东西的;在准备着投影仪,我们几个也找了个位置做下来准备看看什么东西;人到齐后简单的介绍了一下北大青鸟是什么,就放了一段FLASH特效;我当时看乖乖多厉害啊;什么东西弄的啊,这个有意思;事后久久不能平静,想学;
后来学校说要学的可以报名学习,学费是一学期三四千吧记不清了,心里很想学但是涉及到的金额比较多所以犹豫了,因为要交两种学费,一是我本身上的大专学费还有个就是北大青鸟学费;经过一段思想斗争后终于拨通了老妈的电话跟她讲了大概情况,我妈二话没说就答应了,最让我印象深刻的是老妈只说了只要是学习用的老妈就算不吃饭,都支持你;
不好意思,我再擦一下眼泪.........
进了北大青鸟班之后,学了计算机网络、C语言、HTML、Photoshop、Dreamweaver等一些知识;但是我真的不知道这些东西能用来干吗,一头雾水;时间过的飞快又要交下学期的北大青鸟的学费了,我开始犹豫我不想交了,感觉这东西学了能干什么呢,能找到工作吗;随着学校新一年的春季招生开始,我帮着学校招生和一个性魏的老师在一起,据说这个老师比较厉害是西安电子科技大学毕业的是专家级的程序高手,曾经在中科院就任;这个老师平易近人,非常朴素容易接近,也许是老师看我比较顺眼吧,我们坐在人家高考学校的门口等人家出来给他们发招生简章;老师问我“你是学什么的啊”我说数控老师微笑了一下,说“那个东西脏死了,一天到晚没有干净的衣服,鼻孔里每天都是满满的,跟我学软件开发吧”,我一听什么啊,软件开发,这个东西不是说学就学的啊,我看过一会人家做网站的满屏全是代码,我的个乖乖,那个东西真的会死人的,不学;老师突然来了劲说“你看坐在办公室里,敲敲代码,喝喝咖啡多舒服”,本人农村出生,从小就比较能吃苦比较勤奋,就是没用在学习上包;吃苦就吃苦,不学;
话说回来谁不想以后出人头地啊,但是那个东西真的很难学,我是初中毕业而且初中还是烂桃子,成绩很差,想要学软件开发必定要脱胎换骨才行;这道墙难住了我。
因为我的那个魏老师技术比较厉害,所以学校让他代我们的C语言课,在他的课堂上基本上都是想学习的人,一眼看下去我估计我的基础是最差的,学编程要逻辑思维好一点的,我恰恰很烂。总是怕这个怕那个的遇到问题又不敢问,生怕问了别人会笑,真是丢人啦。有一次是老师让我们写一段C语言代码,用来计算两个数字然后将结果打印到屏幕上,代码大概是这样的:
#include "stdio.h"
void main()
{
int i,j;
printf("Pelase Enter Number1");//别笑当时就这么过来的,把Please敲成Pelase还不敢该,就怕该错了;
scanf("%d",&i);
printf("Pelase Enter Number2");
scanf("%d",%j);
print("%d",i+j);
}
就是这段代码困扰着我很久,不明白这段代码中那些东西是可以自己改动的,问了一个同学,结果他的反应真的能让我要从六楼跳下去(教室在六楼);竟然用那种藐视的眼光看我说的;我来火了,妈的不说就算了干嘛还摆着一副臭脸啊;后来自己回去慢慢的研究也就懂了,我把代码一点一点的删掉看哪些不会影响代码的正常运行;就是这种个人让我发疯似的的学习C语言;
后来放暑假去了上海,爸妈都在上海打工,去了之后跑到书店买了两本C语言书籍,因为床比较小我和我爸一张床,他白天做事比较累,我刚好就用晚上时间学习,百天他上班了我来睡觉;这样的安排还是蛮好的;一个暑假过去了,以为自己不得了了C语言我很精通了,到了学校之后发现,苦心人,天不负;果然那些曾经瞧不起我的同学,跟我也搭上话了,我用C语言写了个屏保程序,他们问题C语言还能写图形啊;我郁闷了;我也不告诉你,我可以把代码给你看呵呵;第一次尝到了学习的甜头;后来北大青鸟的事情就这样不了了之了;老师经常讲培训机构出来的全是垃圾人才,这话说的难听啊;话说的没错,在他们眼里那可是数一数二的高手才能算的上人才;他在班级里说,专业软件开发人员参加国家的软考那才是真功夫,不是虚的;其实他这么说是想激励我们去学习,说我们学的知识离真正的软件开发真是冰山一角,毕业后能弄个七八百块钱的工作就不错了;也许老师是良心发现吧,觉得培训机构也是骗钱,他每天晚上给我们培训不要钱免费,这真的让我们感动,哪有这样的老师啊;我知道了软考这个东西之后就上网查了一下软考是什么东西,意味着什么,难度有多大;上网搜了一堆文档看了,对软考有了一个整体的概念,决定报考高级程序员(现在改名为高级程序员),这个证书有含金量,难度相当大;把要考试的想法跟老师说了下,老师非常支持说这才是进入软件开发的正确道路,只有这里面才会涉及到软件这座大山里的边边角角,各种各样的知识点,才能成功的走向软件开发这条路;自己也不知量力的跑到书店买来了一本软件设计书教程,当时在班级里谁能弄了程序员教程看看就很牛B了,我尽然看软件设计师,那个时候才19岁,别人就是嘲笑;
给自己定了计划每天晚上八点看书到12点,中午别人睡午觉我就看书,准备努力一年通过考试;说的轻松要想做到真的很难,每天中午别人都在宿舍里睡觉,我就跑到楼上看书,本来中午就很困,看着看着就睡着了,意志告诉我不能睡起来继续看,就算看不下去也要把这个时间熬过去,我还有个爱好就是打篮球,听到外面球响了心里痒痒的,跟自己商量说先打球然后看书,结果球打了就更困了,书实在看不下去;不知不觉就睡着了,突然醒来书上全是口水;半边脸全是印子,一次次这样不断的缩小每天的睡觉时间,有时候晚上都一两点了还在看书,看到高兴的地方还自己就笑起来了,呵呵;自己对自己讲,成功的人一定要有段痛苦的经历才能成为可能;夜以继日,我努力着;很快到了考试的时间了第一次考试上午43下午39挂掉了;继续考,给自己更大的力量争取下次通过,每天还是坚持看书,后来慢慢的不知不觉的养成了晚上不弄个书看看心里难受呢;就这样我成功的通过了第二次的软考高级程序员,过了之后我将我的好消息第一个告诉了我亲爱的老娘,让她高兴一下;但是她又不懂,不能很彻底的明白这个东西是什么,有什么用;怕我骗他特的跑到她上班的地方问了她上班的同事,给我打了一千块钱,庆祝庆祝;
这样一来已经是09年了,我成功的通过了高程,学校里几乎没人知道,连我的恩师也不知道,只有几个好兄弟知道;后来到软考办去问一下,原来我还是我们市最小的高程呢,19岁就过了;时间过的很快出来工作一年多了,现在就职于一家软件公司,从事.net软件开发工作。
当年上学的时候很喜欢看一些通过自己努力成为高手的心得体验,他们同样说了自己在怎样的环境里成为了数一数二的IT领域的高手,真的很希望有更多的人去抒写着自己的成长经历,让一些还没有找到自己方向的颓废男或想立足于软件开发领域的人得到前进的动力,只要努力就会成功;朋友请记住一句话:苦心人,天不负;你的付出没人看见,但是老天看见;他会让你得到你所付出的东西;真心的希望,自己的这篇文章能够帮助你找到方向; 谢谢!
boolean ipValid(String s){
String regex0="(2[0-4]//d)" + "|(25[0-5])";
String regex1="1//d{2}";
String regex2="[1-9]//d";
String regex3="//d";
String regex="("+regex0+")|("+regex1+")|("+regex2+")|("+regex3+")";
regex="("+regex+").("+regex+").("+regex+").("+regex+")";
Pattern p=Pattern.compile(regex);
Matcher m=p.matcher(s);
return m.matches();
}