pageHelper-springboot

springboot Mybatis 数据库分页获取 ,使用pageHelper插件

maven

1
2
3
4
5
6
<!--pagehelper-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>

引用此依赖可能会与其它springboot依赖冲突,此时可手动去除其它依赖

1
2
3
4
compile ('com.github.pagehelper:pagehelper-spring-boot-starter:1.2.5') {
exclude group: 'org.springframework.boot', module: ''
exclude group: 'org.mybatis.spring.boot', module: ''
}

application.properties

1
2
3
4
5
#pagehelper分页插件配置
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql

调用

1
2
PageHelper.startPage(pageNum, pageSize);
mapper.loadAll();

2017春季面经

春季校园招聘准备内容 & 两次面经总结 to学弟

2017.12.25 之前并没有注意秋招,后知后觉的我辞了实习工作,开始准备春招

开始面的一个游戏公司,较简单,然后面的好未来教育,三面的时候说招c++或php的。。后来还投了很多网申,今日头条,去哪儿,有道笔记,都进行了线上笔试,只面了美团和爱奇艺,都过了,去了美团,别的也没有信了,这个,,还是挺没准的,我建议多投简历

招聘就像一场应试,线上笔试就答线上题,面试就是当面答题。线上笔试的话多是数据库、操作系统、算法之类的。如果内推的话是最好的,属于提前批,先到先得,简历不错可能直接进入面试,或者提前批笔试,有的公司可能内推不是太多就直接进入面试吧, 不过网申也是有机会的,我就是网申的

面试内容分 知识面(一二面) & 复杂面(三面) & 轻松面(hr面,也有的公司没有)

tensorflow多特征预测销量demo

最近一直在搞这个,终于算是跑成了,知识点掌握不全面,但坑走过一两个还是有进步。。

这个项目做得是多维度特征对于月销量的一个回归,操作主要包括两方面,训练并生成模型、 导入模型预测结果。

gfs分享

Google file system

问题

问题: 如何高效可靠地存储如此大规模的数据 ?

GFS是Google为其内部应用设计的分布式存储系统

问题的关键点是 高效 、 可靠、规模巨大

传统操作系统的问题在于 1. 硬盘不够大,存不了那么多 2. 数据不安全,传上去,硬盘瞬间损坏了,数据就没了

springboot文档阅读 第三章 配置信息读取

稍微粘贴一下配置文件信息,但还是没有总结出最佳实践,todo待总结,不过想必是spring源码的配置方式吧。

判断环境是否是web环境

SpringApplication将尝试为你创建正确类型的ApplicationContext,默认情况下,根据你开发的是否为web应用决定使用AnnotationConfigApplicationContextAnnotationConfigEmbeddedWebApplicationContext

用于确定是否为web环境的算法相当简单(判断是否存在某些类),你可以使用setWebEnvironment(boolean webEnvironment)覆盖默认行为。

springboot文档阅读 第二章 继承parent与远程调试

继承 starter parent ?

继承的话:

如果你想配置项目,让其继承自spring-boot-starter-parent,只需将parent按如下设置:

1
2
3
4
5
6
<!-- Inherit defaults from Spring Boot -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.1.BUILD-SNAPSHOT</version>
</parent>

:你应该只需在该依赖上指定Spring Boot版本,如果导入其他的starters,放心的省略版本号好了。

按照以上设置,你可以在自己的项目中通过覆盖属性来覆盖个别的依赖。例如,你可以将以下设置添加到pom.xml中来升级Spring Data到另一个发布版本。

1
2
3
<properties>
<spring-data-releasetrain.version>Fowler-SR2</spring-data-releasetrain.version>
</properties>

查看spring-boot-dependencies pom获取支持的属性列表。

spring-boot-starter-parent选择了相当保守的Java兼容策略,如果你遵循我们的建议,使用最新的Java版本,可以添加一个java.version属性:

1
2
3
<properties>
<java.version>1.8</java.version>
</properties>

Spring Boot包含一个[Maven插件](../VIII. Build tool plugins/58. Spring Boot Maven plugin.md),它可以将项目打包成一个可执行jar。如果想使用它,你可以将该插件添加到<plugins>节点处:

1
2
3
4
5
6
7
8
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>

:如果使用Spring Boot starter parent pom,你只需添加该插件而无需配置它,除非你想改变定义在partent中的设置。

springboot文档阅读 第一章

@RestController和@RequestMapping

Example类上使用的第一个注解是@RestController,这被称为构造型(stereotype)注解。它为阅读代码的人提供暗示(这是一个支持REST的控制器),对于Spring,该类扮演了一个特殊角色。在本示例中,我们的类是一个web @Controller,所以当web请求进来时,Spring会考虑是否使用它来处理。

@RequestMapping注解提供路由信息,它告诉Spring任何来自”/“路径的HTTP请求都应该被映射到home方法。@RestController注解告诉Spring以字符串的形式渲染结果,并直接返回给调用者。

@RestController@RequestMapping是Spring MVC中的注解(它们不是Spring Boot的特定部分),具体参考Spring文档的MVC章节

git常用命令

总结下git通常情况下会使用的命令。

重新编辑提交信息:

1
git commit --amend

vim入门

最常用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
- i → Insert 模式,按 ESC 回到 Normal 模式.
- x → 删当前光标所在的一个字符。
- :wq → 存盘 + 退出 (:w 存盘, :q 退出) (陈皓注::w 后可以跟文件名)
- :x, ZZ 或 :wq → 保存并退出 (:x 表示仅在需要时保存,ZZ不需要输入冒号并回车)
- dd → 删除当前行,并把删除的行存到剪贴板里
- 2dd → 删除2行
- p → 粘贴剪贴板

- **/pattern** → 搜索 pattern 的字符串(陈皓注:如果搜索出多个匹配,可按n键到下一个)


- 100idesu [ESC] → 会写下 “desu desu desu desu ..“


- . → 重复上一个命令—— 100 “desu “.
- 3. → 重复 3 次 “desu” (注意:不是 300,你看,VIM多聪明啊).



- hjkl (强例推荐使用其移动光标,但不必需) →你也可以使用光标键 (←↓↑→). 注: j 就像下箭头。
- :help <command> → 显示相关命令的帮助。你也可以就输入 :help 而不跟命令。(陈皓注:退出帮助需要输入:q)



- NG → 到第 N 行 (陈皓注:注意命令中的G是大写的,**另我一般使用 : N 到第N行,如 :137 到第137行**)

- gg → 到第一行。(陈皓注:相当于1G,或 :1)

- G → 到最后一行。

各种插入模式

1
2
3
4
5
6
7

- a → 在光标后插入


- o → 在当前行后插入一个新行
- O → 在当前行前插入一个新行
- cw → 替换从光标所在位置后到一个单词结尾的字符

简单的移动光标

1
2
3
4
5
6
7
8
9
10
11
12
13

- 0 → 数字零,到行头
- $ → 到本行行尾


- ^ → 到本行第一个不是blank字符的位置(所谓blank字符就是空格,tab,换行,回车等)
- g_ → 到本行最后一个不是blank字符的位置。
- **/pattern** → 搜索 pattern 的字符串(陈皓注:如果搜索出多个匹配,可按n键到下一个)


- fa → 到下一个为a的字符处,你也可以fs到下一个为s的字符。
- t, → 到逗号前的第一个字符。逗号可以变成其它字符。
- 3fa → 在当前行查找第三个出现的a。

拷贝/粘贴 (陈皓注:p/P都可以,p是表示在当前位置之后,P表示在当前位置之前)

1
2
3
4
- P → 粘贴


- yy → 拷贝当前行当行于 ddP

Undo/Redo

1
2
3
4
- u → undo


- <C-r> → redo

打开/保存/退出/改变文件(Buffer)

1
2
3
4
5
6
7
8
- :e <path/to/file> → 打开一个文件


- :w → 存盘
- :saveas <path/to/file> → 另存为 <path/to/file>
- :x, ZZ 或 :wq → 保存并退出 (:x 表示仅在需要时保存,ZZ不需要输入冒号并回车)
- :q! → 退出不保存 :qa! 强行退出所有的正在编辑的文件,就算别的文件有更改。
- :bn 和 :bp → 你可以同时打开很多文件,使用这两个命令来切换下一个或上一个文件。(陈皓注:我喜欢使用:n到下一个文件)

mac下安装配置storm

装了一天多,才装好。。主要是jzmq装不好,把它依赖卸载重新安装就好了,记下来,免得以后还得再找。。笑脸

mac上安装storm ,就是安装四个东西,zookeeper, zeromq , jzmq , storm

zookeeper

1
brew install zookeeper

或者自己去下载tar包解压,

修改配置文件,conf/zoo_sample.cfg

1
cp zoo_sample.cfg zoo.cfg             //  默认配置文件
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×