整理了一些Java方面的架构、面试资料(微服务、集群、分布式、中间件等),有需要的小伙伴可以关注公众号【程序员内点事】,无套路自行领取
本文作者:程序员内点事 更多精选
技术部突然宣布:JAVA开发人员全部要会接口自动化测试框架
3万字总结,Mysql优化之精髓
写在前边
受疫情影响一直在家远程办公,公司业务进展的缓慢,老实讲活并没有那么多,每天吃饭、睡觉、逛技术社区、写博客,摸鱼摸得爽的很。早上本来还想在来个回笼觉,突然部门经理的语音消息就过来了,甩给我一个连接地址 http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm/2018/,要我把全国的省市名称和区域代码弄出来,建一个字典表,时限一上午。
分下一下需求
要全国的省、市名称,建一张字典表进行存储,表结构设计相对容易,那么城市数据该怎么搞?
有两种解决办法:
辛苦点复制粘贴,说多了也就几百个而已
写个爬虫工具,一劳永逸
但作为一个程序员没有什么是不能用程序解决的,虽然工作Ctrl+C
、 Ctrl+V
用的不少,像这种没有技术含量的复制粘贴还是挺丢面子的。
爬虫搞起
基于这个需求只想要城市名称,爬虫工具选的是Jsoup,Jsoup是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。
Jsoup是根据HTML页面的
、、等标签来获取文本内容的,所以先分析一下目标页面结构。打开F12
查看页面结构发现,我们要的目标数据在第5个标签 class
属性为provincetr
的 标签里。 省份名称内容的页面结构如下:
北京市
天津市
.........
再拿到标签中
标签属性就可以了,省份名称找到了,再看看省对应的城市名在哪里,属性href="11.html"
就是省份下对应的城市页面Url
http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm/2018/11.html
找城市名称跟上边分析过程一样,这里就不再赘述了,既然数据位置已经确定了,那么就开始具体的爬取工作了。
爬虫实现
1、引入Jsoup依赖
org.jsoup
jsoup
1.7.3
2、代码编写
代码的实现比较简单就两个方法而已,没有什么难度主要是得细心,捋清页面标签的嵌套结构就可以了。按照之前分析的逻辑一步一步走
/**
* @author xin
* @description 解析省份
* @date 2019/11/4 19:24
*/
public static void parseProvinceName(Map> map, String url) throws IOException {
/**
* 获取页面文档数据
*/
Document doc = Jsoup.connect(url).get();
/**
* 获取页面上所有的tbody标签
*/
Elements elements = doc.getElementsByTag("tbody");
/**
* 拿到第五个tbody标签
*/
Element element = elements.get(4);
/**
* 拿到tbody标签下所有的子标签
*/
Elements childrens = element.children();
/**
* 当前页面的URL
*/
String baseUri = element.baseUri();
for (Element element1 : childrens) {
Elements provincetrs = element1.getElementsByClass("provincetr");
for (Element provincetr : provincetrs) {
Elements tds = provincetr.getElementsByTag("td");
for (Element td : tds) {
String provinceName = td.getElementsByTag("a").text();
String href = td.getElementsByTag("a").attr("href");
System.out.println(provinceName + " " + baseUri + "/" + href);
map.put(provinceName, null);
/**
* 组装城市页面的URL,进入城市页面爬城市名称
*/
parseCityName(map, baseUri + "/" + href, provinceName);
}
}
}
}
在抓取城市名称的时候有一点要注意,直辖市城市的省份和城市名称是一样的
/**
* @author xin
* @description 解析城市名称
* @date 2019/11/4 19:26
*/
public static void parseCityName(Map> map, String url, String provinceName) throws IOException {
Document doc = Jsoup.connect(url).get();
Elements elements = doc.getElementsByTag("tbody");
Element element = elements.get(4);
Elements childrens = element.children();
/**
*
*/
String baseUri = element.baseUri();
Map cityMap = new HashMap<>();
for (Element element1 : childrens) {
Elements citytrs = element1.getElementsByClass("citytr");
for (Element cityTag : citytrs) {
Elements tds = cityTag.getElementsByTag("td");
/**
* 直辖市,城市名就是本身
*/
String cityName = tds.get(1).getElementsByTag("a").text();
if (cityName.equals("市辖区")) {
cityName = provinceName;
}
String href1 = tds.get(1).getElementsByTag("a").attr("href");
System.out.println(cityName + " " + href1);
cityMap.put(cityName, href1);
}
}
map.put(provinceName, cityMap);
}
public class test2 {
public static void main(String[] args) throws IOException {
Map> map = new HashMap<>();
parseProvinceName(map, "http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm/2018");
System.out.println(JSON.toJSONString(map));
}
}
3、输出JSON字符串
当前只要省份和城市名称,爬虫没有什么深度,如果还需要区县等信息,可以根据市后边的url 35/3508.html
继续往下爬取
{
"福建省": {
"龙岩市": "35/3508.html",
"南平市": "35/3507.html",
"莆田市": "35/3503.html",
"福州市": "35/3501.html",
"泉州市": "35/3505.html",
"漳州市": "35/3506.html",
"厦门市": "35/3502.html",
"三明市": "35/3504.html",
"宁德市": "35/3509.html"
},
"西藏自治区": {
"拉萨市": "54/5401.html",
"昌都市": "54/5403.html",
"日喀则市": "54/5402.html",
"那曲市": "54/5406.html",
"林芝市": "54/5404.html",
"山南市": "54/5405.html",
"阿里地区": "54/5425.html"
},
"贵州省": {
"贵阳市": "52/5201.html",
"毕节市": "52/5205.html",
"铜仁市": "52/5206.html",
"六盘水市": "52/5202.html",
"遵义市": "52/5203.html",
"黔西南布依族苗族自治州": "52/5223.html",
"安顺市": "52/5204.html",
"黔东南苗族侗族自治州": "52/5226.html",
"黔南布依族苗族自治州": "52/5227.html"
},
"上海市": {
"上海市": "31/3101.html"
},
"湖北省": {
"黄冈市": "42/4211.html",
"孝感市": "42/4209.html",
"恩施土家族苗族自治州": "42/4228.html",
"省直辖县级行政区划": "42/4290.html",
"襄阳市": "42/4206.html",
"鄂州市": "42/4207.html",
"十堰市": "42/4203.html",
"咸宁市": "42/4212.html",
"黄石市": "42/4202.html",
"荆州市": "42/4210.html",
"随州市": "42/4213.html",
"宜昌市": "42/4205.html",
"武汉市": "42/4201.html",
"荆门市": "42/4208.html"
},
"湖南省": {
"湘潭市": "43/4303.html",
"衡阳市": "43/4304.html",
"张家界市": "43/4308.html",
"益阳市": "43/4309.html",
"岳阳市": "43/4306.html",
"娄底市": "43/4313.html",
"株洲市": "43/4302.html",
"常德市": "43/4307.html",
"湘西土家族苗族自治州": "43/4331.html",
"郴州市": "43/4310.html",
"邵阳市": "43/4305.html",
"长沙市": "43/4301.html",
"永州市": "43/4311.html",
"怀化市": "43/4312.html"
},
"广东省": {
"河源市": "44/4416.html",
"韶关市": "44/4402.html",
"茂名市": "44/4409.html",
"汕头市": "44/4405.html",
"清远市": "44/4418.html",
"深圳市": "44/4403.html",
"珠海市": "44/4404.html",
"广州市": "44/4401.html",
"肇庆市": "44/4412.html",
"中山市": "44/4420.html",
"江门市": "44/4407.html",
"云浮市": "44/4453.html",
"惠州市": "44/4413.html",
"湛江市": "44/4408.html",
"东莞市": "44/4419.html",
"揭阳市": "44/4452.html",
"阳江市": "44/4417.html",
"佛山市": "44/4406.html",
"汕尾市": "44/4415.html",
"潮州市": "44/4451.html",
"梅州市": "44/4414.html"
}
.......
}
Jsoup爬取页面数据对网络的依赖比较高,像我500块一年50M的方正宽带快要卡出翔了,平均执行三次才有一次成功,我太难了!
Exception in thread "main" java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:171)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:735)
at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1569)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1474)
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:443)
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:465)
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:424)
at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:178)
at org.jsoup.helper.HttpConnection.get(HttpConnection.java:167)
at com.xinzf.project.jsoup.test2.parseProvinceName(test2.java:32)
at com.xinzf.project.jsoup.test2.main(test2.java:17)
总结
从分析页面到编写代码花费的时间,可能要比简单的复制粘贴还要长,但我依然选择用程序解决问题,并不是因为我有多勤快,反而是因为我很懒,你品,你细品!
今天就说这么多,如果本文对您有一点帮助,希望能得到您一个点赞哦
您的认可才是我写作的动力!
整理了一些Java方面的架构、面试资料(微服务、集群、分布式、中间件等),有需要的小伙伴可以关注公众号【程序员内点事】,无套路自行领取
你可能感兴趣的:(为了不复制粘贴,我被逼着学会了JAVA爬虫)
幸运五叶草
牵着蜗牛去散步121
今天下午陪孩子在小广场玩。偶然发现有一片绿绿的草地,那是一小片三叶草。我蹲下身,用手轻轻地拨开,在里面寻找。在三叶草里寻找四叶草,已经成为我的习惯。上大学时我和好友出去踏青。路过一片绿草地,好友忽地蹲下,又招呼我和她一起。好友告诉我,这是三叶草。我看了看,果然如此,每株小植物都有三片叶子。好友又说:“如果能从里面找到四叶草,那就是幸运草,你就会有好运。”我和好友埋头寻找四叶草。从一大片颜色、形状相
惊蛰
占愚姑娘
惊蛰在古时有三候,一候桃始华,二候仓庚鸣,三候鹰化为鸠,三候所代表的花信分别为桃花,杏花与蔷薇,其实对于惊蛰这一节气我所知甚少,若非刻意去看墙上的日历,我大概是不知道它到底是哪一天的。惊蛰的到来,也就意味着入冬藏伏的蛰虫开始苏醒,天气乍暖,一阵春雨润百卉绽芽,耕种也便开始。春天的脚步总是来的惹人注意,它似乎从未想过掩饰自己降临人间的痕迹,我们喜爱它或许正由于它随处走的每一步脚印,都有生命力的味道,
2021-05-31
优悠优悠
昨晚在汇米巴一个男人买了瓶一块五的矿泉水一盒软包装的椰子汁,顺手把矿泉水递给了一个5、6岁的小女孩,我本来也没在意,这时候一个十一二岁的男孩抱着篮球走了过来,男人把椰汁给了男孩,关切的注视他喝椰汁,眼神一直盯着男孩看都不看旁边的女孩,瞬间就觉得这个男人好猥琐,在现在这个年代,几块钱的事情重男轻女得如此明显,无疑是个乡里X。在我小时候那个年代,父亲每个月工资全部交给母亲,自己只留下一点点零用钱,父亲
2023-02-05
执剑饮烈酒
1、人生本来就没有相欠。别人对你付出,是因为别人欢喜。你对别人付出,是因为自己甘愿。——白落梅2、独利则败,众谋则泄。大柔非柔,至刚无刚。——曾国藩3、中国的孩子,只要生,不管他好不好;只要多,不管他才不才。生他的人,不负教他的责任。这许多人口,便只在尘世中辗转。小的时候不把他当人,大了以后,也做不了人。——鲁迅《热风·1918》4、对于见面我看得较重,对于分别我看得较轻,这是人生取巧之一法,否则
那次考试,我睡着了
无他亦无她
那次考试,我睡着了八年级上册期中考试时,那时是冬天,特别的冷,当时正在考语文。当广播宣布考试开始的时候,当时也像平时一样,大家都忙着提笔写字,但是因为太冷了,我都有些麻木了,但是还是提笔开始答题。写了不久,因为天气冷,整个教室全部封闭起来,我用14年作弊经验的方法小心地试探地望向四周,哎呀妈呀大家一个个小脸扑通红通通啊,那感觉,就像南方开了暖气。大家可以想象一下,在寒冷的冬天,你睡在开了暖气的房间
触碰心灵的话短而精辟
土方十四郎
触碰心灵的话短而精辟1、您可以随时开始做自己想做的事情,希望您不要用年龄和其他事情约束自己。除非您感到尴尬,否则年龄绝不是极限。2、小时候,我从来不明白为什么我的父母会这么早起床。长大后,我意识到唤醒闹钟的不是闹钟,而是生活和责任。生活中没有美好的时光,只有一个人会为您担负重担。3、无论生活变成什么样,都不要失去一颗善良的心,并且您必须相信世界不会辜负每一颗善良的心。4、生命很短暂,没有必要太在乎
布格日记——迟来的余罪
蟋蟀王
2018-10-19晴心悬了好久你惦记着的东西,可以实现,可你知道,你现在难以驾驭。是的,一方面,你希望自己了无人欲,另一方面,你必须承认,你驾驭不了对快感的追求。这是人性,这是事实,不过我还是可以许诺你,如果你想,你可以玩。两年前《余罪》看完的时候,你写了一个开头,现在,你想把这个结尾写完。你说,你一定会写完的。刚刚你领了一个G的流量,领的时候,你满脑子想的都是游戏,尽情的游戏。还有媳妇儿,你担
当大官的大表哥
春暖花开cws
所有作品,本人原创,未经允许,不得转载或抄袭,违者必究!图片发自App我有一位大表哥,在上海做大官。这个大表哥,是大舅父的长子。上世纪七十年代,大表哥参了军,在信阳某部队。在自卫反击战中,大表哥参加侦察兵,插入到越军的腹地。有一次,一颗子弹从他的耳边呼啸而过,险而又险。大表哥立了功,加上他人也聪明,所以升职很快。从士兵做起到连级,从连级到营级,从营级到团级,从团级到师级,每一步都稳扎稳打,升职很快
2020-02-08
大柳塔瑞车行沈娟1365477
大家好,我叫刘立博。今天下午我和妈妈一起读了米小圈上学记。他写到了他上学的。很多事情有,开心的事情。和烦恼的事情,嗯。他还讲了他是一个调皮捣蛋的孩子,嗯。特别的搞笑。我和妈妈在读书的时间里一起找到到了好几个好词语。明天我会继续努力。
达梦CASE_SENSITIVE参数解析
挠背小能手
达梦数据库运维 数据库
1.参数含义标识符大小写敏感,默认值为Y。当大小写敏感时,小写的标识符应用双引号括起,否则被转换为大写;当大小写不敏感时,系统不自动转换标识符的大小写,在标识符比较时也不区分大小写。CASE_SENSITIVE大小敏感(Y),可选值:Y/N,1/0。该参数属于初始化参数,在创建实例时候定下来的,在参数配置文件dm.ini里没有记录。大小写敏感通常涉及到2种对象:对象名数据2.环境描述3.创建实例3
达梦DIsql使用方法
挠背小能手
达梦数据库运维 数据库
1.DIsql工具说明DIsql是DM数据库的一个命令行客户端工具,用来与DM数据库服务器进行交互。DIsql是DM数据库自带的工具,只要安装了DM数据库,就可以在应用菜单和安装目录中找到。DIsql识别用户输入,将用户输入的SQL语句打包发送给DM数据库服务器执行,并接收服务器的执行结果,并按用户的要求将执行结果展示给用户。为了更好地与用户交互和展示执行结果,用户也可以在DIsql中执行DIsq
2023-01-13
可馨呀
《聊斋志异》是古代灵异、志怪小说的集大成者,有空前绝后之美誉。《聊斋志异》看来偏偏讲的鬼、狐、仙、怪,字里行间无不饱含着作者对人生的丰富体验。其实,《聊斋志异》表面上在讲鬼、狐一类的故事,而侧面反映了当时社会的腐败。我从这本书上感受到了,蒲松龄当时所在的那个时代,贪污成风,赃官,好清官没有几个。想到那里,还有谁没有理由再去好好学习,去把社会不规则的事情改正过来?我想,每个读过《聊斋志异》的人,都能
一点点读后感
寓鸟
世界各个民族在历史发展的进程中,都以各自不同的方式创造出了璀璨的文明:光辉灿烂的古巴比伦、博大精深的古中国、色彩斑斓的古印度、玄妙神秘的古埃及、奇特诡秘的玛雅……它们犹如浩瀚夜空中的繁星,照亮了人类历史的天空。学习了世界文明史这一课程,引起了我对玛雅文明的好奇,所以在这里将我对玛雅文明的浅显认知和了解与大家分享。作为世界古文明一极的玛雅。玛雅文明是中美洲印第安先民在与亚、非、欧古代文明相互隔绝的条
【学霸好妈妈初级班】刘彩清第8期学习分享第52天第52篇共77篇
6e1ff09d1fb9
拥抱代替吼叫今天二宝稚声稚气地跟我说,“妈妈和爸爸生气时,就怕爸爸妈妈,妈妈和爸爸不生气时就爱爸爸妈妈。”我的怒气与吼叫让孩子心生恐惧,特别是在大宝的成长经历里,上小学以后,天天训倒是不至于,但三五天训一次那是肯定有的。最近几天我一直尝试着拥抱孩子,当孩子的表现其实我是不太满意的(内心的真实想法),但他却兴高采烈来我这里求表扬,此时我尽量不张嘴或少说话,因为言多必失,一不小心就把自己的内心表露了。
AWS Nitro架构简介
河马虚拟化
计算机架构 虚拟化 aws 虚拟机 架构
AWS(AmazonWebServices)Nitro架构为Amazon的云服务提供了底层的支持。Nitro架构的总体设计思想是:轻量化的hypervisor配合定制化的硬件,让用户无法区分出运行在虚拟机内和运行在裸金属上操作系统的性能差异。为了实现定制化的硬件(ASIC),Amazon和以色列的一家芯片公司——Annapurna实验室合作,并在后面将其收购,其芯片的logo就是Annapurna
今天天气有点热,我来到附近的公园树林里,感觉挺凉快的。
卧龙05学长国涛
今天吃晚饭到外面走走,感觉外面气温有点高,我就到附近的公园里面,在一片小树林里坐在板凳上,吹着小风,感觉很凉快。虽然现在还有太阳照射,但是在树林里有树叶遮阴还是比较好的,而且还挂着风非常的凉快。这里的风景还是不错的,由于现在还是白天,在公园里的人并不是很多,晚上的时候人就多了,附近的居民都会到这里散步,有的人还是跳广场舞。一个人独自躺在座椅上,静静地欣赏着周围的景色,真是享受啊!
卓越笔触:打造高质量文章的艺术与科学
京东云开发者
大数据 人工智能 运维
引言在信息爆炸的时代,写作不仅是一种表达,更是一种影响力的体现。无论是为了提升个人品牌,还是为了增强团队的技术氛围,或是推动集团的技术影响力,一篇高质量的文章都能起到关键作用。在这次分享中,我将探讨为什么我们需要写好文章,并提供实用的技巧,帮助大家提升文章的质量。希望这次分享能激发大家的写作热情,共同推动技术交流与知识传播的进程。一:我们为什么要写一篇好文章?1、对于集团2024年巴黎奥运会已结束
探索未来Web开发的精简之道:ASP.NET Core 8.0 Minimal API 示例项目
尚舰舸Elsie
探索未来Web开发的精简之道:ASP.NETCore8.0MinimalAPI示例项目随着微服务和云原生架构的兴起,轻量级API成为了开发社区的新宠。ASP.NETCore8.0MinimalAPIExample正是这样一个项目,它集成了最新技术栈,简化了API开发过程,让开发者能够以最少的代码实现强大的功能。本文将带你深入了解这一开源杰作,揭示其技术魅力,并探索其应用场景。项目介绍ASP.NET
购买莆田鞋有哪些套路和陷阱?怎样避免踩坑
芒果不芒
购买莆田鞋有哪些套路和陷阱?怎样避免踩坑小白在购买莆田鞋时有很多不懂的问题,而且莆田鞋商家卖的货又良莠不齐,为了避免踩坑今天我就把经验分享给大家,记住最重要的一点就是找到一个比较实在的良心商家购买,因为真正做生意的诚信商家是不会为了一点蝇头小利去坑人的,假如找到一个无良商家,它变着法的想着坑你,你怎样都会被骗的,俗话说得好:不怕贼偷就怕贼惦记!今天我顺便给大家推荐三家专门做高品质的莆田鞋商家也:k
目送
木木黄
我慢慢地,慢慢地了解到,所谓父女母子一场,只不过意味着,你和他的缘分就是今生今世不断的在目送他的背影渐行渐远。而且,他用背影默默告诉你:不必追。—龙应台《目送》读着,不免伤感起来,尤其是在如此宁静,安详的夜晚。生命中那些存在,是如此清晰地闪现在眼前,伤怀抑或温暖。第一次送两岁两个月的曹依儿去幼儿园,她哭得撕心裂肺,我的心也跟着撕扯,妞爹拉我走出教室,背后她的哭声让我深深自责,一出教室,泪如泉涌。想
React Native动画的锚点anchorPoint
沉默的依恋
React Native
在RN动画开发的过程中,有需求让图片绕中心点以外的其它点旋转,本以为是一个简单的问题,猜想Facebook应该有提供类似的API.然而在官网找了一圈没有anchorPoint这个API,后来想了想,RN与H5非常像,应该有transformOrigin这个属性,然而,还是没有,在github的issues中有人提问过什么时候更新这个属性,但是官网仍旧没有计划;为了达到这种效果,其实有一种间接的方法
莆田鞋分为几个档次-概述关于莆田鞋档次的知识点
优鞋之家
莆田鞋分为几个档次-概述关于莆田鞋档次的知识点莆田鞋的能耐不容小觑,它与我们的生活息息相关。正品只会打乱普通人的生活而沾沾自喜。莆田鞋拨乱反正,让普通人走进波澜不惊的平静生活,感受人间的烟火气息。莆田厂家考虑到大家薪资的高低,各有所需,因此还推出了莆田鞋档次。这些年来莆田鞋的档次有所变化,但是改动的比较小,接下来对比一下2020-2023年的莆田鞋等级,顺便看看莆田鞋分为哪几个档次?详情咨询VX→
凡事预则立
炫舞阳光
下午第二节是音乐课。我中午十二点半,来到学校后,就提前在音乐教室,开始了准备工作。先是把歌词和歌谱,工整地板书在黑板上。然后,让学生抄写。李姝菲的脚不舒服,挪动不方便,我连她的凳子一起抱起来,把她抱进了音乐教室。姝霏一边挣扎,一边说:“老师,放我下来。哎呀,我的鞋子还没有穿好呢。”其他学生也乐呵呵地跟了进来。做好前期准备,在学生抄写的过程中,我在钢琴上一遍遍地弹奏。既然是新歌,就得先让同学们的耳朵
4个步骤,解锁“非暴力沟通”12字秘诀(转)
谭琳_freeisok
原文地址:http://sa.sogou.com/sgsearch/sgs_tc_news.php?req=HvihEyHzKTRpqhoFoRYZrxkyz8qRuXiOGTd2-liL6rMw32GQqbt6pIHt_qlL7scd&user_type=1作为一个遵纪守法的好人,也许我们从来没有把谈话和“暴力”扯上关系。不过,如果稍微留意一下我们生活中的谈话方式,一定会发现,有些话确实伤人。不
小说‖向上的一颗心「23」
八道九味
第三章,第七节:被宠爱赵玉海盛好汤摘了围裙准备要去医院,正好换换张老太太吃饭,他拎着保温盒往外走时,赵老太太挥了挥手说“玉海,你等等,你别去了,我去我去……”赵玉海“妈,我去吧!您在家里休息休息吧!这几天你们二老也跟着受累!”杨桃“我去吧!阿姨你休息吧,我去医院”赵玉海看着杨桃那个天真的模样真是无语了,他说“杨桃,你能找着医院吗?还说你去,让你去,再把你丢了,行了!你们俩在家吧!我自己去”赵老太太
我这样的人
清梦予你
觉得在开始我的文字乱舞之前,还是应该先写写自己,以防多年以后,会忘记自己曾经历过什么才过着这样混沌的人生。年少时曾觉得自己与别人不一样,拥有不一样的理想,也会有很特别的人生,多年以后,当自己回忆起走过的时光,可以很坦然地说出,人生无憾。而现实很快便戳醒了我的梦,快得猝不及防。大学毕业的我,业已工作五年,五年在同一个公司,重复着同样的工作,生活在一个1.5线城市,有属于自己的房子,月薪也算过万吧,有
惊蛰
风和驼铃
我有一个秘密,告诉你你也不信,不然我还是要告诉你,因为~我任性~我是四季更迭里的一个喷嚏,稳稳当当的从惊蛰打到大寒。凡间的人都说喷嚏是一想二骂三念叨,嗯,倒也不假,毕竟我确实诞生于一个女孩悠长悠长又寂寥的思念。我刚生下来的时候,刚立春,恰是东风解冻,蛰虫初振,鱼徙负冰的时节,当然了那时我还小,眼睛都没睁开,只能乖乖躺在女孩掌心里,默默的听着这个世界的蠢蠢欲动。不过,我的成长速度很快,待到雨水,春信
Java读取csv文件里面的内容
小小代码研究
java 开发语言
目录一,Java简介二、CSV文件简介2.1.CSV文件介绍逗号分隔值(Comma-SeparatedValues,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符
写作界的火云邪神,一篇标题甩出来,打破你的思维定势
晓菲悦读
砍柴书院&写作营丹老师在开营的时候说:“作为五年的新媒体编辑,在接下来的这一个月的时间里,我能为大家提供的帮助是,关于写作的建议,文章的优化,以及思维力的变化。”丹老师的每一节课都有趣、有料,有浅显易懂的理论,有恰如其分的例子。让我们在欢乐轻松的氛围中听的懂,学的会。4月27日上的是标题课——《如何写出不影响调性,又能打开概率高的标题》(上课前,教导主任“小鹿波比”就喊我们:“今晚上有热情的互动,
追记中国近代天文事业的奠基人之一高鲁先生!
天马行文
1877年5月16日,中国天文学家高鲁(1877年5月16日-1947年6月26日)诞生。他是中国近代天文事业的奠基人之一。图:中国近代天文事业的奠基人之—---高鲁自1840年鸦片战争以来,中国逐渐沦为半殖民地半封建社会,内忧外患、战乱动荡,人民生活困苦,科技水平更是处于全面落后的状态,当时的天文学发展也不例外。官方的机构钦天监只有编撰历书这项职能,而在引进先进技术、组织观测研究、发展近代天文学
jdk tomcat 环境变量配置
Array_06
java jdk tomcat
Win7 下如何配置java环境变量
1。准备jdk包,win7系统,tomcat安装包(均上网下载即可)
2。进行对jdk的安装,尽量为默认路径(但要记住啊!!以防以后配置用。。。)
3。分别配置高级环境变量。
电脑-->右击属性-->高级环境变量-->环境变量。
分别配置 :
path
&nbs
Spring调SDK包报java.lang.NoSuchFieldError错误
bijian1013
java spring
在工作中调另一个系统的SDK包,出现如下java.lang.NoSuchFieldError错误。
org.springframework.web.util.NestedServletException: Handler processing failed; nested exception is java.l
LeetCode[位运算] - #136 数组中的单一数
Cwind
java 题解 位运算 LeetCode Algorithm
原题链接:#136 Single Number
要求:
给定一个整型数组,其中除了一个元素之外,每个元素都出现两次。找出这个元素
注意:算法的时间复杂度应为O(n),最好不使用额外的内存空间
难度:中等
分析:
题目限定了线性的时间复杂度,同时不使用额外的空间,即要求只遍历数组一遍得出结果。由于异或运算 n XOR n = 0, n XOR 0 = n,故将数组中的每个元素进
qq登陆界面开发
15700786134
qq
今天我们来开发一个qq登陆界面,首先写一个界面程序,一个界面首先是一个Frame对象,即是一个窗体。然后在这个窗体上放置其他组件。代码如下:
public class First { public void initul(){ jf=ne
Linux的程序包管理器RPM
被触发
linux
在早期我们使用源代码的方式来安装软件时,都需要先把源程序代码编译成可执行的二进制安装程序,然后进行安装。这就意味着每次安装软件都需要经过预处理-->编译-->汇编-->链接-->生成安装文件--> 安装,这个复杂而艰辛的过程。为简化安装步骤,便于广大用户的安装部署程序,程序提供商就在特定的系统上面编译好相关程序的安装文件并进行打包,提供给大家下载,我们只需要根据自己的
socket通信遇到EOFException
肆无忌惮_
EOFException
java.io.EOFException
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2281)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:
基于spring的web项目定时操作
知了ing
java Web
废话不多说,直接上代码,很简单 配置一下项目启动就行
1,web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="h
树形结构的数据库表Schema设计
矮蛋蛋
schema
原文地址:
http://blog.csdn.net/MONKEY_D_MENG/article/details/6647488
程序设计过程中,我们常常用树形结构来表征某些数据的关联关系,如企业上下级部门、栏目结构、商品分类等等,通常而言,这些树状结构需要借助于数据库完成持久化。然而目前的各种基于关系的数据库,都是以二维表的形式记录存储数据信息,
maven将jar包和源码一起打包到本地仓库
alleni123
maven
http://stackoverflow.com/questions/4031987/how-to-upload-sources-to-local-maven-repository
<project>
...
<build>
<plugins>
<plugin>
<groupI
java IO操作 与 File 获取文件或文件夹的大小,可读,等属性!!!
百合不是茶
类 File
File是指文件和目录路径名的抽象表示形式。
1,何为文件:
标准文件(txt doc mp3...)
目录文件(文件夹)
虚拟内存文件
2,File类中有可以创建文件的 createNewFile()方法,在创建新文件的时候需要try{} catch(){}因为可能会抛出异常;也有可以判断文件是否是一个标准文件的方法isFile();这些防抖都
Spring注入有继承关系的类(2)
bijian1013
java spring
被注入类的父类有相应的属性,Spring可以直接注入相应的属性,如下所例:1.AClass类
package com.bijian.spring.test4;
public class AClass {
private String a;
private String b;
public String getA() {
retu
30岁转型期你能否成为成功人士
bijian1013
成长 励志
很多人由于年轻时走了弯路,到了30岁一事无成,这样的例子大有人在。但同样也有一些人,整个职业生涯都发展得很优秀,到了30岁已经成为职场的精英阶层。由于做猎头的原因,我们接触很多30岁左右的经理人,发现他们在职业发展道路上往往有很多致命的问题。在30岁之前,他们的职业生涯表现很优秀,但从30岁到40岁这一段,很多人
【Velocity四】Velocity与Java互操作
bit1129
velocity
Velocity出现的目的用于简化基于MVC的web应用开发,用于替代JSP标签技术,那么Velocity如何访问Java代码.本篇继续以Velocity三http://bit1129.iteye.com/blog/2106142中的例子为基础,
POJO
package com.tom.servlets;
public
【Hive十一】Hive数据倾斜优化
bit1129
hive
什么是Hive数据倾斜问题
操作:join,group by,count distinct
现象:任务进度长时间维持在99%(或100%),查看任务监控页面,发现只有少量(1个或几个)reduce子任务未完成;查看未完成的子任务,可以看到本地读写数据量积累非常大,通常超过10GB可以认定为发生数据倾斜。
原因:key分布不均匀
倾斜度衡量:平均记录数超过50w且
在nginx中集成lua脚本:添加自定义Http头,封IP等
ronin47
nginx lua csrf
Lua是一个可以嵌入到Nginx配置文件中的动态脚本语言,从而可以在Nginx请求处理的任何阶段执行各种Lua代码。刚开始我们只是用Lua 把请求路由到后端服务器,但是它对我们架构的作用超出了我们的预期。下面就讲讲我们所做的工作。 强制搜索引擎只索引mixlr.com
Google把子域名当作完全独立的网站,我们不希望爬虫抓取子域名的页面,降低我们的Page rank。
location /{
java-3.求子数组的最大和
bylijinnan
java
package beautyOfCoding;
public class MaxSubArraySum {
/**
* 3.求子数组的最大和
题目描述:
输入一个整形数组,数组里有正数也有负数。
数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。
求所有子数组的和的最大值。要求时间复杂度为O(n)。
例如输入的数组为1, -2, 3, 10, -4,
Netty源码学习-FileRegion
bylijinnan
java netty
今天看org.jboss.netty.example.http.file.HttpStaticFileServerHandler.java
可以直接往channel里面写入一个FileRegion对象,而不需要相应的encoder:
//pipeline(没有诸如“FileRegionEncoder”的handler):
public ChannelPipeline ge
使用ZeroClipboard解决跨浏览器复制到剪贴板的问题
cngolon
跨浏览器 复制到粘贴板 Zero Clipboard
Zero Clipboard的实现原理
Zero Clipboard 利用透明的Flash让其漂浮在复制按钮之上,这样其实点击的不是按钮而是 Flash ,这样将需要的内容传入Flash,再通过Flash的复制功能把传入的内容复制到剪贴板。
Zero Clipboard的安装方法
首先需要下载 Zero Clipboard的压缩包,解压后把文件夹中两个文件:ZeroClipboard.js
单例模式
cuishikuan
单例模式
第一种(懒汉,线程不安全):
public class Singleton { 2 private static Singleton instance; 3 pri
spring+websocket的使用
dalan_123
一、spring配置文件
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.or
细节问题:ZEROFILL的用法范围。
dcj3sjt126com
mysql
1、zerofill把月份中的一位数字比如1,2,3等加前导0
mysql> CREATE TABLE t1 (year YEAR(4), month INT(2) UNSIGNED ZEROFILL, -> day
Android开发10——Activity的跳转与传值
dcj3sjt126com
Android开发
Activity跳转与传值,主要是通过Intent类,Intent的作用是激活组件和附带数据。
一、Activity跳转
方法一Intent intent = new Intent(A.this, B.class); startActivity(intent)
方法二Intent intent = new Intent();intent.setCla
jdbc 得到表结构、主键
eksliang
jdbc 得到表结构、主键
转自博客:http://blog.csdn.net/ocean1010/article/details/7266042
假设有个con DatabaseMetaData dbmd = con.getMetaData(); rs = dbmd.getColumns(con.getCatalog(), schema, tableName, null); rs.getSt
Android 应用程序开关GPS
gqdy365
android
要在应用程序中操作GPS开关需要权限:
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
但在配置文件中添加此权限之后会报错,无法再eclipse里面正常编译,怎么办?
1、方法一:将项目放到Android源码中编译;
2、方法二:网上有人说cl
Windows上调试MapReduce
zhiquanliu
mapreduce
1.下载hadoop2x-eclipse-plugin https://github.com/winghc/hadoop2x-eclipse-plugin.git 把 hadoop2.6.0-eclipse-plugin.jar 放到eclipse plugin 目录中。 2.下载 hadoop2.6_x64_.zip http://dl.iteye.com/topics/download/d2b
如何看待一些知名博客推广软文的行为?
justjavac
博客
本文来自我在知乎上的一个回答:http://www.zhihu.com/question/23431810/answer/24588621
互联网上的两种典型心态:
当初求种像条狗,如今撸完嫌人丑
当初搜贴像条犬,如今读完嫌人软
你为啥感觉不舒服呢?
难道非得要作者把自己的劳动成果免费给你用,你才舒服?
就如同 Google 关闭了 Gooled Reader,那是
sql优化总结
macroli
sql
为了是自己对sql优化有更好的原则性,在这里做一下总结,个人原则如有不对请多多指教。谢谢!
要知道一个简单的sql语句执行效率,就要有查看方式,一遍更好的进行优化。
一、简单的统计语句执行时间
declare @d datetime ---定义一个datetime的变量set @d=getdate() ---获取查询语句开始前的时间select user_id
Linux Oracle中常遇到的一些问题及命令总结
超声波
oracle linux
1.linux更改主机名
(1)#hostname oracledb 临时修改主机名
(2) vi /etc/sysconfig/network 修改hostname
(3) vi /etc/hosts 修改IP对应的主机名
2.linux重启oracle实例及监听的各种方法
(注意操作的顺序应该是先监听,后数据库实例)
&nbs
hive函数大全及使用示例
superlxw1234
hadoop hive函数
具体说明及示例参 见附件文档。
文档目录:
目录
一、关系运算: 4
1. 等值比较: = 4
2. 不等值比较: <> 4
3. 小于比较: < 4
4. 小于等于比较: <= 4
5. 大于比较: > 5
6. 大于等于比较: >= 5
7. 空值判断: IS NULL 5
Spring 4.2新特性-使用@Order调整配置类加载顺序
wiselyman
spring 4
4.1 @Order
Spring 4.2 利用@Order控制配置类的加载顺序
4.2 演示
两个演示bean
package com.wisely.spring4_2.order;
public class Demo1Service {
}
package com.wisely.spring4_2.order;
public class