“商苑面馆:Java命令行版之 Dao层(MySQL实现)”的版本间的差异

来自CloudWiki
跳转至: 导航搜索
(创建页面,内容为“==Dao层== 文件:Java8-1.png ==前期准备== 在entity包下建立User类: <nowiki>package entity; public class User { //成员变量 public String na…”)
 
实现步骤
第72行: 第72行:
 
接口实现类可以用多种方式实现,ArrayList,LinkedList, MySQL等
 
接口实现类可以用多种方式实现,ArrayList,LinkedList, MySQL等
  
这里我们用ArrayList实现
+
这里我们用MySQL实现
  
====接口实现类UserDaoArray====
+
====接口实现类UserDaoMySQL====
  <nowiki>package dao;
+
  <nowiki>
 
 
import java.util.*;
 
 
 
import entity.*;
 
 
 
public class UserDaoArray implements UserDao{
 
    //private Food[] n;//食物数组
 
    private ArrayList<User> n;//食物数组
 
   
 
    public UserDaoArray( ){   
 
    this.n = new ArrayList<>();
 
    }
 
    public UserDaoArray(ArrayList<User> n ){
 
    this.n = n;
 
   
 
    }
 
    public boolean addUser(User f){//实现了接口的add方法
 
    this.n.add(f);
 
    return true;
 
    }
 
    //按名称搜
 
    public User search(String s){//实现了接口的搜索方法
 
    for(int i=0;i<this.n.size();i++){
 
    if(n.get(i).getname().equals(s)){
 
    return n.get(i);
 
    }
 
    }
 
    return null;
 
    //return new Noodle();
 
    }
 
    public boolean verify(String name, String pwd){
 
    //在数据仓库中搜,有没有这个用户、用户名和密码是否对应
 
    for(int i=0;i<this.n.size();i++){
 
    if(n.get(i).getname().equals(name)
 
      && n.get(i).getPwd().equals(pwd)){
 
    return true;
 
    }
 
    }
 
    return false;
 
   
 
    }
 
    public String toString(){//实现了接口的toString方法
 
    String s="";
 
    for(int i=0;i<n.size();i++){
 
    s += n.get(i).toString()+"\r\n";
 
    }
 
    return s;
 
    }
 
  public static void main(String[] args) {
 
    }
 
 
}
 
 
</nowiki>
 
</nowiki>
 
===编写测试代码===
 
===编写测试代码===
 
在UserDaoArray类的main方法中编写测试代码:
 
在UserDaoArray类的main方法中编写测试代码:
  
  <nowiki>public static void main(String[] args) {
+
  <nowiki></nowiki>
    //本类的测试代码
 
// TODO Auto-generated method stub
 
    UserDao userSet= new UserDaoArray();
 
    User u1 =  new User("王建","000000");
 
    userSet.addUser(u1);
 
    if(userSet.verify("王建", "000000")){
 
    System.out.println("用户王建的密码为000000");
 
    }else{
 
    System.out.println("用户王建的密码不是000000");
 
    }
 
    }</nowiki>
 
  
 
[[文件:java7-35.png]]
 
[[文件:java7-35.png]]

2019年5月8日 (三) 08:04的版本

Dao层

Java8-1.png

前期准备

在entity包下建立User类:

package entity;

public class User {

	//成员变量
	public String name;
	public String password;
		
	//构造方法
	public User(){
		
	}
	public User(String name,String password ){
		
		this.name=name;
		
		this.password=password;	
		
	}
//读方法
	   public String getname(){
		   
		   return this.name;
	   }
	   
	   
	 //写方法
	   public boolean setName(String s){
			this.name = s;
			return true;
		}
	 //获取用户密码
	   public String getPwd(){
		   
		   return this.password;
	   }
	   
	   
	 //写方法
	   public boolean setPwd(String p){
			this.password = p;
			return true;
		}
}

实现步骤

建立接口UserDao

在包dao下建立抽象接口UserDao

package dao;


import entity.User;
public interface UserDao {
	public boolean addUser(User u);//抽象方法1:增加用户,接口的实现类必须实现这个方法
	
	public boolean verify(String name, String pwd);//验证用户名和密码是否一致 

	public User search(String s);//抽象方法2:搜索商品,接口的实现类必须实现这个方法
	  
	public String toString(); //抽象方法3:展示所有商品,接口的实现类必须实现这个方法
	
		
}

建立接口的实现类

接口实现类可以用多种方式实现,ArrayList,LinkedList, MySQL等

这里我们用MySQL实现

接口实现类UserDaoMySQL


编写测试代码

在UserDaoArray类的main方法中编写测试代码:


Java7-35.png