- 博客(163)
- 收藏
- 关注

原创 golang内幕之数组
func Array_1() { var arr1 [3]int arr1[0] = 1 arr1[1] = 2 arr1[2] = 3 fmt.Fprintf(os.Stdout, "%T - %v\n", arr1, arr1) arr2 := [3]int{ 1, 2, 3, } fmt.Fprintf(os.Stdout, "%T - %v\n", arr2...
2019-07-21 22:36:37
284

原创 golang内幕之组合
type Parent struct { Name string Age int}func (p Parent) String() string { return fmt.Sprintf("Name:%s, Age:%d", p.Name, p.Age)}func StructCombine_1() { var p1 = Parent{} fmt.Println(p1)...
2019-07-20 19:36:21
397

原创 golang内幕之for-go-statement
func ForGoStatement_1() { go func() { fmt.Println("go-func-1") }()}func main() { ForGoStatement_1()}参考如下文章,会更清楚golang的协程:【golang内幕之程序启动流程】【https://blog.youkuaiyun.com/QQ1130141391/article/deta...
2019-07-20 19:14:15
443

原创 golang内幕之for-range-value
func ForRangeValue_1() { var mapAges map[string]int mapAges = make(map[string]int) mapAges["name-1"] = 1 mapAges["name-2"] = 2 mapAges["name-3"] = 3 var newAges map[string]*int newAges = make...
2019-07-20 17:32:41
311

原创 golang内幕之defer-panic-recover
问题:defer适用在什么场景?我们先看下下面一段拷贝文件的代码:func CopyFile_1(src, dst string) (wlen int64, err error) { sfd, err := os.Open(src) if err != nil { return 0, err } dfd, err := os.Create(dst) if err != n...
2019-07-20 16:54:45
325

原创 golang内幕之协程状态切换
本文承接上一篇文章【golang内幕之程序启动流程】【https://blog.youkuaiyun.com/QQ1130141391/article/details/96197570】在【golang内幕之程序启动流程】文中我们提到了在主线程中启动了main Goroutine,并提到了schedule是一轮的协程调度,并且是永不返回的,这正是我们研究的入口点;另外也提到了go func(){}...
2019-07-18 16:02:01
2742

原创 golang内幕之程序启动流程
文件:startup.go ,代码如下:package mainimport "fmt"func main() { fmt.Println("startup")}上面是golang程序的入口函数,即main包中的main函数。但main.main并发golang真正的程序入口,golang存在一个运行时(runtime),与我们的编写的golang代码一起编译、链接成可执行...
2019-07-17 11:33:17
1887

原创 C语言-学习心得(1)
记得在大学学习C++的时候,对指针这种类型特别害怕。因为虽然我知道指针是指向内存地址的一种变量,变量本身有自身的内存(在32位系统中指针变量占4个字节),而这4个字节存放的数据是个地制值,这个地制值是你真正要操作的内存,但是在使用的时候,总会这样或者那样的错误。直到我在出来实习后,我才知道我在那些地方存在盲区,导致我在使用指针的时候总会出错。导致这些盲区的原因很多,如老师仅仅教基础的,
2014-10-15 20:37:39
1029

原创 jQuery学习笔记(二)之jQuery选择器
html页面元素就一些html标签(元素),和对应的html元素属性组成,属性包括id,class,获取css样式属性等,其中通过css样式属性获取jQuery,这里的css样式属性就可以称为jQuery的css选择器另外jQuery还支持xpath选择,其实跟css差不多。下面就这对各种常用的选择器怎么使用做个说明:1、id选择器如:页面上有这段代码:如果我要获取这个页面
2014-01-16 15:49:14
1141

原创 jQuery学习笔记(一)
学习一样技术,我习惯先把握住其全貌,再把握其套路,再把握其特殊点,在这个基础上就可以快速入门。入门之后,我们就可以利用任何零碎时间学习其细节。本着这个套路,我也会这样记录我的jQuery学习笔记。准备工作:先下载jquery-1.8.2.js文件,引用jQuery:如 这样准备工作完成了。写自己的代码:一般是在一个新建js文件写自己代码,然后引用:如 然后在文件
2014-01-16 10:54:53
1179

原创 JS之模板技术(aui / artTemplate)
artTemplate是个好东西啊,一个开源的js前端模板引擎,使用简单,渲染效率特别的高。我经常使用这个技术来在前端动态生成新闻列表,排行榜,历史记录等需要在前端列表显示的信息。下面是artTemplate的下载链接:https://github.com/aui/artTemplate因为artTemplate比较简单,容易上手,项目的例子,文档又比较齐全,大家有需要可以
2014-01-14 11:45:34
10698

原创 Oracle之sql标准之增删查改子句用法
SELECT语句 SELECT [ ALL | DISTINCT { * | expression | column1_name [ , column2_name ] [ , … ] }FROM { table1_name | ( subquery ) } [ alias ][ , { table2_name | ( subquery ) } [ alias ] , … ][
2013-10-26 16:55:13
1088

原创 Oracle之sql标准之连接查询汇总
简单连接所谓笛卡尔积所生成的表,就是一个基本表中每一行与另一个基本表的每一行连接在一起所生成的表,查询结果的行数是两个基本表的行数的积。select a.*,b.* from emp a,dept b where a.deptno = b.deptno;我们可以这样查看:首先查看scott.emp表,select * from emp;共14条记录,其中deptno为10,20
2013-10-26 14:15:14
1802

原创 oracle之修改已经定义好的表、列信息
修改表重命名表对于已存在的表,还可以修改其名称。重命名表有两种语法形式,一种是使用ALTER TABLE语句,语法如下:ALTER TABLE table_name RENAME TO new_table_name;另一种是直接使用RENAME语句,语法如下:RENAME table_name TO new_table_name;移动表在创建表时可以为表
2013-10-25 14:32:28
2737

原创 Oracle之约束
数据库约束分为两种:表级约束和列级约束表级约束 应用于表,对表中的多个列起作用,如primary key,foreign key,unique,check。列级约束 应用于表中的一列,只对该列起作用,如not null对于表级约束,写法一般有两种(创建表时),而列级约束一般只有一种如:表级check:只作用于一个列:CREATE TABLE Pe
2013-10-25 14:18:02
910

原创 Oracle之实战(图书馆系统)java源代码部分
看这文章之前,最好先看 Oracle之实战(图书馆系统)中对应的数据库脚本,里面定义了表空间,用户,授权,存储过程,触发器,序列,数据表等。这里主要讲解怎么在java代码中使用这些数据库对象,这里主要使用jdbc的api。表空间和用户:在已经创建好表空间和用户后,我们就需要在java代码中连接数据库,这里我把连接数据库的操作封装成一个工具类:文件名:JdbcUtils.java,对应的
2013-10-23 19:40:25
3132

原创 Oracle之实战(图书管理系统)
这是我oracle课程设计的作品的数据库脚本部分,应老师要求,尽量把学到的东西都应用上,所以涉及了包,序列,触发器,存储过程,建表,主外键,分页查询等1、创建表空间(永久,临时,撤销),用户,授权 create tablespace bookspace datafile 'E:\app\Administrator\oradata\orcl\bookspace.dbf' size 50M
2013-10-22 22:17:11
8829

原创 Oracle之linux环境下安装
一、硬件检测1、内存检测 oracle11g要求最低1GB内存命令: grep MemTotal /proc/meminfo2、交换空间检测 通常交换空间是内存1.5倍命令:grep SwapTotal /proc/meminfo3、临时目录/temp检查命令:df -k /tmp1、创建用户和用户组[root@csuduan
2013-10-22 22:16:57
1407

原创 Oracle之课程实验二(数据字典)
课程名称:Oracle11g数据库应用简明教程 实验题目:实验二数据字典姓名:李日中 学号:2010324264班级:10计本3班 实验日期:2013-4-11 成绩: 一、 实验目的1、学会如何使用常用的数据字典 字典的结构侧面了解如何创建了数据库对象2比较Oracle数据库中几个数据字典的相同点与不同点3从整体上,区分不同前缀的视图的用途与区别
2013-10-22 22:15:43
4824

原创 JavaServlet之http协议(三)
HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,现在HTTP/1.1也已经出来了。HTTP协议的主要特点可概括如下:1.支持客户/服务器模式。2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、H
2013-10-09 21:16:22
1029

原创 JavaServlet之http协议(二)
HTTP/1.0与HTTP/1.1的区别1.0一次请求,建立连接后,只能请求一次,请求完后,则断开连接1.1一次请求,建立连接后,可以请求多次,每次请求完之后,不断开连接一个请求行7种请求方式,只需学习GET和POST如果用户没有设置,默认都是GET,表单一般是POST,一般除了表单是POST外,其他的都是GET多个请求头Accept:t
2013-10-09 20:32:55
883

转载 JavaSwing之JTable(二)
表格(Table)的使用与介绍8-1:使用JTable组件:类层次结构图:java.lang.Object--java.awt.Component--java.awt.Container--javax.swing.JComponent--javax.swing.JTabel在使用JTable以前,我们先看一下它的构造函数有哪些, 以及应该如何使用:JTa
2013-10-09 20:26:16
2046

原创 Java高级特性之枚举(二)
01.Enum不可以有public或者protected的构造方法,只能是private或friendly(就前面不用修饰符),这样可以保证客户代码不能新建一个Enum的实例,我们也不需要实例化Enum对象。 Enum定义的列表成员跟接口一样都是public,static,final的,每一个的列表成员都是一个对象,该对象是由上面提到的构造方法构造的。构造方法的参数列表很重要。 如
2013-10-09 20:19:12
4638

原创 JavaServlet之http协议详解
http://localhost:8080/myweb/index.jsphttp : 表示数据传输的协议localhost : 主机名或IP8080 : 端口号myweb : 服务器上的一个web应用index.jsp : web 应用下的资源HTTP请求:客户端连上服务器后,向服务器请求某个web资源,这就是客户端向服务器发送了一个http请求。一个完整
2013-10-08 22:08:38
1939

原创 谈谈Java开发中遇到的资源文件路径问题(二)
在 谈谈Java开发中遇到的资源文件路径问题(一) 中,我们已经聊了开发JavaSe应用程序的相对路径问题。现在就聊聊开发web应用时,相对路径的问题吧。这是我在myeclipse中新建的web工程的路径:D:\JAVA\MyEclipse10\ThreeDaysWeb这是我tomcat服务器的路径(我的tomcat服务器是myeclipse集成进来的):D:\JAVA\M
2013-10-06 00:40:43
2947

原创 Java代理之静态代理与动态代理(一)
什么是代理,什么是静态代理,什么是动态代理,什么是代理类(增强实现类),什么是委托类,为什么需要代理,代理用在什么地方等等。刚开始接触代理时,总会有这样那样的疑问。现在我们看一下静态代理的代码,学习静态代理,更有利我们理解这些概念问题。定义一个接口:(共同接口)package three.day.proxy.staticproxy;public interface Re
2013-10-05 00:16:58
1188

原创 JavaIO之管道(二)
package three.day.io;import java.io.IOException;import java.io.PipedInputStream;import java.io.PipedOutputStream;public class PipedStreamDemo02 {public static void main(String[
2013-10-04 02:01:22
1010

原创 JavaSwing图形界面编程之画图程序
package three.day.frame;import java.awt.*;import java.awt.event.*;import java.awt.geom.*;import java.io.*;import java.util.*;import javax.swing.*;class Point1 implements Serializ
2013-10-04 02:00:01
10290

原创 JavaIO之复制目录
package three.day.io;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;public class
2013-10-04 01:59:58
852
原创 X语言解析器C++实现(不知所言篇)
纠结了很久,要不要写这一篇文章,因为最近一直在写解析AST代码,距离写完解析AST代码还需要一小段时间,没有成果输出,也不知道说些什么好。可最近确实也遇到一些问题,也多了一些思考,如果不把这些问题、思考记录下来,等时间过了,我怕我会忘记。虽然是问题,但却是宝贵的。
2025-01-16 00:40:10
582
原创 (二)实现一个高性能的TCP网络库C实现-线程布局篇
线程布局篇是在《(一)实现一个高性能的TCP网络库C实现-序言篇》的基础上展开的,在序言篇中提到,可以选择的并发架构包括多进程、多线程和协程。
2025-01-14 14:00:19
711
原创 X语言解析器C++实现(语言规范篇
我喜欢Java语言的规范性,我享受Java语言的健壮,但我也厌恶Java的过分设计(这或许不是Java语言的原罪,而是带动Java语言发展的那些框架造的孽)。我喜欢Python语言的快速开发,几行代码就完成了其他语言需要几十行代码的功能,我喜欢Python语言的应有尽有,几乎所有东西都有现成的,我讨厌Python语言带来与C系违和的语言特性,比如使用tab对齐。如果非要选择哪个语言更完美,我选Java,哪个语言性能最好,我选C,哪个语言介乎两者之间,我选C++(C++11以上)和Rust。
2025-01-12 00:04:58
743
原创 X语言解析器C++实现(模糊探索篇)
因为之前在《数学表达式计算器》中提到过,我最想尝试的挑战就是写一个C语言解析器,所以我今天抽空开始写了一点点,但是写的不是C语言的解析器
2025-01-11 01:15:45
591
原创 (一)实现一个高性能的TCP网络库C实现-序言篇
首先,整体构思一下网络库的实现。第一、采用哪种并发架构?多进程架构,还是多线程架构,还是协程?第二、采用哪种网络IO模型?阻塞IO、还是非阻塞IO、还是异步IO?第三、采用哪种网络IO设计模式?Preactor、还是Reactor?第四、采用哪种网络IO事件通知模型?轮询、还是多路复用、多路复用select、poll、还是epoll?
2025-01-10 01:22:21
754
原创 C语言-学习心得(3)
扫盲后总结出来的要点[1] :http://blog.youkuaiyun.com/qq1130141391/article/details/40117303 [2] :http://blog.youkuaiyun.com/qq1130141391/article/details/40119371下面是
2014-10-15 23:10:08
998
原创 C语言-学习心得(2)
记得在大学学习C++的时候,对指针这种类型特别害怕。因为虽然我知道指针是指向内存地址的一种变量,变量本身有自身的内存(在32位系统中指针变量占4个字节),而这4个字节存放的数据是个地制值,这个地制值是你真正要操作的内存,但是在使用的时候,总会这样或者那样的错误。直到我在出来实习后,我才知道我在那些地方存在盲区,导致我在使用指针的时候总会出错。导致这些盲区的原因很多,如老师仅
2014-10-15 22:46:07
1086
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人