7.21 zr实习日记

学习内容

今天老师主要是带领我们用ssm框架去做了昨天的登陆界面。同时也说了一下我们昨天遇到的一些问题。

  • 首先,创建一个maven项目,因为是第一次创建,所以会很慢。
    在这里插入图片描述

  • 导入配置文件:applicationContext.xml、spring-mvc.xml、properties.xml、pom.xml(替换成老师发的文件)

  • 在src/main下边新建一个Directory,名字为resources,鼠标右键—>mark directory as —>Resource Root,在resources下面新建一个mapper文件夹,mapper下边新建一个文件,命名为UserMapper.xml,用来对数据库进行增删改查,和dao层对应。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.zr.dao.IUserDao">
    <select id="findUserByname" parameterType="String" resultType="com.zr.bean.User">
        select * from tb_user where username=#{username}
    </select>
</mapper>
  • 项目结构如下,然后开始编写代码在这里插入图片描述
  • bean层,创建实体类user
package com.zr.bean;
public class User {
    private int id;
    private String username;
    private String password;
    public User(int id, String username, String password) {
        this.id = id;
        this.username = username;
        this.password = password;
    }
    public User(){}
    public int getId() {
        return id;
    }
    public String getUsername() {
        return username;
    }
    public String getPassword() {
        return password;
    }

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

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

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

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

  • dao层,创建一个接口IuserDao
package com.zr.dao;

import com.zr.bean.User;

import java.util.List;

public interface IUserDao {
    //接口,登录
    User findUserByname(String username);
}

  • service层,创建一个接口IUserService,然后再创建一个包用来写实现接口类UserServiceImpl
package com.zr.service;

import com.zr.bean.User;

import java.util.List;

//接口的权限修饰符默认是public
public interface IUserService {
    //登录方法,返回布尔类型
    boolean login(String name,String password);
}

package com.zr.service.impl;
import com.zr.bean.User;
import com.zr.dao.IUserDao;
import com.zr.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;

@Service
public class UserServiceImpl implements IUserService {
    @Autowired
    private IUserDao userDao;

    //登录
    @Override
    public boolean login(String username, String password) {
        User user = userDao.findUserByname(username);
        if(user!=null&&user.getPassword().equals(password)){
            return true;
        }
        return false;
    }
}

  • 在controller层,创建类UserController实现页面跳转,登陆成功则跳转到ok.jsp,登陆失败则跳转到failure
package com.zr.controller;
//实现页面跳转

import com.zr.bean.User;
import com.zr.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import javax.jws.WebParam;
import java.util.List;

//加一个注解就知道是控制层
//映射路径,两级路径,类上写大的路径,里边的方法写具体的路径
@Controller
@RequestMapping("user")
public class UserController {

    @Autowired
    private IUserService userService;
    //页面跳转
    @RequestMapping("login.do")
    public ModelAndView login(User user){
        //调用service层
        //视图解析器
        boolean flag = userService.login(user.getUsername(),user.getPassword());
        ModelAndView modelAndView = new ModelAndView();

        if(flag){
            //跳转到成功页面
            modelAndView.setViewName("../ok");
        }else{
            modelAndView.setViewName("../failure");
        }
        return modelAndView;
    }
}

作业

今天的作用是小组确定自己小组要做的项目,并提交一份思维导图。我们小组成员确定了我们要做一个购物系统,组长非常认真负责的和我们进行沟通,最后画了一份思维导图。
在这里插入图片描述

总结

今天主要是用ssm框架实现登陆,第一次接触ssm框架,用起来感觉很神奇。登录的时候我一直在想为什么没有写判断函数来判断用户输入的账号和密码是不是和数据库中的数据是一致的,但是他就这么实现了。就很神奇,dao层只需要写一个接口,然后去UserMapper.xml文件里写映射就可以了,就能实现你需要进行的操作了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值