dotnet core vs java_Java Spring Boot VS .NetCore (六) UI thymeleaf vs cshtml

前面已经介绍了操作做数据,接下来就介绍先展示数据 UI,当然UI可以做到前后端分离,这里以前后端为分离的情况作为例子

Spring Boot vs .NetCore

Spring中的视图及资源文件主要还是依赖于resources这个目录

下面有static(静态文件放置)、templates(模版目录)

而.NetCore里面静态文件资源都是放置在 wwwroot这个目录下,而其他的 通过Controller、 Views文件夹下的目录结构决定,里面还多了一个区域的概念

下面来看下Controller处理

Spring中的Controller处理

@Controllerpublic classTestController {

@ResourcepublicUserRepository _userRepository;

@AutowiredprivateUserMapper _userMapper;//用户列表

@RequestMapping("/user/list")public String userList(Model model,@RequestParam(value = "page", defaultValue = "0") Integer page,

@RequestParam(value= "size", defaultValue = "6") Integer size)

{

Sort sort= new Sort(Sort.Direction.DESC, "id");

Pageable pageable= newPageRequest(page, size, sort);

Page modelList=_userRepository.findLYM(pageable);//List modelList = _userRepository.findAll();

model.addAttribute("users", modelList);return "user/list";

}

@RequestMapping(value= "/user/add",method =RequestMethod.GET)publicString userAdd()

{return "user/add";

}//添加用户

@RequestMapping(value = "/user/add",method =RequestMethod.POST)publicString userAdd(@Valid UserModel userParam,ModelMap map)

{

UserModel user=newUserModel();

BeanUtils.copyProperties(userParam,user);

SimpleDateFormat df= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式

user.setRegTime(df.format(newDate()));//UserModel result= _userRepository.save(user);

_userMapper.insert(user);return "user/add";

}

}

通过 注解 @Controller来标明这个类是一个Controller控制器类@RequestMapping 指定相关方法的请求路由地址以及请求方式

return 到对应的视图上就ok了,需要视图路径标明 ModelMap 对象处理页面数据对象

如:

model.addAttribute("users", modelList);

页面上会存在 users数据对象模型,这点类是与.NetCore 中的 ViewData["users"] \ ViewBag.Users 等操作

.NetCore 中的Controller处理

.NetCore 中其实是通过后缀名来完成的,在创建的时候必须以Controller结束,通过控制器与视图之间的关系完成对应的Invoke操作,这里不过多的说明...

public classHomeController : Controller

{

SignInManager_signInManager;public HomeController(SignInManagersignInManager)

{

_signInManager=signInManager;

}

[Route("~/url")]

[HttpPost]publicIActionResult Index()

{

ViewBag.Msg="这是信息";returnView();

}

}

这里的 Views文件夹下需要 Home文件夹,而Home文件夹下 需要有 Index.cshtml 视图文件 这是对应起来的  Action的名称 即为视图名称,这样才能保证正常的访问

关于协议请求方式

Spring Boot通过  @RequestMapping(value = "/user/add", method = RequestMethod.POST)  默认是GET

.NetCore 通过在Action上添加 [HttpPost] 标签来实现 当然 也通过 [Route("url")] 标签来指定请求路由地址, 默认也是GET方式请求

处理页面就需要了解 thymeleaf 模版的使用语法规则了 这里不做介绍了

西门看下做的一个列表功能效果

e2f585f4c7ac8f65d2895fa4d0b6a35b.png

bfa6e9b8747560e1ec419d497888553f.png

实现到这里做一个Java Spring Boot 的开发应该就没有问题了~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值