JavaMVC项目(三)——实现注册、修改、查询

作者想说的话

本篇作品为自己为了学业所做作业,如果有帮助到你,一起加油。如果有什么说错的,因为本人也没查什么资料,纯凭自我理解的,还请见谅。另外本次环境配置搭建,有很多奇奇怪怪的问题,记得好好看每一步。

环境配置要求

1、IDEA(本人用的是2019.2,大家可下载别的新版本)
2、JDK1.8(推荐用此版本)
3、Tomcat 8.5.32
下载链接:https://pan.baidu.com/s/1E_Pnnnhu3usyXVwcMjPXwA
提取码:1i8j
4、Navicat for MySQL
下载链接:https://pan.baidu.com/s/1uXImn-3UrE4TVEAXzq67MA
提取码:j2fd
5、MySQL Server(这边是用的是5.7.10,最好版本号是5开头)

具体上述软件的安装使用配置,我发布的前面几篇文章内有,可以去查阅。

需要实现的效果

注册:通过输入用户名、密码,进行账户注册
修改:通过点击一条数据,可修改本条数据的信息
查询:通过输入名字,模糊查询所有符合标准的数据

前期项目准备

根据文章JavaCSS项目(一)(二)搭建出Maven项目的创建和搭建,以及已经实现的功能编写。

项目(注册)代码撰写

1、dao层接口的撰写

在这里插入图片描述

2、Mappper文件中SQL语句的撰写

在这里插入图片描述

3、Service接口的撰写

在这里插入图片描述

4、重写UserServiceImpl所继承的方法

在这里插入图片描述
代码如下:

//  add方法的逻辑判断:
//  将网页传递的值封装为User类的数据,通过dao层接口方法进行insert操作,传递出结果数
//  若添加的数量大于0,则返回true,即删除成功
    @Override
    public boolean add(User user) {
        int integer = userdao.add(user);
        if (integer > 0) return true;
        else return false;
    }

5、Controller类的撰写

在这里插入图片描述

6、创建注册页面

在这里插入图片描述
在这里插入图片描述

7、修改index.jsp文件

在这里插入图片描述

运行结果

在这里插入图片描述
在这里插入图片描述

项目(修改)代码撰写

1、dao层接口的撰写

在这里插入图片描述

2、Mappper文件中SQL语句的撰写

在这里插入图片描述

3、Service接口的撰写

在这里插入图片描述

4、重写UserServiceImpl所继承的方法

在这里插入图片描述
代码如下:

    //  findById方法的逻辑判断:
//  将网页传递的id值通过dao层接口方法进行select操作,传递出结果
//  将传递出来的结果封装成一个User类型的对象
    @Override
    public User findById(Integer id) {
        return userdao.findById(id);
    }


    //  update方法的逻辑判断:
//  将网页传递的值封装为User类的数据,通过dao层接口方法进行update操作,传递出结果数
//  若修改的数量大于0,则返回true,即修改成功
    @Override
    public boolean update(User user) {
        int integer = userdao.update(user);
        if (integer > 0) return true;
        else return false;
    }

5、Controller类的撰写

在这里插入图片描述
代码如下:

    @RequestMapping("/findById.do")
    public String findById(Integer id, Model model) {
        //定义一个user来获取Service接口传递出的对象
        User user = userService.findById(id);
        //使用页面传递的model对象,将Service接口读取出来的对象传递给页面
        model.addAttribute("user", user);
        //最后前往modify页面
        return "../modify";
    }

    //findById方法与update方法的关系为:
    //首先后端获取前端需要修改的那条数据的id值,然后通过findById方法,在数据库中找到那条信息
    //之后将这条消息通过model.addAttribute方法加载到页面,前往modify页面
    //在modify页面,用户可以看到需要修改的那条数据的所有信息,点击确认后调用update方法进行修改

    @RequestMapping("/update.do")
    public String update(User user) {
        //定义flag用来读取userService类中的update方法返回值
        boolean flag = userService.update(user);
        //如若添加修改成功,则加载重新执行findAll.do,加载数据库数据页面,否则加载fail.jsp页面
        if (flag) return "redirect:findAll.do";
        else return "../fail";
    }

6、创建modify.jsp页面

在这里插入图片描述
在这里插入图片描述
代码如下:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>修改</title>
</head>
<body>
<h1>修改数据</h1>
<form action="/user/update.do">
    <input name="id" value="${user.id}" type="hidden">
    <div>
        <label for="name">用户名</label>
        <input type="text" name="name" id="name" value="${user.name}">
    </div>
    <div>
        <label for="password">密 码</label>
        <input type="text" name="password" id="password" value="${user.password}">
    </div>
    <div>
        <input type="submit" value="提交">
    </div>
    <a href="javascript:window.history.go(-1)">返回</a>
</form>
</body>
</html>

7、修改main.jsp文件

在这里插入图片描述

运行结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

项目(查询)代码撰写

1、dao层接口的撰写

在这里插入图片描述

2、Mappper文件中SQL语句的撰写

在这里插入图片描述

3、Service接口的撰写

在这里插入图片描述

4、重写UserServiceImpl所继承的方法

在这里插入图片描述
代码如下:

//  searchByName方法的逻辑判断:
//  执行dao层操作,将所有查找出的数据返回出List<User>类型的数组
    @Override
    public List<User> searchByName(String name) {
        return userdao.searchByName(name);
    }

5、Controller类的撰写

修改findAll方法
在这里插入图片描述

6、修改main.jsp文件

在这里插入图片描述
div容器代码如下:

<div>
    <form action="/user/findAll.do">
        <input type="text" name="name" value="${name}">
        <input type="button" onclick="form.submit()" value="搜索">
    </form>
</div>

运行结果

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值