荐 从零写一个具有IOC-AOP-MVC功能的框架---学习笔记---12.Hello Framewok框架初步使用介绍(测试)+未来计划展望
程序员文章站
2022-07-06 08:39:02
1. 框架功能的使用1.1 编写controller类1.1.1 需要完成的controller代码如下:package test.demo.controller;import com.*ccc.helloframework.core.annotation.Controller;import com.*ccc.helloframework.injection.annotation.Autowired;import com.*ccc.helloframework.mvc.an...
从零写一个具有IOC-AOP-MVC功能的框架—学习笔记 专栏往期文章链接:
- IOC功能相关章节:
从零写一个具有IOC-AOP-MVC功能的框架—学习笔记—01.项目初始化
从零写一个具有IOC-AOP-MVC功能的框架—学习笔记—02.IOC核心标签创建
从零写一个具有IOC-AOP-MVC功能的框架—学习笔记—03.获取指定包下的类—ClassUtil工具类的编写
从零写一个具有IOC-AOP-MVC功能的框架—学习笔记—04.容器的创建以及容器成员的增删查改
从零写一个具有IOC-AOP-MVC功能的框架—学习笔记—05. 实现容器的依赖注入 - AOP功能相关章节:
从零写一个具有IOC-AOP-MVC功能的框架—学习笔记—06. AOP前置工作准备以及实现逻辑分析
从零写一个具有IOC-AOP-MVC功能的框架—学习笔记—07. AOP功能实现以及讲解
从零写一个具有IOC-AOP-MVC功能的框架—学习笔记—08.框架的AOP功能和IOC功能测试 - MVC功能相关章节:
从零写一个具有IOC-AOP-MVC功能的框架—学习笔记—09. MVC访问流程简介及部分类的编写
从零写一个具有IOC-AOP-MVC功能的框架—学习笔记—10. MVC 结果渲染器的编写
从零写一个具有IOC-AOP-MVC功能的框架—学习笔记—11. MVC功能之http请求处理器的编写—简易框架最后一公里! - 学习笔记总结:
从零写一个具有IOC-AOP-MVC功能的框架—学习笔记—12.Hello Framewok框架初步使用介绍(测试)+未来计划展望
1. 框架功能的使用
1.1 编写controller类
1.1.1 需要完成的controller代码如下:
package test.demo.controller;
import com.*ccc.helloframework.core.annotation.Controller;
import com.*ccc.helloframework.injection.annotation.Autowired;
import com.*ccc.helloframework.mvc.annotation.RequestMapping;
import com.*ccc.helloframework.mvc.annotation.RequestParam;
import com.*ccc.helloframework.mvc.annotation.ResponseBody;
import com.*ccc.helloframework.mvc.type.ModelAndView;
import com.*ccc.helloframework.mvc.type.RequestMethod;
import test.demo.pojo.Book;
import test.demo.service.BookService;
import java.util.List;
/**
* @author *ccc
* @date 2020/7/15 22:16
* 岂曰无衣,与子同袍~
*/
@Controller
@RequestMapping(value = "/book")
public class BookController {
@Autowired
private BookService bookService;
@RequestMapping(value = "/all", method = RequestMethod.GET)
@ResponseBody
public List<Book> getAllBooksInfo() {
return bookService.getAllBooksInfo();
}
@RequestMapping(value = "/add", method = RequestMethod.POST)
public ModelAndView addBook(
@RequestParam(value = "bookName") String bookName,
@RequestParam(value = "author") String author
){
ModelAndView modelAndView = new ModelAndView();
modelAndView.setView("addSuccess.jsp").addViewData("bookName", bookName).addViewData("author", author);
return modelAndView;
}
}
1.2 编写service类
1.2.1 Service需要完成的代码:
package test.demo.service;
import com.*ccc.helloframework.core.annotation.Service;
import test.demo.pojo.Book;
import java.util.ArrayList;
import java.util.List;
/**
* @author *ccc
* @date 2020/7/15 22:18
* 岂曰无衣,与子同袍~
*/
@Service
public class BookService {
public List<Book> getAllBooksInfo() {
List<Book> booksInfo = new ArrayList<>();
booksInfo.add(new Book("book1", "*ccc1"));
booksInfo.add(new Book("book2", "*ccc2"));
return booksInfo;
}
}
1.3 编写pojo类
1.4 在配置文件中指明框架的属性配置
- 我们在框架里面指明要扫描的配置文件是config/helloframework-config.properties,所以我们框架的相关配置都需要在这个配置文件里面写,框架在启动的时候会自动从这个配置文件里面读取相关的属性值
1.5 放入静态资源
- 静态资源必须放在static/目录下,我们在框架源码里面有说明
1.6 编写jsp页面
- 同样jsp页面也必须在templates/目录下,我们也在框架源码中有说明
1.7 框架功能测试
1.7.1 先配置tomcat然后运行
1.7.2 访问静态资源
1.7.3 访问jsp页面
1.7.4 测试controller返回json数据
1.7.5 测试controller的数据转发
2. 未来计划展望
- 这个从零写一个具有IOC-AOP-MVC功能的框架专栏是我的学习笔记,当然代码不是我原创的啦,不过我在整理笔记的过程中,由于是重新根据代码写的讲解,所以在讲解过程中不免掺杂了我个人的理解,并且在原有的代码基础上做了一部分改进。
- 在不远的未来,我会根据我对Spring源码的理解程度,会在这个helloframework框架上再次进行优化,这个优化可能是对目前已有的IOC-AOP-MVC功能再进行增强,也有可能会增加一些与Spring类似的功能
- 最后,计划在这个笔记完成之后,我会对helloframework写一份简单的使用文档, 文档内容可能会放在github上,这个具体看情况吧。
- 加油!
github地址:https://github.com/*ccc/helloframework/
本文地址:https://blog.csdn.net/qq_27148729/article/details/107372675
上一篇: JAVA第四天学习