Jsoup无法抓取动态网页数据解决方法

2017-03-15   MarsHu   java   jsoup  

jsoup

正常情况下jsoup不能抓取ajax请求后动态页面,只能获取静态的页面。那如果一定要抓取动态数据展示后的网页内容

怎么处理呢,这个时候,我们可以用最直接的方式,就是直接将网页内容下载到本地,然后再用jsoup抓取本地网页内容即可。

MyBatis将数据库中的任意两个字段映射为map集合的key和value

2017-03-14   MarsHu   java   mybatis  

数据库表数据

CREATE TABLE `food_new` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `code` varchar(255) DEFAULT NULL COMMENT '物料编码',
  `name` varchar(255) NOT NULL COMMENT '物料名称',
  `type` varchar(255) DEFAULT NULL COMMENT '规格型号',
  `unit` varchar(255) DEFAULT NULL COMMENT '单位',
  `price` double(10,2) DEFAULT NULL COMMENT '单价',
  `category` varchar(255) DEFAULT NULL COMMENT '所属类别',
  `sort` varchar(4) DEFAULT NULL COMMENT '排序',
  `create_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  PRIMARY KEY (`id`) USING BTREE,
  UNIQUE KEY `name` (`name`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=819 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC; 假设,我们现在需要将数据库中的`name`和`category`字段分别映射为`key`和`value`。本案例是以非web项目来演示。

FTPClient彻底解决乱码问题

2017-03-13   MarsHu   java   javaoop  

java-FTP工具

实际开发过程中,我们可能会有面向FTP的业务需求,这个时候,我们就会考虑如何与FTP服务器建立连接,如何

读取FTP服务器上文件内容,如何上传文件至FTP服务器等。apache为我们提供了一套解决方案。我们可以使用

commons-net包下提供的相关内容实现业务需求。maven导包如下:

<dependency>
  <groupId>commons-net</groupId>
  <artifactId>commons-net</artifactId>
  <version>3.1</version>
</dependency>

springboot多线程提高服务性能

2017-03-12   MarsHu   JavaWeb   springboot  

springboot异步处理请求服务

在实际开发中,有一些业务需求需要考虑高并发访问的情况,为了提高访问速度,就要求我们提高我们的请求服务性能。相关知识,学习自网上。

我们注意从以下三个方面学习异步处理请求服务:

1.使用Runnable异步处理请求服务

2.使用DeferredResult异步处理请求服务

3.异步处理的相关配置

springboot @JsonView注解的使用

2017-03-11   MarsHu   JavaWeb   注解  

@JsonView的使用场景

在某一些请求返回的JSON中,我们并不希望返回某些字段。而在另一些请求中需要返回某些字段。 例如有如下用户对象:

public class User implements Serializable {
	private Integer id;
	private String username;
	private String password;
}

在查询列表请求中,不返回password字段。在获取用户详情中,返回password字段。这时候我们就可以使用 @JsonView注解了。

spingboot2.x-springSecurity构建多module项目(一)

2017-03-08   MarsHu   JavaWeb   springboot  

创建多module项目说明

在开发过程中,我们有的时候可能需要创建多module项目,为了方便管理每个modulejar包版本。

我们可以使用sring官方提供的io.spring.platformorg.springframework.cloud来为我们的jar包做统一管理。

我们可以在spring官方看到https://spring.io/projects/platform。这里提示说官方已经不再提platform平台的支持。而且也给出了建议。

当然我们仍然可以继续使用,最后一个正式版是Cairo-SR7,对应的springboot版本是2.0.8

从官方维护的springcloud平台可知,Finchley版本对应springboot的版本号为2.0.x。我们的项目正是使用Cairo-SR7Finchley来做统一jar包管理

微信网页授权-springboot

2017-03-07   MarsHu   JavaWeb   weixin  

微信网页授权

在不使用第三方SDK的前提下,按照微信公众号开发文档,一步步获取openid。这里我们主要通过三个步骤来实现。

第一步:设置域名

第二步:获取code

第三步:获取access_token

这里官方文档中主要有2中获取方式,应对不同的业务场景。【关于网页授权的两种scope的区别说明】。这里先不用深究,使用过程中,自会明白。


       4 / 10