推外网络专注营销型网站品牌策划与推广

FOCUS MARKETING WEBSITE BRAND PLANNING AND MARKETING PROMOTION

互联网网络爬虫浅悟(二)

2019-09-28 14:02:22 100000+ 编辑:推外网络 来源:本站原创

#环境要求

-JDK7或更高版本(支持JDK8)。建议使用JDK8,有更好的内存管理。更低版本的JDK7可能需要设置Java内存`-XX:PermSize=128M-XX:MaxPermSize=512M`,否则可能出现这种类型的内存溢出:`java.lang.OutOfMemoryError:PermGenspace`。

-Servlet3.0或更高版本(如Tomcat7或更高版本)。

-MySQL5.5或更高版本(如需使用MySQL5.0,可将mysql驱动版本替换为5.1.24);Oracle10g或更高版本;SQLServer2005或更高版本。

-Maven3.2或更高版本。

-系统后台兼容的浏览器:IE9+、Edge、Firefox、Chrome。

-前台页面兼容的浏览器取决于模板,使用者可以完全控制模板,理论上可以支持任何浏览器。自带的默认模板兼容的浏览器:IE8+、Edge、Firefox、Chrome。

##搭建步骤

1.创建数据库。如使用MySQL,字符集选择为`utf8`或者`utf8mb4`(支持更多特殊字符如表情字符emoji,推荐)。

2.执行数据库脚本。数据库脚本在`database`目录下。

3.在eclipse中导入maven项目。点击eclipse菜单`File`-`Import`,选择`Maven`-`ExistingMavenProjects`。创建好maven项目后,会开始从maven服务器下载第三方jar包(如spring等),需要一定时间,请耐心等待。

4.修改数据库连接。打开`/src/main/resources/application.propertis`文件,根据实际情况修改`spring.datasource.url`、`spring.datasource.username`、`spring.datasource.password`的值。

5.启动程序。**请一定按照这里介绍的方式启动程序,否则可能因上下文路径(ContextPath)导致页面没有样式等问题**。在eclipse中,右键点击项目名,选择`Runas`-`Mavenbuild...`,`Goals`填入`spring-boot:run`,`JRE`选项卡中可以选择JDK版本,`VMarguments`输入框中可以设置java内存参数,如使用JDK7,应在此处填入`-XX:PermSize=128M-XX:MaxPermSize=512M`,然后点击`Run`。

6.访问系统。前台地址:[http://localhost:8080/](http://localhost:8080/),使用手机访问前台或者使用浏览器模拟手机访问前台,系统会调用手机端模板,显示手机端的界面。后台地址:[http://localhost:8080/cmscp/index.do](http://localhost:8080/cmscp/index.do),用户名:admin,密码:空。

##Maven镜像

使用国外的Maven仓库速度很慢、甚至连接不上,很容易出错。可以使用aliyun的Maven镜像仓库。

修改maven的settings.xml文件,mirrors部分使用以下配置:

<mirrors>

<mirror>

<id>central</id>

<mirrorOf>*</mirrorOf>

<name>NexusAliyun</name>

<url>http://maven.aliyun.com/nexus/content/groups/public/</url>

</mirror>

</mirrors>

MongoDB教程是为初学者和专业人士设计的,在本系列教程中提供了SQL的基本和高级概念。

MongoDB是一个NoSQL数据库。它是一个使用C++编写的开源,跨平台,面向文档的数据库。

此MongoDB教程包括MongoDB数据库的所有主题,如插入文档,更新文档,删除文档,查询文档,投影,sort()和limit()方法,创建集合,放置集合等。还提供了MongoDB一些常见问题来帮助你更好地了解MongoDB数据库。

MongoDB不支持多文档原子事务。但是,它可以为单个文档提供了原子操作。因此,如果文档有一百个字段,则更新语句将更新或不更新所有字段的值,因此在原始级别保持原子性。

{

"_id":1,

"product_name":"HuaweiP9",

"category":"mobiles",

"product_total":5,

"product_available":3,

"product_bought_by":[

{

"customer":"Kobe",

"date":"2017-07-08"

},

{

"customer":"Maxsu",

"date":"2018-07-28"

}

]

}

聚合操作处理数据记录并返回计算结果。聚合操作将多个文档中的值组合在一起,并可对分组数据执行各种操作,以返回单个结果。在SQL中的count(*)与groupby组合相当于mongodb中的聚合功能。

要将数据插入到MongoDB集合中,需要使用MongoDB的insert()或save()方法。

要限制MongoDB中返回的记录数,需要使用limit()方法。该方法接受一个数字类型参数,它是要显示的文档数。

分片是在多台机器之间存储数据记录的过程,MongoDB是满足数据增长需求的方法。随着数据的大小增加,单个机器可能不足以存储所有数据,也不能提供可接受的读写吞吐量。分片解决了水平缩放的问题。使用分片,可以添加更多的机器来支持数据增长和读写操作的需求。

MongoDB中的关系表示各个文档在逻辑上的相互关联。关系可以通过嵌入式和引用方法建模。这种关系可以是1:1,1:N,N:1或N:N。

假设有一种情况:要存储用户的地址。一个用户可以拥有多个地址,这就是1:N关系。


本站文章均为推外网络摘自权威资料,书籍,或网络原创文章,如有版权纠纷或者违规问题,请即刻联系我们删除,我们欢迎您分享,引用和转载,我们谢绝直接复制和抄袭!感谢...