代码拉取完成,页面将自动刷新
##OneJava是什么? 一个基于Java的一站式WEB开发框架,框架的设计原则是简洁、灵活和降低学习成本。 OneJava除了一些基本的依赖(日志,Cglib等),不需要集成其他框架,而是实现了自己的MVC、AOP、IOC、持久层。
正因为如此OneJava可以提供一种几乎无需配置、极易学习的一站式开发体验。
##OneJava有哪些功能和特色?
##以下是一个简单的实例,业务为: GET一个ID,返回所有文章的列表,请求要使用AdminLogin,count两个前置拦截器 (这两个拦截器是本包下所有控制器都要使用)和postLog后置拦截器 ###控制器:
package work.action.test;
//映射关系自动生成为:URL+/test/helloworld.do
@ActionInfo(after = "count")//后置拦截器链
public class HelloWorld {
@IService
public HelloService hello;//注意!无需get、set方法,但必须是public
public String excute(MContext context) throws Exception{
List list = hello.getPost((String) context.getValue("id"));
context.setReValue("list", list);
//使用默认视图,使用WEB-INF下的test/helloword.jsp
return "test/helloword";
//return "json,list";//使用Json视图
}
}
###创建package-info为work.action.test下的所有控制器添加拦截器
@ActionInfo(before = "AdminLogin,count")
package work.action.test;
###服务层
@ServiceInfo(name = "hello")//标记service的信息
public class HelloService {
@TX//声明式事务(虽然这个事务没啥用)
@IAop(before = "beforeLog,beforeLog2",afterThrow="errorLog")//通知的切入点
public List getPost(String id) throws Exception{
Map map = new HashMap();
map.put("id", id);
List list = DB.query("select * from post where id=#id# ", map);
return list;
}
}
####AOP的通知和拦截器就不写了,形式和服务层一样,用注解@XXXinfo声明下就可以,OneJava所有模块的风格都几乎是一样的 ##OneJava的案例 ####我的博客:http://www.lalalol.com/
##OneJava的架构和设计
##开发进度
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. 开源生态
2. 协作、人、软件
3. 评估模型