package test.demo.controller; import com.wuyiccc.helloframework.core.annotation.Controller; import com.wuyiccc.helloframework.injection.annotation.Autowired; import com.wuyiccc.helloframework.mvc.annotation.RequestMapping; import com.wuyiccc.helloframework.mvc.annotation.RequestParam; import com.wuyiccc.helloframework.mvc.annotation.ResponseBody; import com.wuyiccc.helloframework.mvc.type.ModelAndView; import com.wuyiccc.helloframework.mvc.type.RequestMethod; import test.demo.pojo.Book; import test.demo.service.BookService; import java.util.List; /** * @author wuyiccc * @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; } }
package test.demo.service; import com.wuyiccc.helloframework.core.annotation.Service; import test.demo.pojo.Book; import java.util.ArrayList; import java.util.List; /** * @author wuyiccc * @date 2020/7/15 22:18 * 豈曰無衣,與子同袍~ */ @Service public class BookService { public List<Book> getAllBooksInfo() { List<Book> booksInfo = new ArrayList<>(); booksInfo.add(new Book("book1", "wuyiccc1")); booksInfo.add(new Book("book2", "wuyiccc2")); return booksInfo; } }
- 咱們在框架裏面指明要掃描的配置文件是config/helloframework-config.properties,因此咱們框架的相關配置都須要在這個配置文件裏面寫,框架在啓動的時候會自動從這個配置文件裏面讀取相關的屬性值
- 靜態資源必須放在static/目錄下,咱們在框架源碼裏面有說明
- 一樣jsp頁面也必須在templates/目錄下,咱們也在框架源碼中有說明
- 這個從零寫一個具備IOC-AOP-MVC功能的框架專欄是個人學習筆記,固然代碼不是我原創的啦,不過我在整理筆記的過程當中,因爲是從新根據代碼寫的講解,因此在講解過程當中難免摻雜了我我的的理解,而且在原有的代碼基礎上作了一部分改進。
- 在不遠的將來,我會根據我對Spring源碼的理解程度,會在這個helloframework框架上再次進行優化,這個優化多是對目前已有的IOC-AOP-MVC功能再進行加強,也有可能會增長一些與Spring相似的功能
- 最後,計劃在這個筆記完成以後,我會對helloframework寫一份簡單的使用文檔, 文檔內容可能會放在github上,這個具體看狀況把。
- 加油!
github地址:https://github.com/wuyiccc/he...java