SpringBoot
文章平均质量分 95
AsONgaS
这个作者很懒,什么都没留下…
展开
-
超详细!利用SpringBoot+SpringCloud做一个问答项目(十六)
一、发表答案--持久层运行代码生成器项目,输入表名answer,并将生成的各文件复制到对应的项目中,并修改代码中的错误,由于接下来还会开发“评论”相关功能,再次运行代码生成器项目,输入表名comment,重复制刚才的步骤,将各代码文件复制到正确的位置。发表答案时持久层需要执行操作是“插入答案数据”,该功能在Mybatis Plus框架中已经实现了,无须开发!在执行发表答案之前,还应该检查对应的“问题”是否存在,如果“问题”不存在,是不允许发表的!这项检查可以通过此前已经完成的Questio...翻译 2021-01-06 15:55:18 · 396 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(十五)
目录一、服务器端向客户端响应“问题”的标签列表数据【续】二、显示“我的问答”分页链接三、显示问题详情--显示页面四、显示问题详情--持久层五、显示问题详情--业务层六、显示问题详情--控制器层七、显示问题详情--前端页面一、服务器端向客户端响应“问题”的标签列表数据【续】当已经把各标签数据存入到Redis中,则在需要获取标签数据时,直接从Redis中获取即可!目前,服务器端响应到客户端的数据中交不包含“标签列表”,只有各“问题”对应的“标签的id的列表”:所以翻译 2021-01-06 15:54:53 · 284 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(十四)
一、服务器端向客户端响应“问题”的标签列表数据目前,每个“问题”数据都包含tagIds数据,值例如"1, 2"、"8, 10, 15",在客户端显示数据时,需要显示出对应的标签名称,例如需要得到"Java基础"、"JavaOOP"等字样,则服务器端向客户端响应“问题”数据时,应该包含该“问题”的标签数据!由于标签数据的数量较小,并且这些数据被修改的频率非常低,查询频率偏高,可以将所有的标签数据都存放在Redis中,便于提高查询效率!要使用Redis查询标签数据,首先,需要将每一个标签都存入到Re翻译 2021-01-06 15:53:58 · 267 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(十三)
目录一、热点问题列表---持久层二、热点问题列表---业务层三、热点问题列表---控制器层四、热点问题列表---前端页面1.在主页通过模拟数据显示“热点问题列表”2.使用真实数据显示“热点问题列表”3. 在其它页面复用“热点问题列表”五、显示“我的问答”列表--持久层六、关于PageHelper框架七、显示“我的问答”列表--业务层八、显示“我的问答”列表--控制器层附:关于GET与POST一、热点问题列表---持久层查询热点问题列表时,需要执行的SQ翻译 2021-01-06 15:53:22 · 625 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(十二)
一、文件上传1.使用Ajax实现文件上传首先,需要在页面中引入jQuery框架,先准备一个jQuery的.js文件,放到静态资源目录下,然后,在HTML文件中引用:为了避免点击按钮时提交同步请求,先将按钮的类型改为button,然后绑定单击事件:此时,启动项目,点击按钮时,即可弹出警告!测试无误后,在以上函数中实现异步提交:2.处理多文件上传在处理多文件上传时,首先,必须明确这多个文件的数量、定位是否明确!假设需要实现的功能是“上传身份证照片的正反面照片”,.翻译 2021-01-06 15:48:27 · 183 阅读 · 0 评论 -
关于SringBoot中上传图片
目录一、关于summernote富文本编辑器二、基于SpringMVC的文件上传1.创建项目2.文件上传测试3.设置上传文件大小的限制4.关于上传文件的文件名5.关于MultipartFile的API6.关于保存上传文件的文件夹一、关于summernote富文本编辑器在HTML的原生标签中,适用于输入文本的只有<input type="text" />和<textarea>这2种控件,这些控件都只能输入普通的文本,不支持复杂的排版,更加不可以显原创 2020-09-20 19:29:15 · 279 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(十一)
一、发布问题---控制器层当前用户登录是在straw-gateway的服务器上处理的,当登录成功后,表示该用户的信息的Session数据将保存在straw-gateway的服务器的内存,而其它服务器(例如straw-api-question)需要读取Session中的数据以识别用户的身份,及读取相关信息,但是,其它服务器不可能访问straw-gateway服务器的内存!为了实现共享Session,可以在登录成功时,将用户的Session数据保存到Redis服务器中,而不再是保存在内存中,当其它服务器需要翻译 2021-01-06 15:47:03 · 366 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(十)
一、标签列表---前段页面【续】目前,启动所有项目,通过 http://localhost/api-question/v1/tags 可以获取标签列表数据,通过 http://localhost 可以打开主页,且,在主页的偏顶部位置会显示模拟数据的“标签列表”,接下来,应该通过Vue向服务器端发送请求,获取真实的标签列表数据,然后将数据绑定到Vue属性中,使得网页中显示这些数据 :let tagsApp = new Vue({ el: '#tagsApp', data: {翻译 2021-01-06 15:41:22 · 356 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(九)
目录一、Redis的基本使用二、SpringBoot中的计划任务三、定期向Redis中更新标签列表四、从Redis中获取标签列表五、通过网关转发访问以上控制器六、标签列表---前端页面一、Redis的基本使用在Windows系统中,当安装了Redis后,会自动启动Redis的服务,每次开机时Redis就会启动,是可以直接使用的,检验的标准可以通过“登录Redis客户端的控制台”来判断:如果已经登录了,但并不确定当前Redis是否正在运行,也可以通过ping命令来.翻译 2021-01-06 15:37:20 · 239 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(八)
目录一、使用网关验证登录并授权【续】7.使用Spring Security实现登录二、完善注册功能三、使用自定义的登录页面四、标签列表---持久层五、标签列表---业务层六、关于Redis附:关于Slf4j附(二):相关软件一、使用网关验证登录并授权【续】7.使用Spring Security实现登录在使用Spring Security实现登录验证时,如果需要使用 UserDetailsService ,必须自定义一个 WebSecurityConfigure翻译 2021-01-06 15:31:20 · 293 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(六)
目录一、处理密码加密二、关于Spring Security框架验证登录三、使用Spring Security框架验证授权访问四、使用UserDetails验证用户信息一、处理密码加密使用Spring Security框架可以实现Bcrypt算法加密,是非常安全的对密码进行加密处理的算法!关于Spring Security框架的依赖参考代码是:<!-- https://mvnrepository.com/artifact/org.springframework.boot翻译 2021-01-06 15:20:13 · 341 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(五)
目录一、关于Eureka注册中心1.相关术语2.Eureka Server集群3.Eureka Server的自我保护机制二、Zuul网关三、处理注册页面附一:关于$.ajax()函数附二:关于密码加密一、关于Eureka注册中心1.相关术语Eureka Server:Eureka服务器项目,也称之为“注册中心”; Eureka Client:Eureka客户端项目,在分布式集群中,只要是会在Eureka Server中注册的,都是Eureka Client,在翻译 2021-01-06 15:08:19 · 241 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(四)
目录基于SpringMVC框架统一处理异常【续】补:不允许注册相同的手机号码一、调整R类以增加代码的可读性二、通过Spring Validation检查数据的有效性三、搭建Eureka注册中心四、Eureka客户端注册附:常用的正则表达式1. 用户名正则2. 密码强度正则3. 整数正则4. 数字正则5. Email正则6. 手机号码正则7. 身份证号正则8. URL正则9. IPv4地址正则10. 十六进制颜色正则12. QQ号码正则翻译 2021-01-06 14:58:51 · 2047 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(三)
一、关于业务【续】关于业务层设计的方法:在普通用户的眼里,每个业务就是1个“功能”,例如注册、登录、修改密码等,但是,在程序中进行数据处理时,可能是由多项数据操作来组成的,例如注册就至少由“根据用户名查询用户数据”和“插入用户数据”组成; 业务方法的返回值:仅以操作成功为前提来设计返回值类型,如果操作失败,抛出异常即可; 业务方法的名称:自定义,推荐根据所设计的业务功能作为参考,例如“注册”时使用reg作为关键字来设计名称,“登录”时使用login作为关键字来设计名称; 业务方法的参数列表:翻译 2021-01-06 14:50:10 · 414 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(二)
一、测试数据库连接在straw-api-user的test下,默认就已经存在StrawApiUserApplicationTests测试类,并且测试类中已经存在contextLoads()测试方法,先直接执行该方法的单元测试:由于以上测试中没有任何代码,所以,执行单元测试是应该能通过测试的,如果没有通过测试,一定是开发环境出了问题,例如jar包文件是损坏的,正常的执行效果例如:当以上测试通过后,自定义方法,执行“连接数据库”的测试:如果在application.propertie翻译 2021-01-06 14:44:51 · 321 阅读 · 0 评论 -
超详细!利用SpringBoot+SpringCloud做一个问答项目(一)
前言本次的项目名为稻草问答,关于项目的最终结构:一、创建主项目新建项目,选择SpringBoot的创建向导。二、创建子模块项目因为当前项目将采取分布式项目的开发模式,会将1个项目拆分为若干个微服务项目,但是,它们终究是会结合在一起运行的,所需要使用的技术体系甚至所需要使用的依赖的版本都应该是相同的,所以,需要使用一个父项目来管理各子模块项目(微服务项目)所使用的依赖及版本!所以,在刚才创建出来的straw项目中,所有与运行相关的文件及文件夹都可以删除,直接..翻译 2021-01-06 14:50:46 · 834 阅读 · 1 评论