查看“商苑面馆:Java命令行版之 View层”的源代码
←
商苑面馆:Java命令行版之 View层
跳转至:
导航
,
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
==MVC简介== MVC的全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,是一种软件设计典范。它是用一种业务逻辑、数据与界面显示分离的方法来组织代码,将众多的业务逻辑聚集到一个部件里面,在需要改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑,达到减少编码的时间。 MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器。 [[文件:java8-1.png]] ===客户端功能=== [[文件:Java2-36.png]] ==View层代码== *V即View视图是指用户看到并与之交互的界面。'''可以是命令行,也可以是html元素组成的网页界面,或者软件的客户端界面。'''。MVC的好处之一在于它能为应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,它只是作为一种输出数据并允许用户操纵的方式。 ===新建类UserShow类=== 新建包,名称为view 在这里存放视图层有关代码 在view包下新建UserShow类,初始代码如下: UserShow类的主要作用是向用户提供展示界面 <nowiki>package view; import java.text.MessageFormat; import java.util.*; public class UserShow { private static Scanner sc = new Scanner(System.in); public UserShow(){ } public static void main(String[] args) { } }</nowiki> 该类共有三个主要功能: *用户登陆 *向用户展示菜单 *提供用户选择 下面我们用3个UserShow的方法分别来实现他们: ===用户登录功能:start()=== <nowiki>/**用户的登陆页面 * * @return ArrayList<String> 用户名和密码 */ public ArrayList<String> start(){ System.out.println("********************"); System.out.println("*****欢迎登录图书管理平台客户端*****"); System.out.println("********************"); System.out.println("账号:"); String uname = sc.nextLine(); System.out.println("密码:"); String pwd = sc.nextLine(); System.out.println("输入完毕!"); ArrayList<String> uinfo = new ArrayList<>(); uinfo.add(uname); uinfo.add(pwd); return uinfo; }</nowiki> ===展示菜单功能:showMenu() === <nowiki>/** * 主菜单展示 */ public void showMenu() { /* * 编写主菜单输出语句 */ System.out.println("**********商品管理系统**********\r\n" + "1.查询所有商品\r\n" + "2.根据商品名称查找商品\r\n" + "3.添加购物车\r\n" + "4.查看购物车\r\n" + "5.取消购买\r\n" + "6.退出系统\r\n" + "*******************************"); }</nowiki> ===获得用户选择:getChoise()=== <nowiki>public int getChoise() { //要求用户选择菜单 System.out.println("请选择(1-6):"); //获取用户对于菜单的选择 String value = sc.nextLine(); //显示用户输入的菜单序号 //未学习异常时不考虑用户的错误输入 int i = Integer.parseInt(value); switch(i ){ case 1: System.out.println("您选择的是:"+"1.查询所有商品\r\n"); break; case 2: System.out.println("您选择的是:"+"2.根据商品编号查找商品\r\n"); break; case 3: System.out.println("您选择的是:"+"3.购买商品\r\n" ); break; case 4: System.out.println("您选择的是:"+"4.取消购买\r\n" ); break; case 5: System.out.println("您选择的是:"+"5.查询购买情况\r\n"); break; case 6: System.out.println("您选择的是:"+"6.退出系统\r\n" ); break; default: System.out.println("请选择您想要的功能~" ); } return i; }</nowiki> ===编写main方法,进行测试=== <nowiki>public static void main(String[] args) { // TODO Auto-generated method stub UserShow us = new UserShow(); us.start(); us.showMenu(); us.getChoise(); sc.close(); }</nowiki> 运行结果: [[文件:java7-34.png]] ==完整代码== <nowiki>package main; import java.text.MessageFormat; import java.util.*; public class UserShow { private static Scanner sc = new Scanner(System.in); public UserShow(){ } /**用户的登陆页面 * * @return ArrayList<String> 用户名和密码 */ public ArrayList<String> start(){ System.out.println("********************"); System.out.println("*****欢迎登录图书管理平台客户端*****"); System.out.println("********************"); System.out.println("账号:"); String uname = sc.nextLine(); System.out.println("密码:"); String pwd = sc.nextLine(); System.out.println("输入完毕!"); ArrayList<String> uinfo = new ArrayList<>(); uinfo.add(uname); uinfo.add(pwd); return uinfo; } /** * 主菜单展示 */ public void showMenu() { /* * 编写主菜单输出语句 */ System.out.println("**********商品管理系统**********\r\n" + "1.查询所有商品\r\n" + "2.根据商品编号查找商品\r\n" + "3.购买商品\r\n" + "4.取消购买\r\n" + "5.查询购买情况\r\n" + "6.退出系统\r\n" + "*******************************"); } public int getChoise() { //要求用户选择菜单 System.out.println("请选择(1-6):"); //获取用户对于菜单的选择 String value = sc.nextLine(); //显示用户输入的菜单序号 System.out.println(MessageFormat.format("您选择的是:{0}", value)); //未学习异常时不考虑用户的错误输入 try { return Integer.parseInt(value); } catch (NumberFormatException e) { // 转换失败,对外返回-1,表示输入无效 return -1; } } public static void main(String[] args) { // TODO Auto-generated method stub UserShow us = new UserShow(); us.start(); us.showMenu(); us.getChoise(); sc.close(); } } </nowiki> 返回 [[Java程序设计]]
返回至
商苑面馆:Java命令行版之 View层
。
导航菜单
个人工具
登录
命名空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
帮助
工具
链入页面
相关更改
特殊页面
页面信息