java源码超市
建立数据库表。
1、首先是建立数据库表。2、实现主页面。3、实现用户注册。4、实现用户登录。5、主菜单之关于。6、主菜单之商品类别管理。7、主菜单之商品管理。8、退出。
针对GUI界面写的简易计算器,实现加减乘除功能以及计算器标准型和科学型之间的转换,有兴趣可以看看Java混合计算器以及界面切换.这次写的超市管理系统,实现的功能有账户的注册、登录,超市商品类别的添加、修改和删除以及商品的添加、修改和删除的功能。用户注册之后把注册信息导入数据库。用户登录时候查询用户表,方可登录进去。商品类别和商品的增加也如注册信息一样,把信息导入商品类别表和商品表。
B. 怎样用java写一个小型超市的管理系统该怎么入手准备
我自己,以前做过ERP系统,后来做过电商系统,都是使用的java开发的。
对于作者所说,如果使用java做一个小型超市的管理系统完全,完全是可以实现的。
一、系统功能分类
一个完整的超市管理系统,大的方向上分,可以有:收银系统(超市收银使用的)、后台管理系统(商品、人、财务管理系统)。
1、收银系统
银系统就是超市正在卖货和收钱的系统,涉及到商品和财务的流转。
2、后台管理系统
一个超市的后台管理系统,比较复杂,从业务上说,主要涉及到的三大块:商品、人、财务。其实很多的管理系统都是通过这三个手段开始的。其他所有功能模块都是根据这几个主要功能去实现的。
商品相关模块:商品信息录入、商品属性、商品规格、商品品类、订单模块、收货模块、发货模块、盘点模块。
人相关模块:员工信息管理、权限宽弊管理
财务信息:供应商信息、供应商合同、对账模块、发票模块。
这些模块都是后台管理模块拍芹的一些功能模块。当然,财务系统可以使用第三方的财务系统,比如金蝶或者SAP等等。
二、根据不同系统进行技术选型
1、收银系统技术选型
收银系统由于涉及到界面开发,并且是收银机界面,可以使用swing框架和restful去开发界面,数据库可以使用db2或者postgresql。
2、后端管理系统开发
后台前端:可以使用袭巧毕ES或者nodeJS,前后端分离,使用restful来进行访问后端服务系统。
后端服务系统:现在一般使用springMVC或者springboot作为框架,使用hibernate或者myts作为ORM框架,数据库一般采用mysql或者oracle,单元测试部分可以使用Junit进行,使用swagger进行接口测试。这些技术对于一般的数据量和小型系统来说已经够用了。
如果数据量比较大,可以考虑一下技术方案:缓存使用Redis、消息队列使用activeMQ或则rabbitMQ,bbo作为RPC框架,。
C. Java初学者,哪位友友能帮我设计一个简单的类似超市购物车的程序,参考一下~谢谢!
以前学习java又做个实例,挺值得学习的。
1.首先我先列出我们所需要的java类结构。
1)Database.java --------- 模拟存储商品的数据库。
2)McBean.java ------------ 商品实体类,一个普通的javabean,里面有商品的基本属性。
3)OrderItemBean.java --- 订单表。
4)ShoppingCar.java ------ 这个就是最主要的购物车,当然比较简单。
5)TestShoppingCar.java --- 这个是测试类。
2.下面贴出具体代码并带关键注释。
---Database.java
public class Database {
/*采用Map存储商品数据,为什么呢?我觉得这个问题你自己需要想下。
* Integer 为Map的key值,McBean为Map的value值。
*/
private static Map<Integer, McBean> data = new HashMap<Integer, McBean>();
public Database() {
McBean bean = new McBean();
bean.setId(1);
bean.setName("地瓜");
bean.setPrice(2.0);
bean.setInstuction("新鲜的地瓜");
data.put(1, bean);//把商品放入Map
bean = new McBean();
bean.setId(2);
bean.setName("薯仔");
bean.setPrice(1.2);
bean.setInstuction("又好又大的薯仔");
data.put(2, bean);//把商品放入Map
bean = new McBean();
bean.setId(3);
bean.setName("丝瓜");
bean.setPrice(1.5);
bean.setInstuction("本地丝瓜");
data.put(3, bean);//把商品放入Map
}
public void setMcBean(McBean mcBean){
data.put(mcBean.getId(),mcBean);
}
public McBean getMcBean(int nid) {
return data.get(nid);
}
}
---McBean.java
public class McBean {
private int id;//商品编号
private String name;//商品名
private double price;//商品价格
private String instuction;//商品说明
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public String getInstuction() {
return instuction;
}
public void setInstuction(String instuction) {
this.instuction = instuction;
}
}
---ShoppingCar.java
public class ShoppingCar {
private double totalPrice; // 购物车所有商品总价格
private int totalCount; // 购物车所有商品数量
private Map<Integer, OrderItemBean> itemMap; // 商品编号与订单项的键值对
public ShoppingCar() {
itemMap = new HashMap<Integer, OrderItemBean>();
}
public void buy(int nid) {
OrderItemBean order = itemMap.get(nid);
McBean mb;
if (order == null) {
mb = new Database().getMcBean(nid);
order = new OrderItemBean(mb, 1);
itemMap.put(nid, order);
update(nid, 1);
} else {
order.setCount(order.getCount() + 1);
update(nid, 1);
}
}
public void delete(int nid) {
OrderItemBean delorder = itemMap.remove(nid);
totalCount = totalCount - delorder.getCount();
totalPrice = totalPrice - delorder.getThing().getPrice() * delorder.getCount();
}
public void update(int nid, int count) {
OrderItemBean updorder = itemMap.get(nid);
totalCount = totalCount + count;
totalPrice = totalPrice + updorder.getThing().getPrice() * count;
}
public void clear() {
itemMap.clear();
totalCount = 0;
totalPrice = 0.0;
}
public void show() {
DecimalFormat df = new DecimalFormat("¤#.##");
System.out.println("商品编号\t商品名称\t单价\t购买数量\t总价");
Set set = itemMap.keySet();
Iterator it = set.iterator();
while (it.hasNext()) {
OrderItemBean order = itemMap.get(it.next());
System.out.println(order.getThing().getId() + "\t"
+ order.getThing().getName() + "\t"
+ df.format(order.getThing().getPrice()) + "\t" + order.getCount()
+ "\t" + df.format(order.getCount() * order.getThing().getPrice()));
}
System.out.println("合计: 总数量: " + df.format(totalCount) + " 总价格: " + df.format(totalPrice));
System.out.println("**********************************************");
}
}
---OrderItemBean.java
public class OrderItemBean {
private McBean thing;//商品的实体
private int count;//商品的数量
public OrderItemBean(McBean thing, int count) {
super();
this.thing = thing;
this.count = count;
}
public McBean getThing() {
return thing;
}
public void setThing(McBean thing) {
this.thing = thing;
}
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
}
---TestShoppingCar.java
package com.shop;
public class TestShoppingCar {
public static void main(String[] args) {
ShoppingCar s = new ShoppingCar();
s.buy(1);//购买商品编号1的商品
s.buy(1);
s.buy(2);
s.buy(3);
s.buy(1);
s.show();//显示购物车的信息
s.delete(1);//删除商品编号为1的商品
s.show();
s.clear();
s.show();
}
}
3.打印输出结果
商品编号 商品名称 单价 购买数量 总价
1 地瓜 ¥2 3 ¥6
2 薯仔 ¥1.2 1 ¥1.2
3 丝瓜 ¥1.5 1 ¥1.5
合计: 总数量: ¥5 总价格: ¥8.7
**********************************************
商品编号 商品名称 单价 购买数量 总价
2 薯仔 ¥1.2 1 ¥1.2
3 丝瓜 ¥1.5 1 ¥1.5
合计: 总数量: ¥2 总价格: ¥2.7
**********************************************
商品编号 商品名称 单价 购买数量 总价
合计: 总数量: ¥0 总价格: ¥0
**********************************************
4.打字太累了,比较匆忙,但是主要靠你自己领会。哪里不清楚再提出来。
D. java超市计价系统代码
packageentity;
publicclassMarket{
privateintid;//id
privateintnum;//数量
privateStringgoods;//商品
privatedoubleprice;//价格
publicMarket(intid,intnum,Stringgoods,doubleprice){
super();
this.id=id;
this.num=num;
this.goods=goods;
this.price=price;
}
publicintgetId(){
returnid;
}
publicvoidsetId(intid){
this.id=id;
}
publicintgetNum(){
returnnum;
}
publicvoidsetNum(intnum){
this.num=num;
}
publicStringgetGoods(){
returngoods;
}
publicvoidsetGoods(Stringgoods){
this.goods=goods;
} publicdoublegetPrice(){
returnprice;
}
publicvoidsetPrice(doubleprice){
this.price=price;
}
publicdoublecalc(){
doublesum=price*num;
System.out.println("您消费共计:"+sum+"¥");
returnsum;
}
}
packagetest;
importjava.util.HashMap;
importjava.util.Map;
importjava.util.Scanner;
importentity.Market;
publicclassTest{
privatestaticMap<Integer,Market>goods=newHashMap<Integer,Market>();
publicstaticvoidmain(String[]args){
System.out.println("-------超市计价系统-------");
Stringgoods1="可口可乐";
Stringgoods2="爆米花";
Stringgoods3="益达";
printTable("编号","商品","价格");
printTable("1",goods1,"3.0¥");
printTable("2",goods2,"5.0¥");
printTable("3",goods3,"10.0¥");
goods.put(1,newMarket(1,1,goods1,3.0));
goods.put(2,newMarket(2,1,goods2,5.0));
goods.put(3,newMarket(3,1,goods3,10.0));
Scannerinput=newScanner(System.in);
System.out.println("请输入商品的编号:");
intnum=input.nextInt();
System.out.println("请输入商品的数量");
intamount=input.nextInt();
Marketmarket=goods.get(num);
market.setNum(amount);
market.calc();
}
privatestaticvoidprintTable(Stringrow1,Stringrow2,Stringrow3){
System.out.print(row1);
inttimes=12;
if(row2!="商品"){
times=5;
}
for(inti=0;i<times;i++){
System.out.print("");
}
System.out.print(row2);
for(inti=0;i<10;i++){
System.out.print("");
}
System.out.print(row3);
System.out.println(" ");
}
}
//测试结果:
-------超市计价系统-------
编号商品价格
1可口可乐3.0¥
2爆米花5.0¥
3益达10.0¥
请输入商品的编号:
3
请输入商品的数量
5
您消费共计:50.0¥
E. eclipse怎么看源码java
用eclipse进行开发时,不可避免的需要时常查看jdk、struts2、hibernate等等各种源代码,每次都去硬盘找它们的源代码,然后再进一步去详查需要的内容,这不仅要耗费大量精力,更浪费了很多宝贵时间。
eclipse提供了一种非常方便的查阅源代码的方法,方便直观不用说,精确迅速的特点决定了我们必须掌握这一方法。
工具/原料
开发工具:eclipse-jee-juno-SR2-win32-x86_64
struts2 (本经验以查阅struts2中某一jar包的源代码为例,其它的类似,请自行模仿)
方法/步骤
打开eclipse,建立项目:Test,将struts2相关jar包导入到其中。在Package Explorer标签栏下操作。
如下图:
在此,以查阅struts2中,struts2-core-2.3.12.jar下的源代码为例。
在Test项目下,找到 Web App Libraries -- struts2-core-2.3.12.jar,右键单击struts2-core-2.3.12.jar,选择"Properties"
如下图:
在新弹出的对话框中,选择Java Source Attachment -- External location -- External Floder...
如下图:
此时,又有新的对话框弹出。找到步骤1中提到的struts2-core-2.3.12.jar的源代码在硬盘中的位置,然后单击“确定”,回到上对话框,确定信息无误后,点击“OK”
此时,源代码就成功和Eclipse建立连接了。
接着,要在Eclipse中查阅某一类的源代码,方法很多,在此,小编只介绍一种相对快捷的方法。
按住键盘“Ctrl键”,用鼠标碰触到某一个你调用的类,单击左键,源代码就出来了。