把jquery的语法放到java中会怎么样?

谁用了我的英文名 2016-02-04 10:01:46
模拟了一下我的思路,代码如下:

package pers.jassor.test;

import java.util.function.BiConsumer;


public class TestA {

private static Object userService;

public static void main(String[] args) {
$(User.class).attr("{id:187,name:'李萌',userInfo:{......}}").validate("校验引擎名称").done(
(result, element)->{
switch(result){
case "success" : $(element).insertBy(userService);
case "error" : return;
}
}
);
}

public static $Stream $(Object obj) {

return null;
}
}

class User {

}

@FunctionalInterface
interface Validation<T, U> {
public void done(BiConsumer<T, U> b);
}

class $Stream {
public $Stream attr(String str) {
return this;
}
public Validation<String, Object> validate(String str) {
return null;
}
public boolean insertBy(Object obj) {
return false;
}
}

这个模拟的是一个Web程序下Controller的行为
现如今使用Spring框架我们可以很容易的将校验行为与具体执行等工作区分开,使我们工作中专注于实现业务流程
而这样做的代价则是:我们会忘记——原来数据进到后台的时候是应该做校验的!
哎,我以前做的项目没做过校验啊!
=_=|| 反正我现在已经记不住Spring的后台校验是怎么做的了
---------------------------------------------------------------------------------
将jqeury语法引入Java是对java8函数式编程风格的一种扩展尝试
我可以简单地表达我要做什么事情:
1.我需要一个User类型的实体
2.我需要为这个User类型实体去设置属性 -> 这些属性由一个Json格式的字符串定义,可以通过前台进行转换
3.我需要校验这些数据
4.如果校验通过,我需要调用Service的方法去Insert它
----------------------------------------------------------------------------------
当然,实际的工作远比这复杂,很多时候数据并不是一个实体类足以描述的,我们需要无数个实体类协作运转...
不过我觉着这样做反正是挺好玩的!
大家怎么看?
...全文
317 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
鸣鸣Amadues 2016-02-04
  • 打赏
  • 举报
回复
前端 网络 后端 像JSON格式之类的校验是在后端接口处完成的,但像业务数据校验本身是后端业务逻辑的一部分。
  • 打赏
  • 举报
回复
引用 3 楼 chigao520 的回复:
有想法,支持一下。
高兴一下先
金先生1 2016-02-04
  • 打赏
  • 举报
回复
有想法,支持一下。
  • 打赏
  • 举报
回复
引用 1 楼 Raffin 的回复:
前端 网络 后端 像JSON格式之类的校验是在后端接口处完成的,但像业务数据校验本身是后端业务逻辑的一部分。
大多数的业务实体原则上都要经过检验的。 比如username非但不能为空,还必须符合业务规范,而有些内容可能在某一个业务中可以为null在另一个中不可以为null... 由于业务性的校验具有极大的灵活性,因此我觉得Spring的校验机制不够满意

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧