课程名称:Java工程师2022版
课程章节:SSM开发社交网站
课程内容:
①开发wangEditor文件上传功能:快速接入,配置简单,几行代码即可生成。集成了所有常见功能,无需二次开发。在 Vue React 也可以快速接入。
②Jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。
课程收获:
使用wangEditor实现文件上传功能步骤:
1. 在pom.xml中添加依赖
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.4</version>
</dependency>
2. applicationContext.xml配置
<!-- 启用Spring MVC文件上传功能 -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="UTF-8"/>
</bean>
3. 编写上传文件Controller
@PostMapping("/upload")
public Map<String,Object> upload(@RequestParam("img") MultipartFile file , HttpServletRequest request) throws IOException {
//得到上传文件目录
String uploadPath = request.getServletContext().getResource("/").getPath() + "/upload/";
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
String fileName = sdf.format(new Date());
//abc.jpg
String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
file.transferTo(new File(uploadPath + fileName + suffix));
Map<String,Object> result = new LinkedHashMap<>();
result.put("errno", 0);
result.put("data", new String[]{"/upload/" + fileName + suffix});
return result;
}
使用Jsoup
1.pom.xml添加依赖
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.12.1</version>
</dependency>
使用方法:
Document doc = Jsoup.parse(book.getDescription()); //对html代码进行解析
Elements elements = doc.select("img"); //选择所有<img>标签
if (elements.size() == 0) {
resp = new ResponseUtils("ImageNotFoundError", "图书描述未包含封面图片");
return resp;
}
String cover = elements.first().attr("src"); //<提取其中的属性>