手把手教学JavaWeb的设计模式 看了就会写

本文详细介绍了JavaWeb项目的MVC模式,将其分为模型层、数据访问层、业务逻辑层、控制逻辑层和界面层,并通过实例展示了各层的职责和实现方式,帮助读者理解和实践JavaWeb开发。
摘要由CSDN通过智能技术生成

现在几乎所有的B/S结构的软件都要使用MVC模式层次划分,它不仅可以能使代码结构更加清楚,还可以使项目分工更加明确,可读性大大提升,更加有利于后期的维护和升级。多的不说,直接进行介绍。

我们可以结合MVC将JavaWeb项目分为五层结构,分别是模型层、数据访问层、业务逻辑层、控制逻辑层和界面层。

上边这张图片是一个例子,在项目文件夹下新建四个文件夹,名字分别为bean(或者entity)、dao、service和controller。


一.模型层(bean、entity、model)

bean不做解释,就是我们的模型层。以下是博主写的用户实体,供参考。

package com.xwj.FormSystem.bean;


/**
 * 系统用户Entity
 * @author Xuwenjie
 * @version V1.0
 */
public class User {
    private String id;        //唯一标识  
    private String username;		// 用户名
    private String password;		// 密码
    private String pic;		// 头像
    private String role;		// 角色
    public User(){

    }
    public User(String id, String username, String password, String pic, String role) {
        this.id = id;
        this.username = username;
        this.password = password;
        this.pic = pic;
        this.role = role;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getPic() {
        return pic;
    }

    public void setPic(String pic) {
        this.pic = pic;
    }

    public String getRole() {
        return role;
    }

    public void setRole(String role) {
        this.role = role;
    }



}

二.数据访问层(DAO层)

DAO,本意为data access object,即数据访问对象。顾名思义,在这一层下,应包含对数据库的一系列操作(注意,是对数据库数据的操作,而不是代码中使用的临时数据变量)。此层为Service层和Controller层提供数据服务。

我们以UserDao为例,也就是用户数据访问对象。

应该尽量面向接口编程,所以我们先新建一个接口,名为UserDao(不必在意那个FormDao

 这个接口中,写了以下这些方法,待会都需要用具体的实现类来实现。

package com.xwj.FormSystem.dao;

import com.xwj.FormSystem.bean.User;

import java.sql.Connection;
import java.util.List;
//系统用户DAO接口
public interface UserDao {
    int add(Connection con, User user);
    int delete(Connection con,String id);
    int update(Connection con,User user);
    List<User> selectAll(Connection con);
    User login(Connection con,String username,String password);
    User checkRegister(Connection con,String username);

}

如读者所见,只是一些简单的增删改查(DAO层要做的大抵就是这些工作)

下面,创建实现类,名叫UserDaoImpl,并实现方法。

 UserDaoImpl的代码如下(该代码仅是博主个人项目需要,读者应视具体情况具体分析)

package com.xwj.FormSystem.dao.impl;


import com.xwj.FormSystem.bean.User;
import com.xwj.FormSystem.dao.UserDao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

/**
 * 系统用户DAO接口实现类
 * @author Xuwenjie
 * @version V1.0
 */
public class 
  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值