2020.07.31(javase)

Day 10:

分层开发

数据访问层(User实体类):

package com.hyg.model;

/*
** 用户实体类
 */
public class User {
	private int id;
	private String username;
	private String userno;
	private String pwd;
	private String position;
	private int age;

private String deptName;	
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getUsername() {
		return username;
	}
	public void setUsername(String username) {
		this.username = username;
	}
	public String getUserno() {
		return userno;
	}
	public void setUserno(String userno) {
		this.userno = userno;
	}
	public String getPwd() {
		return pwd;
	}
	public void setPwd(String pwd) {
		this.pwd = pwd;
	}
	public String getPosition() {
		return position;
	}
	public void setPosition(String position) {
		this.position = position;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getDeptName() {
		return deptName;
	}
	public void setDeptName(String deptName) {
		this.deptName = deptName;
	 }	
}

(UserDao类):

package com.hyg.dao;

import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.hyg.model.User;

public class UserDao extends BaseDao{
	public User login(String userno, String pwd) {
		String sql="select * from k_user where userno='"+userno+"' and pwd='"+pwd+"'";
		try {
			//1.获得数据库连接
			this.conn=this.getConn();
			//2.获得命令执行对象
			this.ps=conn.prepareStatement(sql);
			//3.执行命令查询
			this.rs=ps.executeQuery();
			//4.处理结果
			if(rs.next()){//如果有下一条数据
			String username=rs.getString("username");//username指的是标的的列名
			String position=rs.getString("position");//职位
			int age=rs.getInt("age");//年龄
			int id=rs.getInt("id");//用户id
				User user=new User();
			user.setId(id);
			user.setUsername(username);
			user.setUserno(userno);
			user.setPwd(pwd);
			user.setPosition(position);
			user.setAge(age);
return user;		
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally{
			this.closeALL();
		}
		return null;
	}
	/**
	 * 查询用户列表
	 * @return 用户集合
	 */
	public List<User> findUserList() {
		String sql="select u.*,d.deptname from k_user u,k_dept d where d.deptno=u.deptno";
		try {
			//1.获得数据库连接
			this.conn=this.getConn();
			//2.获得命令执行对象
			this.ps=conn.prepareStatement(sql);
			//3.执行命令查询
			this.rs=ps.executeQuery();
			//4.处理结果
		List<User> list=new ArrayList<User>();	
		while(rs.next()){//如果有下一条数据
			String username=rs.getString("username");//username指的是标的的列名
			String position=rs.getString("position");//职位
			int age=rs.getInt("age");//年龄
			int id=rs.getInt("id");//用户id
			String userno=rs.getString("userno");
			String pwd=rs.getString("pwd");
			String deptName=rs.getString("deptName");
					
User user=new User();
			user.setId(id);
			user.setUsername(username);
			user.setUserno(userno);
			user.setPwd(pwd);
			user.setPosition(position);
			user.setAge(age);
			user.setDeptName(deptName);
				list.add(user);
		    }
		    return list;
		    } catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally{
			this.closeALL();
		}
		return null;
	}
		/**
	 * 添加用户
	 * @param u 用户对象
	 * @return ture添加成功,false添加失败
	 */
	public Boolean addUser(User u) {
String sql="insert into k_user(userno,pwd)values('"+u.getUserno()+"','"+u.getPwd()+"')";
	try {
			//1.获得数据库连接
			this.conn=this.getConn();
			//2.获得命令执行对象
			this.ps=conn.prepareStatement(sql);
			//3.执行命令更新
			int result=ps.executeUpdate();
            if(result>0){
            	//执行成功
            	return true;
            }
		} catch (Exception e) {
			e.printStackTrace();
		}finally{
			this.closeALL();
		}
		return false;
	}
	
/**
*修改用户
 *@param u
 *@return
 */

 public Boolean updateUser(User u) {
//String sql="update k_user set pwd='"+u.getPwd()+"',position='"+u.getPosition()+"'where id="+u.getId();
		String sql="update k_user set pwd=?,position=? where id=?";
		try {
			//1.获得数据库连接
			this.conn=this.getConn();
			//2.获得命令执行对象
			this.ps=conn.prepareStatement(sql);
			ps.setString(1, u.getPwd());
			ps.setString(2, u.getPosition());
			ps.setInt(3, u.getId());
			//3.执行命令更新
			int result=ps.executeUpdate();
            if(result>0){
            	//执行成功
            	return true;
            }
		} catch (Exception e) {
			e.printStackTrace();
		}finally{
			this.closeALL();
		}
		return false;
	}
	/**
	 * 修改用户
	 * @param u
	 * @return
	 */
		public Boolean deleteUser(int id) {
String sql="delete from k_user where id="+id;
			try {
				//1.获得数据库连接
				this.conn=this.getConn();
				//2.获得命令执行对象
				this.ps=conn.prepareStatement(sql);
				//3.执行命令更新
				int result=ps.executeUpdate();
	            if(result>0){
	            	//执行成功
	            	return true;
	            }
			} catch (Exception e) {
				e.printStackTrace();
			}finally{
				this.closeALL();
			}
			return false;
		}
}

业务逻辑层(UserService类):

package com.hyg.service;

import java.util.List;
import com.hyg.dao.UserDao;
import com.hyg.model.User;
public class UserService {
UserDao userDao =new UserDao();
	/**
      * 用户登录
      * @param userno 账号
      * @param pwd 密码
      * @return true:成功,false:失败
      */
      
public User login(String userno, String pwd) {
return userDao.login(userno,pwd);
	}
	/**
	 * 查询用户列表
	 * @return 用户集合
	 */
	public List<User> findUserList() {
		return userDao.findUserList();
	}
	/**
	 * 添加用户
	 * @param u 用户对象
	 * @return ture添加成功,false添加失败
	 */
	public Boolean addUser(User u) {
		return userDao.addUser(u);
	}
	/**
	 * 修改用户
	 * @param u 用户对象
	 * @return ture添加成功,false添加失败
	 */
	public Boolean updateUser(User u) {
		return userDao.updateUser(u);
	}
	/**
	 * 删除
	 * @param id
	 */
	public Boolean deleteUser(int id) {
		return userDao.deleteUser(id);
		}
}

用户视图层(用户操作类):

package com.hyg.view;

import java.util.List;
import java.util.Scanner;
import com.hyg.model.User;
import com.hyg.service.UserService;

public class Menu {
    Scanner sc = new Scanner(System.in);
    UserService userService=new UserService();
	public void loginView(){
		System.out.println("--欢迎进入库存管理系统--");
		System.out.println("------1.登录------");
		System.out.println("------2.退出------");
		System.out.println("请输入要进行的操作");
		int result=sc.nextInt();
		if(result==1){
			//登录
			System.out.println("请输入账号");
			String userno=sc.next();
			System.out.println("请输入密码");
			String pwd=sc.next();
			//调用业务层的登录方法
			User user=userService.login(userno,pwd);
			if(user!=null){
				//登录成功
				System.out.println("登录成功!");
				indexView(user);
			}else{
				//登录失败
				System.out.println("登录失败,账号或密码错误!");
				loginView();
			}
			
}else{
			
//退出
			System.out.println("您已退出系统");
		}
		
}
	/**
	 * 首页
	 * @param user 当前登录的用户数
	 */
	public void indexView(User user){
		System.out.println("\t\t\t欢迎 [" + user.getUsername() + "]登录本系统!");
	    System.out.println("\t\t\t--------1、基库存管理----------");
	    System.out.println("\t\t\t-----------1.1 库存查询----------");
	    System.out.println("\t\t\t-----------1.2 入库管理----------");
	    System.out.println("\t\t\t-----------1.3 出库管理----------");
	    System.out.println("\t\t\t--------2、报表管理----------");
	    System.out.println("\t\t\t-----------2.1 库存月报----------");
	    System.out.println("\t\t\t-----------2.2 物资台账----------");
	    System.out.println("\t\t\t--------3、基础信息管理----------");
	    System.out.println("\t\t\t-----------3.1 用户管理----------");
	    System.out.println("\t\t\t-----------3.2 部门管理----------");
	    System.out.println("\t\t\t-----------3.3 仓库管理----------");
	    System.out.println("\t\t\t-----------3.4 供应商管理----------");
	    System.out.println("\t\t\t-----------3.5 产品管理----------");
	    System.out.println("\t\t\t--------4、退出系统----------");
	    System.out.print("请输入要进行的操作:");
	    String result=sc.next();
	    if(result.equals("3.1")){
	    	userView(user);
	    }else if(result.equals("3.2")){
	    	
   }
	}
	public void userView(User user){
		System.out.println("\t\t\t------------------欢迎到用户管理界面------------------");
	    System.out.println("\t\t\t------------------1、查看用户信息------------------");
	    System.out.println("\t\t\t------------------2、添加用户信息------------------");
	    System.out.println("\t\t\t------------------3、修改用户信息------------------");
	    System.out.println("\t\t\t------------------4、删除用户信息------------------");
	    System.out.println("\t\t\t------------------5、返回上一级------------------");
	    System.out.print("请输入要进行的操作:");
	    int result=sc.nextInt();
	    if(result==1) {
	   		//查看用户信息
	   		List<User> list=userService.findUserList();
	   		System.out.println("ID"+"\t姓名"+"\t账号"+"\t密码"+"\t职位"+"\t年龄");
	   		for(int i=0;i<list.size();i++){
	   			User u=list.get(i);
	System.out.println(u.getId()+"\t"+u.getUsername()+"\t"+u.getUsername()+"\t"+u.getPwd()+"\t"+u.getPosition()+"\t"+u.getAge());
	  }
	   	
}else if(result==2){
	   		//添加用户信息
	   		System.out.println("请输入账号");
	   		String userno=sc.next();
	   		System.out.println("请输入密码");
	   		String pwd=sc.next();
	   		
User u=new User();
	   		u.setUserno(userno);
	   		u.setPwd(pwd);
	   		
Boolean flag=userService.addUser(u);
	   		if(flag){
	   			//添加成功
	   			System.out.println("添加成功!");
	   		}else{
	   			//添加失败
	   			System.out.println("添加失败!");
	   		}
	   		userView(user);//调用当前方法继续进行
	   	}else if(result==3){
	   		//修改用户信息
	   		System.out.println("请输入要修改的用户id");
	   		int id=sc.nextInt();
	System.out.println("请输入密码");
	   		String pwd=sc.next();
	   		System.out.println("请输入职位");
	   		String position=sc.next();
	   		
User u=new User();
	   		u.setId(id);
	   		u.setPwd(pwd);
	   		u.setPosition(position);
	   		Boolean flag=userService.updateUser(u);
	   		if(flag){
	   			//修改成功
	   			System.out.println("修改成功!");
	   		}else{
	   			//修改失败
	   			System.out.println("修改失败!");
	   		}
	   		userView(user);//调用当前方法继续进行
	   	}else if(result==4){
	   		//删除用户信息
	   		System.out.println("请输入要删除的用户id");
	   		int id=sc.nextInt();
	Boolean flag=userService.deleteUser(id);
	   		if(flag){
	   			//删除成功
	   			System.out.println("删除成功!");	
	   	}else{
	   		//删除失败
	   			System.out.println("删除失败!");
	    	}
	   		userView(user);//
	   	}else{
	   		//返回上一级
	   	}
	 }ublic static void main(String[] args){
		Menu m=new Menu();
		m.loginView();
	}
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要使用IDEA 2023.2.1创建一个普通JavaSE项目,您可以按照以下步骤进行操作: 1. 首先,确保您已经安装了Java开发工具包(JDK)。您可以在引用中提供的路径中找到JDK的安装目录。 2. 打开IDEA,并选择"Create New Project"(创建新项目)选项。 3. 在弹出的对话框中,选择"Java",然后选择"JavaSE"作为项目类型。 4. 在项目设置中,选择您想要的项目名称和存储位置。 5. 确保在"Project SDK"(项目SDK)下拉菜单中选择正确的JDK版本。如果没有找到您的JDK版本,请确保您已正确安装了JDK,并在IDEA的设置中配置了JDK的路径。 6. 单击"Next"(下一步)继续进行。 7. 在"Additional Libraries and Frameworks"(附加库和框架)部分,您可以选择添加其他库或框架,或者直接单击"Finish"(完成)创建项目。 至此,您已成功使用IDEA 2023.2.1创建了一个普通的JavaSE项目。请注意,这是一种常见的创建JavaSE项目的方法,具体步骤可能会因IDEA版本而有所不同。如果您需要更详细的指导,请参考IDEA的官方文档或在线教程。 <span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Mac/Win最新IntelliJ IDEA2023.1详细安装与配置使用教程(亲测有效,持续更新)](https://blog.csdn.net/Sunshine_Mr_Sun/article/details/123891067)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [如何在IDEA中新建一个WEB项目(2020.3、2021.1)](https://blog.csdn.net/xcj2317496650/article/details/115936438)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值