项目简介
搭建一个个人博客(PersonalBlog),这次主要是对之前学习的东西进行一个总结,然后好迎接SpringBoot的学习
学到了哪些东西
- RestController 和Controller的区别:
-
如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,配置的视图解析器InternalResourceViewResolver则不起作用,返回的内容就是Return 里的内容(String/JSON)。
例如:本来应该到success.jsp页面的,则其显示success. -
如果使用@RestController注解Controller,需要返回到指定页面,则需要配置视图解析器InternalResourceViewResolver,可以利用ModelAndView返回试图。
-
如果使用@Controller注解Controller,如果需要返回JSON,XML或自定义mediaType内容到页面,则需要在对应的方法上加上@ResponseBody注解。
- 熟练掌握idea配置web的方法
- 对git版本控制的使用变得熟练
- 改变了之前的ssm分层思路,代码变得更加规范
- 枚举类的使用,以及前后端交接数据的传递方式等
- 写项目过程中遇到过无数个bug,现在见到一些bug就能立马知道是哪里出了问题
- java获取当前系统时间
- SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
String time = df.format(new Date());// new Date()为获取当前系统时间
- sql中的倒序(order by xx desc) 正序(order by xx asc)
- 关于数据分页处理的一种方法(currpage是第几页)
- //每页的数量规定为7
int pageSize = 7;
ModelAndView mv = new ModelAndView();
List<Article> articles = articleMapper.queryAllArticle();
List<Article> article = null;
//所有文章的数量
int count = articleMapper.queryArticleCount();
if ((count % pageSize) == 0) {
NumOfPage = count / pageSize;
} else {
NumOfPage = (count / pageSize) + 1;
}
// 从第几条数据开始
int firstIndex = (currPage - 1) * pageSize;
//处理分页
if (pageSize <= count) {
if ((count / pageSize) >= currPage) {
// 到第几条数据结束
int lastIndex = currPage * pageSize;
System.out.println(count);
//分页的数据
article = articles.subList(firstIndex, lastIndex);
System.out.println(firstIndex + lastIndex + "数据" + article);
} else {
int last = count % pageSize;
article = articles.subList(firstIndex, firstIndex + last);
}
} else {
article = articles.subList(firstIndex, count - 1);
}
- 数据库数据类型上:text类型和varchar类型的区别:text:与char和varchar不同的是,text不可以有默认值,其最大长度是2的16次方-1
- 数据库的主键和外键的关系:
-
No action on deletion or update(在删除或更新时候,没有任何动作.)
-
Cascading deletions(级联删除)
-
Deletions that set null(删除设置为空值)
心得体会
虽然这次的项目还没有全部完工,但已经差不多了,很多东西都是现学现用,真的是在实战中成长进步,在实际开发中会遇到很多的问题,边解决问题边学习,回头看会发现自己真的是成长了很多。对于我来说,要学的东西还有很多很多,未来可期,继续加油!