自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 收藏
  • 关注

原创 Python BS4解析库用法(超级详解)

Beautiful Soup 简称(其中 4 表示版本号)是一个 Python 第三方库,它可以从 HTML 或 XML 文档中快速地提取指定的数据。Beautiful Soup 语法简单,使用方便,并且容易理解,因此可以快速地学习并掌握 BS4 的基本语法。

2024-03-10 20:07:04 1319

原创 js代码将Sat Jul 31 19:53:35 CST 2021转换为日期2021-07-31 19:53:35

js代码将Sat Jul 31 19:53:35 CST 2021转换为日期2021-07-31 19:53:35success:function (e) { var array = e.data.toString().split(","); var s = new Date(array[0]); var t =s.getFullYear() + '-' + (s.getMonth() + 1) + '-' + s.getDate() + ' ' + s.g

2021-08-05 12:04:37 992

原创 Excel导出数据库字段,Excel中带图片

/** * 导出excel * * @param request * @param hmInfo */ @RequestMapping(value = "/exportXls") public void exportXls(HttpServletRequest request, HttpServletResponse response, HmInfo hmInfo) throws IOException{ try { in.

2021-04-26 11:48:14 411

原创 时间工具类

package com.alphabet.xjerpplus.carmaintaince.CalendarUtil;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Calendar;import java.util.Date;import java.util.List;/** * 日期工具类 */public cl

2021-04-19 17:30:01 162

原创 Spring Cloud(7)

续 使用Kafka添加问题到ES安装Kafka步骤1:苍老师网站去下载kafka2.4.1解压到一个指定目录步骤2:配置Zookeeper在kafka安装目录下打开kafka_2.13-2.4.1\config\zookeeper.properties文件修改如下# dataDir=/tmp/zookeeperdataDir=F:/opt/kafka/zookeeper步骤3:配置kafka配置文件指定刚刚设置的zookeeper路径在kafka安装目录下打开kafka_2.13

2020-12-30 19:50:03 267

原创 Spring Cloud(6)

续 ES实现问题功能续 编写Page转PageInfo上次可能中我们编写了Page类型对象转换成PageInfo类型的代码为了兼容页面上的调用实际上在编写的过程中我们添加了PageHelper的依赖search模块pom.xml添加依赖代码如下 <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper&l

2020-12-30 09:21:56 405

原创 Spring Cloud(5)

续 使用Spring整合ES为使用java代码为ES添加数据在上次课内容的基础上添加以下数据在测试类中运行即可代码如下:@Resource ItemRepository itemRepository; @Test void addItem(){// Item item=new Item(1L,"华为Mate40","手机"// ,"华为",4890.0,"/image/11.jpg");// itemReposi

2020-12-28 18:33:51 149

原创 Spring Cloud(4)

显示用户面板信息现在登录成功可以显示标签列表和问题列表以及用户面板信息中的昵称,但是不能显示提问数等其他信息现在来实现显示这些信息提供问题数量的业务的服务提供者应该是faq模块用户信息面板是用户相关的内容调用者是sys模块这就需要Ribbon了步骤1:在faq模块的QuestionController中添加返回用户问题数的方法 //按用户id返回该用户问题数 @GetMapping("/count") public Integer count(Integer userId)

2020-12-28 08:38:39 197

原创 redis(1)

Redis 常用命令:List 列表常用命令: lpush,rpush,lpop,rpop,lrange等Redis的list在底层实现上并不是数组而是链表,Redis list 的应用场景非常多,也是Redis最重要的数据结构之一,比如微博的关注列表,粉丝列表,消息列表等功能都可以用Redis的 list 结构来实现。Redis list 的实现为一个双向链表,即可以支持反向查找和遍历,更方便操作,不过带来了部分额外的内存开销。另外可以通过 lrange 命令,就是从某个元素开始读取多少个元

2020-12-25 19:14:38 155

原创 Spring Cloud(3)

续迁移登录功能上传课讲到步骤5:编写UserDetailServiceImpl步骤6:上面步骤编写的方法实际上是由Spring-Security调用的下面我们就创建security包来编写security的配置代码如下@Configuration@EnableGlobalMethodSecurity(prePostEnabled = true)public class SecurityConfig extends WebSecurityConfigurerAdapter { @Aut

2020-12-25 19:12:52 196

原创 Spring Cloud(2)

从单体项目到微服务上次课网关项目的路由原理​ 单体服务器拆分为微服务主要拆分的目标就是straw-portal拆分后大概由下列项目组成straw-sys:系统基础服务,用户管理等straw-faq:问答系统,负责问答系统核心功能straw-resource:静态资源服务,图片的上传下载straw-search:问题搜索straw-gateway:网关,UI界面和系统安全项目拆分以后真实环境下部署运行时,一定会部署到不同的服务器上整个项目的计算和业务,又多台服务器共同承担,

2020-12-24 20:29:07 203 1

原创 Spring Cloud(1)

续 开发问题采纳的功能编写显示页面的控制器不同身份显示不同的问题详情页老师:detail_teacher.html学生:detail.html我们已经将不需要由学生操作的功能从detail.html页面中删除了我们找到HomeController中跳转到detail.html的方法去修改,代码如下 //显示问题详情页面 @GetMapping("/question/detail.html") public ModelAndView detail( @A

2020-12-24 09:14:11 261 1

原创 project(10)

续 开发评论功能模块续 开发添加评论的功能表单绑定现在页面上的添加评论的按钮会引发所有回答的添加评论的输入框展开这是不合理的需要绑定id分别展开控制detail.html文件中"采纳答案"附近代码修改为:<p class="text-left text-dark"> <a class="btn btn-primary mx-2" href="#">采纳答案</a>

2020-12-23 09:06:26 149

原创 project(09)

续 开发显示回答列表重构updateDuration方法步骤1:在utils.js文件中添加通用的计算持续时间的方法function addDuration(item){ //判断参数状态 if(item==null || item.createtime==null){ return; } //获得问题中的创建时间属性(毫秒数) let createtime=new Date(item.createtime).getTime(); //

2020-12-22 08:40:09 222

原创 (4)JavaSE1:RandomAccessFile(下)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下

2020-12-19 15:29:09 77

原创 reflect

1.新建一个Person实体类package reflect;/** * 使用当前类测试反射机制 */public class Person { private String name = "张三"; private int age = 22; public Person() { } public Person(String name, int age) { this.name = name; this.age = ag

2020-12-19 15:21:25 116 1

原创 project(8)

开发问题详情页面首先来了解一下问题详情页面的整体结构​ 这个页面的整体开发流程如下显示页面异步查询本问题的详细信息显示在当前问题区域异步完成讲师回答问题添加到数据的功能异步查询当前问题的所有回答异步添加指定回答的评论异步查询所有回答的评论异步实现评论的修改和删除显示问题详情页开发步骤步骤1:复制static/question/detail.html文件到templates/question/detail.html步骤2:在HomeController中编写显示

2020-12-18 20:26:52 217 1

原创 project(7)

显示用户信息面板index.html以及很多页面上都有这个用户信息面板开发用户信息面板为了方便显示这个面板中的信息,我们新建一个UserVo的值对象类我们先完成提问数量和收藏数量的查询和编写即可所以新建一个UserVo类代码如下@Data//支持连缀书写@Accessors(chain = true)public class UserVo { private Integer id; private String username; private String n

2020-12-17 19:18:45 211

原创 project(6)

续 学生问题发布功能学生问题发布功能的收尾控制层调用业务逻辑层在上次课完成user(讲师)和问题关系的业务逻辑层代码之后附:QuestionServiceImpl中saveQuestion方法的完整代码@Autowired QuestionTagMapper questionTagMapper; @Autowired UserQuestionMapper userQuestionMapper; @Override public void saveQues

2020-12-16 18:38:19 178

原创 project(6)

学生提问与解答功能​ 学生提问:提问时指定标签和回答问题的老师讲师回复:指定讲师登录系统后可以对学员的提问进行回复评论:学员收到讲师回复后可以对回复进行评论(追问)讲课也可以进行评论(追答或补充)问题状态:学生刚提问时为:未回复讲师回复后为:已回复问题解决后为:已解决问题怎么能称为解决?学员标记为解决状态讲师可以将问题标记为解决问题超过一定时间,自动解决我们先开发的模块是学员的问题发布功能​ 显示create.html将static/que

2020-12-15 20:30:14 233

原创 project(4)

续 显示问题列表上次课中显示问题列表中的用户昵称位置属性编写错了需要修改为<small class="list-inline-item" v-text="question.userNickName">风继续吹</small>显示问题持续时间现在流行的处理问题时间的方式不是单纯的显示这个问题的提问时间而是显示出这个问题出现了多久可能又一下情况刚刚(1分钟之内)XX分钟前(60分钟以内)XX小时前(24小时以内)XX天前由于

2020-12-14 20:24:12 218

原创 project(3)

续 VUE完善VUE+AJAX完成注册功能我们现在注册用户只能在浏览器控制台看到结果怎么能再注册页面上看到注册结果呢?实际上,register.html页面已经准备好了一个显示注册信息的div改写它代码如下 <div id="error" class="alert alert-danger" style="display: none" v-bind:class="{'d-block':hasError}">

2020-12-12 19:10:15 156

原创 project(2)

续Spring-Security自定义登录界面如果想在用户登录时用我们自己的登录页面代替Spring-Security提供的登录页面需要进行如下配置步骤1:登录页面是视图模板引擎生成的,所以需要引入Thymeleaf的依赖子项目的pom.xml文件 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>sprin

2020-12-11 19:24:00 412

原创 Utils

/*通用JS库 *//** * AJAX返回状态 * 与服务器R对象中的定义相同 *//** 200 OK - [GET]:服务器成功返回用户请求的数据 */let OK = 200;/** 201 CREATED - [POST/PUT/PATCH]:用户新建或修改数据成功。 */let CREATED = 201;/** 202 Accepted - [*]:表示一个请求已经进入后台排队(异步任务) */let ACCEPTED = 202;/** 204 NO CON

2020-12-11 14:50:19 117

原创 Exception

public class ServiceException extends RuntimeException{ private int code = R.INTERNAL_SERVER_ERROR; public ServiceException() { } public ServiceException(String message) { super(message); } public ServiceException(String mess

2020-12-11 14:48:30 161

原创 R类

@Data@Accessors(chain = true)public class R<T> implements Serializable { /** 200 OK - [GET]:服务器成功返回用户请求的数据 */ public static final int OK = 200; /** 201 CREATED - [POST/PUT/PATCH]:用户新建或修改数据成功。 */ public static final int CREATED = 2

2020-12-11 11:41:43 652

原创 project(1)

Spring 安全框架什么是Spring安全框架Spring-Security(Spring安全框架)是Spring提供的安全管理组件是Spring框架环境下提供的安全管理和权限管理的组件一个项目一般都会有登录功能,我们之前编写的登录功能非常简陋,不能用于实际开发Spring-Security提供了专业的实现登录的方式,供我们使用使用Spring-Security实现登录基本使用步骤1:导入依赖<!-- Spring Security --><dependency&g

2020-12-10 18:52:24 210 2

原创 SpringBoot(2)

创建SpringBoot聚合项目什么是聚合项目就是一个项目中包含多个子项目的结构开发大型的项目时都会采用聚合项目为什么需要聚合项目大型项目中,类非常多,它们属于不同的模块如果因为一个模块的修改,影响其他模块的代码是非常不好的所以我们可以将不同模块的代码写入不同的子项目,那么不同模块的代码就没有干扰了我们后面要学习的微服务也是必须要子项目实现的怎么创建聚合项目一个商城网站有用户浏览的前台模块还有商城的管理员使用的后台模块那么我们可以创建一个SpringBoot的聚合项目来实现两个子项目

2020-12-09 18:29:46 268

原创 File

基本的方法1:File的每一个实例可以表示硬盘上的一个文件或目录(实际上表示的是一个抽象路径) File不能访问文件数据的我们使用File可以做到:1.访问其表示的文件或目录的属性信息(名字,大小,修改时间,权限等等)2.创建或删除文件目录3.访问一个目录中的子项信息2:删除一个文件3:使用file创建一个文件4:访问一个目录中的子项isFile()判断当前file表示的是否是一个文件isDirectory()判断当前File是否表示的是一个文档5:重载的ListFiles方法,允许我

2020-12-09 12:58:56 188

原创 Integer

package integer;/** * 包装类 * 包装类的出现是为了解决基本类型不能直接参与面向对象开发的问题, * 使得我们可以让基本类型以对象的形式存在 */public class IntegerDemo1 { public static void main(String[] args) { int d = 123; //java推荐我们使用valueof形式创建包装类 Integer i1 = Integer.valueOf

2020-12-09 12:52:30 153

原创 SpringBoot(1)

SpringBoot 概述什么是SpringBootBoot:开机,启动目的是简化各个框架在Spring环境下的配置过程我们可以再次简化我们的配置,使开发业务变得更简单自动的东西越多,我们需要遵循的规则也就越多SpringBoot的核心思想:“约定大于配置”创建Springboot项目方法一:访问SpringBoot官方网站​ http://start.spring.io​ 输入信息后生成下载maven项目,导入到IDE工具中即可创建SpringBoot项目方法二 :直接利用Id

2020-12-08 19:12:19 276

原创 MyBatis(02)

MyBatis复杂映射上次课程中实现的Sql语句都是比较简单的简单sql语句可以直接使用注解编写在接口中的方法上但是如果sql语句比较复杂,注解的方式功能就比较有限了需要使用Xml文件来支持功能更强大的查询使用Xml文件来映射sql语句步骤1:实现Xml映射的sql语句也是在接口中编写一个方法但是这个方法不需要加注解public interface UserMapper { //xml映射sql语句的方法 //不需要在方法上写注解 String getUserna

2020-12-07 19:29:28 218

原创 MyBatis常用的单词

Spring MyBatis 阶段Spring 和 MyBatis框架阶段Spring 春天MyBatis MaBatisbean 豆荚component 组件property 属性Framework 框架JavaBean Java组件factory 工厂application 应用,应用程序context 上下文, 环境ClassPath 类路径alias 别名prototype 原型singleton 单例classpath class路径IOC 控制反转Compon

2020-12-05 14:57:05 440

原创 MyBatis(01)

拦截器和过滤器的区别1.拦截器是SpringMvc框架的组件,而过滤器是java提供的API2.拦截器只能拦截目标为DispatcherServlet的请求过滤器范围广,过滤目标可以是任何资源3.功能上拦截器功能更强,和SpringMvc配合更方便过滤器只和javaEEAPI相关,功能稍弱小结如果实现http协议级别的基本拦截过滤,就使用过滤器如果实现对SpringMvc控制器代码的拦截过滤,就使用拦截器MyBatisMybatis简介什么是Mybatis是一个持久层框架,功能是简

2020-12-04 19:23:06 186

原创 SpringMvcDay(02)

控制器向页面传递数据上次课程中我们学习了怎么在控制器中接收表单提交过来的信息下面的课程我们要学习怎么将控制器中的信息,发送到页面上显示我们以下面的简单业务为例一个登录页面,输入用户名和密码根据登录成功或失败在一个页面上显示信息利用Request对象实现传递数据步骤1:创建登录页面<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>

2020-12-03 20:39:29 154

原创 SpringMvcDay(01)

@Resource注解的使用@Resource注解的功能和@Autowired将我们之前编写的代码中的@Autowired注解替换为@Resource一般情况下都是可以正常运行的也就是说由@Resource标注的属性也会进行自动装配他们的区别是:1.提供者不同:@Autowired是Spring提供的@Resource是java提供的2.注入规则不同:原则上@Autowired注入规则为"byType"(通过类型)​ @Resource注入规则为"byName"(

2020-12-02 20:42:03 152

原创 为什么要实现Serializable接口

什么是Serializable接口?一个对象序列化的接口,一个类只有实现了Serializable接口,它的对象才能被序列化什么是序列化?将对象的状态信息转换为可以存储或传输的形式的过程,在序列化期间,对象将其当前状态写入到临时存储区或持久性存储区,之后,便可以通过从存储区中读取或反序列化对象的状态信息,来重新创建该对象什么情况下需要序列化即(implements Serializable)?当我们需要把对象的状态信息通过网络进行传输,或者需要将对象的状态信息持久化,以便将来使用时都需要把对象进行

2020-12-01 20:31:07 131

原创 SpringDay(02)

依赖注入什么是依赖注入就是在Spring容器内容将各个对象的依赖关系建立好的操作最终的效果是从Spring容器中获得的对象是包含了被依赖对象的(最终的效果是从Spring容器中获得的关羽是手拿青龙偃月刀的!)为什么需要依赖注入如果不使用依赖注入,我们需要从Spring容器中获得相应对象,再通过编写代码建立依赖关系这样就会有代码的冗余,多个依赖关系的确定会造成代码臃肿怎么使用依赖注入@Beanpublic Hero guanYu(){ Hero h=new Hero();

2020-12-01 20:02:12 168

原创 SpringDay(01)

张皓岚微信:Jtzhanghl课程介绍SpringSpringMvc 代替ServletMybatis 代替JDBCSSM整合SpringBoot单体稻草项目微服务(SpringCloud)微服务组件(Redis,ES,Kafka)什么是框架框架就是第三方编写的项目半成品使用上也是下载一些jar包到本地为什么需要框架将一些本来很复杂的操作简化使用框架时,前期先不纠结内部原理和源码Spring概述什么是Spring实现IOC和DI工具IOC:控制翻转普通的主动控

2020-11-30 20:56:46 284

原创 散列表

1.红黑树(了解)(1)什么是红黑树?​ 红黑树是一棵自平衡的排序二叉树。(2)红黑树的特点2. 散列表(1)什么是散列表?​ 散列表(也称之为哈希表)是一种依据关键码值(key)直接快速存取记录的数据结构。其中,将关键码值映射到散列表中的某个位置的函数叫散列函数,存放记录的数组称之为散列表。(2)工作原理(3)loadFactor:负载因子(或者叫加载因子):​ 负载因子决定了散列表的临界值,当记录数超过了临界值,则散列表会扩容(为了避免频繁的散列冲突)。负载因子如果设置得过大,虽

2020-11-28 09:21:50 135

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除