Hexo + yilia 主题实现文章目录

前提

为了方便查看每篇文章的目录结构,可以定位到想看的地方,特地找了下如何实现这个功能。

添加 CSS 样式

打开 themes\yilia\source 下的 main.234bc0.css 文件,直接在后面添加如下代码:

Java连接Oracle数据库的三种连接方式

背景:

这两天在学习Oracle数据库,这里就总结下自己上课所学的知识,同时记录下来,方便整理当天所学下的知识,也同时方便日后自己查询。

SQL语句的话,这里我就不多讲了,感觉和其他的数据库(MySQL、SQL Server)都是类似,区别不大。

今天在这里就写下 Java 连接 Oracle 数据库的三种连接方式。

MyBatis的foreach语句详解

foreach 的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合。

foreach 元素的属性主要有 item,index,collection,open,separator,close。

  • item 表示集合中每一个元素进行迭代时的别名,

  • index 指 定一个名字,用于表示在迭代过程中,每次迭代到的位置,

  • open 表示该语句以什么开始,

  • separator 表示在每次进行迭代之间以什么符号作为分隔 符,

  • close 表示以什么结束。

在使用 foreach 的时候最关键的也是最容易出错的就是 collection 属性,该属性是必须指定的,但是在不同情况 下,该属性的值是不一样的,主要有一下3种情况:

  1. 如果传入的是单参数且参数类型是一个List的时候,collection 属性值为 list
  2. 如果传入的是单参数且参数类型是一个 array 数组的时候,collection 的属性值为 array
  3. 如果传入的参数是多个的时候,我们就需要把它们封装成一个 Map 了,当然单参数也可以封装成map,实际上如果你在传入参数的时候,在 breast 里面也是会把它封装成一个 Map 的,map 的 key 就是参数名,所以这个时候 collection 属性值就是传入的 List 或 array 对象在自己封装的 map 里面的 key 。

关于String s = new String("xyz"); 创建几个对象的问题

你知道在 java 中除了 8 种基本类型外,其他的都是类对象以及其引用。所以 "xyz "java 中它是一个String 对象.对于 string 类对象来说他的对象值是不能修改的,也就是具有不变性。

看:

1
2
3
4
String   s= "hello "; 
s= "Java "; 
String   s1= "hello "; 
String   s2=new   String( "hello ");

结果如下图:
string-new1

啊,s 所引用的 string 对象不是被修改了吗?之前所说的不变性,去那里了啊?

【字符串】判断两字符串是否互为旋转词?

相关阅读:

字符串逆序问题的解决方法

题目:

如果对于一个字符串A,将A的前面任意一部分挪到后边去形成的字符串称为A的旋转词。

比如A=”12345”,A的旋转词有”12345”,”23451”,”34512”,”45123”和”51234”。

对于两个字符串A和B,请判断A和B是否互为旋转词。

给定两个字符串A和B及他们的长度lena,lenb,请返回一个bool值,代表他们是否互为旋转词。

字符串

题目一:

如果一个字符串 str ,把字符串 str 前面的任意部分挪到后面去形成的字符串叫做 str 的旋转词。比如 str = “ 1234 ” , 那么 str 的旋转词有 “ 1234 ” , “ 2341 ” , “ 3412 ” , “ 4123 ” 。给定两个字符串 a 和 b ,请判断 a 和 b 是否互为旋转词?

程序访问文件的几种方式

IO

程序访问文件的几种方式

读取和写入文件 I/O 操作都调用操作系统提供的接口。因为磁盘设备是由操作系统管理的,应用程序要访问物理设备只能通过系统调用的方式来工作。读和写分别对应 read() 和 write() 两个系统调用。而只要是系统调用就可能存在内核空间地址和用户空间地址切换的问题,这也是为什么操作系统为了保护系统本身的运行安全而将内核程序运行使用的内存空间和用户程序运行的内存空间进行隔离造成的。虽然这样可以保证内核程序运行的安全性,但是也存在数据可能需要从内核空间向用户空间复制的问题。

如果遇到非常耗时的操作,如磁盘 I/O, 数据从磁盘复制到内核空间,然后又从内核空间复制到用户空间,将会非常缓慢。这时操作系统为了加速 I/O 访问,在内核空间使用缓存机制,也就是将从磁盘读取的文件按照一定的组织方式进行缓存,如果用户程序访问的是同一段磁盘地址的空间数据,那么操作系统将从内核缓存中直接取出返回给用户程序,这样就可以减小 I/O 的响应时间。

MySQL 处理海量数据时的一些优化查询速度方法

在参与实际项目中,当 MySQL 表的数据量达到百万级时,普通的 SQL 查询效率呈直线下降,而且如果 where 中的查询条件较多时,其查询速度无法容忍。想想可知,假如我们查询淘宝的一个订单详情,如果查询时间高达几十秒,这么高的查询延时,任何用户都会抓狂。因此如何提高 SQL 语句查询效率,显得十分重要。

Pyspider框架 —— Python爬虫实战之爬取 V2EX 网站帖子

背景:

PySpider:一个国人编写的强大的网络爬虫系统并带有强大的WebUI。采用Python语言编写,分布式架构,支持多种数据库后端,强大的WebUI支持脚本编辑器,任务监视器,项目管理器以及结果查看器。在线示例: http://demo.pyspider.org/

官方文档: http://docs.pyspider.org/en/latest/

Github : https://github.com/binux/pyspider

本文爬虫代码 Github 地址:https://github.com/zhisheng17/Python-Projects/blob/master/v2ex/V2EX.py

,