创建Spring Boot项目 勾选Aspects(Spring AOP)、Freemarker、JPA、Mysql 。
在pom中手动添加热部署jar和对应的插件。
连接池使用druid,添加druid的依赖。
添加fastjson的依赖,用来处理JSON数据。
添加fileupload的依赖,用来上传文件、图片上传。
添加spring-boot-starter-aop的依赖,用来实现拦截器。

WebMVCConfig配置:

WebMVCConfig通过继承WebMvcConfigurerAdapter来配置MVC,添加@Configuration注解,让boot知道它是配置文件。
1.通过重写addViewControllers来设置首页,设置优先级最高,当访问“/”下目录时,自动跳转设置的contrller
2.Spring Boot默认会把静态页全部屏蔽 所以在config中要对静态资源进行处理,重写addResourceHandler方法对静态资源放行。设置resourceChain为true。
3.过滤器 Spring提供的FilterRegistrationBean类,提供setFilter、setName、setOrder等方法。

File.separator 跨平台的分隔符

Crud:描述数据库或持久层的基本操作功能。create,retrieve(查询),update,delete
dao层继承CrudRepository接口
CrudRepository<Bbsuser,Integer> 对Bbsuser表进行操作 遵循JPA规范,主键类型
通过@Query注解实现查询

1 登录:@Query("select c from Bbsuser c where username=:u and password=:p")
2    Bbsuser login(@Param("u") String username,@Param("p") String password)
3 显示头像:@Query("select s from Bbsuser s where userid=:id")
4     Bbsuser getPic(@Param("id" Integer id))
5 显示主帖:@Query("select c from Article c where rootid=:id")
6     Page<Article> queryAll(Pageable pageable,@Param("id") Integer id)

Pageable是接口,PageRequest是接口实现

注意——————————————————————————————
@WebServlet中的urlPatterns中的名字前需加“/”,否则可能会找不到页,404。

做到显示用户头像时,出现NumberFormatException: For input string: "" ,是因为原模板中有两处传id参数,用户头像和帖子头像(在table页中),删除后者即可。

注册新用户时,必须在数据库中设置页数。不然会出现null指针异常。

注册用户时,需在服务器端建立upload文件夹来存放图片,然后才能读取服务器中的文件并转为字节形式存在数据库中。

注册用户时,vmap集合如果是全局的,那么应该设为null,在具体请求中进行实例化,否则在全局中只实例一次,如果在游客注册前,有用户登录过,那么vmap中含有登录的用户,则注册后显示的是上一个登录用户的信息。

在开发Web应用程序时,允许用户利用multipart请求将本地文件上的文件传到服务器。
Spring通过对ServletAPI的HttpServletRequest接口进行扩展,使其能够很好地处理文件上传。
enctype属性的属性值设为multipart/form-data
type属性值设为file

存储过程:
delimiter //
create procedure p_2 (
in in_id int, /* 主帖id 根据它进行从帖查询*/
out out_title varchar(50) /* 主帖标题 */
)
begin
/* 根据参数查主帖(rootid=0)或从帖信息 */
select *from article where rootid=in_id order by id;
/* 根据参数查主帖标题*/
select title into out_title from article where id=in_id;

end //
delimiter ;

show页参数:
id:帖子id
uid:当前登录用户id
duid:发本主帖的用户id
rootid:从帖所属主帖id

仍存在的bug :登录时没有检测用户名和密码正确性,若错误直接转到了游客页面。
已经存在的用户,仍可以继续注册。
点击了有从帖的帖子后,再点击没从帖的帖子,其标题会是有从帖的帖子标题。
登录后不能继续登陆 应先退出。
显示头像时的bug莫名其妙就好了。

转载于:https://www.cnblogs.com/WyaJx/p/7812074.html

bbs论坛中的问题和心得。(更新)相关推荐

  1. 项目实战:ASP.NET:C/S架构 大学BBS论坛项目(推荐★★★)

    项目实战:ASP.NET:C/S架构  大学BBS论坛项目(推荐★★★) 目录 项目实战:ASP.NET:C/S架构  大学BBS论坛项目(推荐★★★) 编辑环境: 项目: 项目简介: 其他: 1.项 ...

  2. 应对计算机领域中后门,网络课程论坛中长尾现象的应对策略——以《计算机应用基础》网络课程为例...

    摘要: 进入21世纪以来,互联网就备受关注.由于我国信息设施资源建设稳步推进,互联网的基础更为坚实,发展更为迅速.据权威数据统计,中国至2009年约拥有130万个BBS论坛,数量为全球第一,然而,作为 ...

  3. 叶新伟 php,基于php+mysql技术bbs论坛设计的开发与实现最终版(样例3)

    <基于php+mysql技术bbs论坛设计的开发与实现.doc>由会员分享,可免费在线阅读全文,更多与<基于php+mysql技术bbs论坛设计的开发与实现(最终版)>相关文档 ...

  4. 《树莓派4B家庭服务器搭建指南》第九期:用树莓派低成本给热心老哥搭个窝,在树莓派建立BBS论坛flarum并映射到公网全攻略...

    前段时间我出过一个 给热心老哥搭个窝,2021年30分钟用Discourse搭建新一代BBS论坛站全攻略 https://v2fy.com/p/2021-06-12-discourse-2021-16 ...

  5. DXBBS V8.0 BBS论坛系统 简体中文正式版 [ 开发语言:ASP.NET 2.0 (C#) ]

    DXBBS V8.0 BBS论坛系统 简体中文正式版 [ 开发语言:ASP.NET 2.0 (C#) ] 程序版本:DXBBS V8.0 ACCESS/MSSQL版 开发语言:ASP.NET 2.0 ...

  6. BBS论坛项目总结(持更),附源码

    BBS论坛项目总结(持更) 总结各个功能实现的简单思路,自己按心情总结的,持续更新中~~ 源码百度云地址:链接:https://pan.baidu.com/s/1ix2MN2-JKwbeGrIg59W ...

  7. BBS论坛项目相关-5:评论模块

    BBS论坛项目相关-5:评论模块 事务管理 事务管理:ACID 常见并发异常: 第一类丢失更新,第二类丢失更新 脏读.不可重复读.幻读 第一类丢失更新:某个事务的回滚,导致另一个事务已更新数据丢失了. ...

  8. BBS论坛项目相关-4:发帖模块

    BBS论坛项目相关-4:发帖模块 过滤敏感词 前缀树 trie,字典树,查找树 查找效率高,消耗内存大,应用:字符串检索,词频统计,字符串排序等 敏感词过滤器 定义前缀树,根据敏感词,初始化前缀树,编 ...

  9. 计算机网络的前世今生和未来,BBS论坛的前世今生 未来又将何去何从?

    "顶"."踩"."灌水"."沙发",这些曾经在BBS论坛十分常用的口头语如今已经少有人发,顶踩倒不如一句"厉害 ...

最新文章

  1. zookeeper: zkServer.sh status没有到主机的路由
  2. python初学者视频-python从入门到精通视频(全60集)
  3. python中文读音ndarray-Python中Numpy ndarray的使用详解
  4. 如何用javascript获取文本框,下拉框,单选框的对应值或者将值赋给它们?雪原虎 发布于:2007-10-22 00:32
  5. 还在魔改Transformer结构吗?微软中山大学开源超强的视觉位置编码,涨点显著
  6. Java集合工具类:Collections
  7. Keil(MDK-ARM-STM32)系列教程(三)工程目标选项配置(Ⅰ)
  8. PNG文件格式具体解释
  9. GitHub 10分钟教程
  10. 淘宝账号如何快速提升到更高等级
  11. Workbook.SaveAs方法
  12. Unity Shader - CheckerBoard(棋盘格) 等 Pattern 的测试
  13. python的tkinter插入图片_Python3 Tkinter基础 Text Photoimage 文本框中插入一张图片
  14. 学习日志:第一篇博客
  15. rouge 摘要评估_ROUGE简介,以及如何使用它评估摘要
  16. Cesium源码解读系列(一):GeoJsonDataSource如何处理geojson格式的数据
  17. Win11关闭Windows Defender实时保护,暂时关闭和永久关闭方法 | Win10怎么永久关闭Windows Defender实时保护
  18. python导入siri_用 Python 开发一个不像 Siri 一样的沙雕 AI ——Niubility
  19. 云展网教程 | 云展网PDF合并工具使用说明
  20. 全连接神经网络单层模型原理

热门文章

  1. 7-12 计算工资 (15 分)
  2. 疫情华西拔牙微信抢号攻略
  3. 硬盘容量越大 计算机整体性能越好,是不是硬盘空间越大,内存越高,电脑性能就越好?...
  4. python用tsne降维_tSNE降维
  5. Linux基础: 挂载镜像文件(Mount ISO)
  6. 喜欢,是一种心情;爱,是一种感情
  7. ZuulServlet和ZuulFilter的简单流程
  8. 手机python教程_python教程下载
  9. 用html制作家用电器网页设计,个人网页,css
  10. i310100f配什么主板好 i3 10100f配什么显卡