一个java开源小博客框架blog4j,基于注解、反射实现的小框架
这个小项目功能、实现都不算复杂,没有用到J2EE主流框架,而是通过注解、反射来实现的简单的IOC、DB、LOG、WEB等功能。个人感觉,总体设计来讲一般,对于这个小博客是够用的,过于针对性导致很难扩展下去。而且作者貌似没有对这个项目持续更新下去,感觉挺可惜的。但是,作为小白白来讲,还是具有学习价值的。也想通过分享,把学到的一些东西做个小小的整理。
注1:第一个项目是使用xml配置,第二个是注解
注2:原项目可能作者比较重视xml配置的实现(IOC、REST风格等等),但是注解的实现就有问题,如一个bean对应多个url的时候、依赖注入的时候。对此我对第二项目做了小小的修改,如依赖注入,但是主要是硬编码,这也主要测试一下,没有更多的考虑。有兴趣的朋友请自行实现大刀阔虎的改革....
注3:原项目考虑云平台的部署,具体没测试,具体参考第一个项目。
注4:原项目将blog和框架分开,这里把它们合并在一起,一是因为代码不多,二是因为方便调试。
工程结构截图:
项目运行:
项目一(基于xml):
前台:http://localhost:9090/blog4j/
后台:http://localhost:9090/blog4j/admin(这个界面超挫滴,虽然我不是颜控,但是。。鄙视。。为什么我不修改呢。。更鄙视)
用户名:admin 密码:admin
项目二(基于注解):将端口变成9091、项目名后加个2
项目剪影:
1、前台
2、文章添加页面
3、页面添加
4、文章列表
5、标签列表
实现细节:
1、项目已启动就通过这个监听器获取要扫描的包、或者xml文件,将bean的详细信息:id、scope等信息放到一个Map集合中,接着再将这个Map集合存储到另一个key值为default_context的Map集合中,便于接下来的Handler的获取。但此时的bean还没有被实例化的。
xml文件配置bean(更具体请看doc目录下文件)
注解方式配置bean(更具体请看doc目录下文件)
2、在过滤器的init方法加载了Mapping(映射)信息
xml中的配置
3、这个过滤器实现了这个系统几乎的关键功能
A、根据request获取处理类(根据uri来进行匹配的,还有获取PathVariable,详细请参考:WebApplication#lookpup)
B、知道处理类,那么应该调用什么方法呢?现在的Controller类就只有post、get方法,通过request来确定调用哪个方法
C、知道处理类、方法,接着就要使用invoke了,之后就render相关页面。
由最代码官方编辑于2016-3-23 9:44:56
猜你喜欢
- java开源博客blog系统源码下载
- Java开源博客系统框架B3log Solo源码下载
- SSM+Lucene+logback+Druid开发的Java开源博客系统源码
- ssm+maven整合开发java开源博客系统
- 基于SpringBoot2的java开源个人博客系统
- Jfinal,AmazeUI自主开发开源的java博客系统-LovePanda博客
- java开源博客、社区系统源码下载,由b3log团体主创
- S2SH(spring+struts2+hibernate)整合开发java web开源个人博客系统源码
- spring mvc+apache shiro+spring JdbcTemplate开发的Java开源博客系统源码
- java ssh框架搭建开源博客网站系统源代码下载
- S2SH框架整合实现开源博客系统
- SpringBoot+Mybatis+thymeleaf搭建开源个人博客系统