Day 9

本文详细介绍了如何在IntelliJ IDEA中搭建SpringMVC项目,并实现了基本的增删查改(CRUD)功能。从创建项目结构到配置文件的设置,再到具体的Controller、Service、DAO层的实现,最后到JSP页面的展示,全面覆盖了SpringMVC项目的开发流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

day 9

在main的java文件夹上,鼠标右键,找到 make directory as,选择Sources root
在test的java文件夹上(如没有java文件,则手动创建,下同),鼠标右键,找到make directory as,选择Test Sources root
在test的resources文件夹上,鼠标右键,找到make directory as,选择Test Resources root
src->main->java下新建package com,再新建package springmvc,这两个对应我们刚开始的groupid
springmvc包下新建四个包,controller包用来放前台url映射文件,dao用来放与数据库的接口文件,entity用来放实体类文件,service用来放自己定义的接口
applicationContext.xml是spring配置文件
sqlmap文件夹里面放实体与数据库的映射文件
generatorConfig.xml和generator.properties是mybatis的配置文件
jdbc.properties是数据库相关信息
log4j.properties是日志配置文件
webapp下新建css、images等文件,用来放前端资源
web-inf下新建views文件件,jsp文件就放这里面了

实现增删查改

jsp

<%@ page contentType="text/html;charset=UTF-8" %>
<%@ include file="/WEB-INF/jsp/taglibs.jsp" %>

<html>
<head>
    <title>${basePath}</title>
</head>
<body>
<form style="width: 300px;margin: 200px auto 0;" method="post" action="${basePath}/login">
    账号:<input type="text" name="username" value="${user.username}">
    <br>
    密码:<input type="password" name="password" value="${user.password}">
    <br>
    <input type="submit" value="登录">
    <br>
    <span style="color: red;">${msg}</span>
</form>
</body>
</html>

controller

import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

@Controller
public class UserController {
    @Autowired
    IUserDao userDao;

    @RequestMapping("/demo")
    public String toDemo(Model model) {
        model.addAttribute("users", userDao.getUsers());
        return "user-list";
    }

    @RequestMapping("/toLogin")
    public String toLogin() {
        return "login";
    }

    @RequestMapping("/login")
    public String Login(Model model, HttpServletRequest request, User user) {
        User rightUser = userDao.getUserById2(user.getUsername());
        //判断是否存在用户
        if (rightUser != null) {
            model.addAttribute("msg", "不存在该用户");
            return "login";
        }
        if (rightUser.getPassword() != user.getPassword()) {
            model.addAttribute("msg", "账号或密码错误");
            return "login";
        }
        HttpSession session = request.getSession();
        session.setAttribute("user", rightUser);
        return "index";
    }

    /**
     * mybatis增删改查方法测试
     * @param model
     * @return
     */
    @RequestMapping("/test")
    public String test(Model model) {
        //model.addAttribute()
        User user = new User();
        user.setUsername("tusuzer2");
        user.setPassword("123");
        userDao.addUser(user);
        System.out.println(user);
        user.setPassword("456");
        System.out.println(userDao.updateUser(user));
        return "login";
    }

}

user

package com.zhongruan.web_demo.entity;

public class User {
    private Integer id;
    private String username;
    private String password;

    public Integer getId() {
        return id;
    }

    public void setId(Integer 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;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", username='" + username + '\'' +
                ", password='" + password + '\'' +
                '}';
    }
}

dao

package com.zhongruan.web_demo.dao;

import com.zhongruan.web_demo.entity.User;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface IUserDao {

    List<User> getUsers();

    User getUserById(String username);

    User getUserById2(String username);

    int updateUser(User user);

    int addUser(User user);

    int deleteUser(User user);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值