利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改

利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改

工具:
IDEA 2018 2.2
mySQL5.5+SQLyog

  • 新建一个Maven项目
  • 点击新建file->new->project,然后选择maven,勾上Create from archetype。选择如图所示的选项
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第1张图片
  • 在后面的命名中,填写好两个名字
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第2张图片
  • 选择Maven版本时,这里不选择IDEA自带的版本,选择自己下载的版本。
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第3张图片
    记得将自己下载好的Maven目录下,在conf文件夹中将settings.xml 转到自己C盘中,自己目录下的.m2文件中。若没有.m2文件,可以先选择IDEA自带的Maven先建立一个Maven项目,它会在目录中自动创建一个文件夹,然后再按照上面的步骤进行操作。
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第4张图片
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第5张图片
    在转进去的settings文件中,在如图中添加代码段
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第6张图片

			alimaven
			central
			aliyun maven
			http://maven.aliyun.com/nexus/content/repositories/central/
   
  • 返回到IDEA中,添加仓库,名字和值如图所示。
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第7张图片
  • 取好项目名字后,点击finish。
  • 我们在main文件夹下,新建java文件夹。右键文件夹,选择 Mark Directory as ->Sources Root。
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第8张图片
  • 在main文件夹下新建Resources文件夹,右键文件夹,Mark Directory as ->Rescources Root
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第9张图片
  • 在java文件夹下,建立包,包名为 com,然后在com包下建立四个包 ,分别为 bean controller dao service
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第10张图片
  • 首先修改pom.xml文件。将 … 中所有的替换以下代码。

  
    UTF-8
    1.7
    1.7
    
    5.0.2.RELEASE
    
    3.2.6
    
    1.7.7
    1.2.17
    0.9.5.2
    1.1.2
  
  • 将…中所有的替换为以下代码

    
    
      org.springframework
      spring-core
      ${spring.version}
    

    
      org.springframework
      spring-web
      ${spring.version}
    
    
      org.springframework
      spring-oxm
      ${spring.version}
    
    
      org.springframework
      spring-tx
      ${spring.version}
    

    
      org.springframework
      spring-jdbc
      ${spring.version}
    

    
      org.springframework
      spring-webmvc
      ${spring.version}
    
    
      org.springframework
      spring-aop
      ${spring.version}
    

    
      org.springframework
      spring-context-support
      ${spring.version}
    

    
      org.springframework
      spring-test
      ${spring.version}
    
    
    
      org.mybatis
      mybatis
      ${mybatis.version}
    
    
    
      org.mybatis
      mybatis-spring
      1.2.2
    
    
    
      javax
      javaee-api
      7.0
    

    
    
      mysql
      mysql-connector-java
      5.1.30
    
    
    
      commons-dbcp
      commons-dbcp
      1.2.2
    
    
    
      jstl
      jstl
      1.2
    
    
    
    
      log4j
      log4j
      ${log4j.version}
    


    
    
      com.mchange
      c3p0
      ${c3p0.version}
    

    
      taglibs
      standard
      ${taglibs.version}
    

    
      org.slf4j
      slf4j-api
      ${slf4j.version}
    
    
      org.slf4j
      slf4j-log4j12
      ${slf4j.version}
    

    
    
      javax.servlet
      javax.servlet-api
      3.1.0
      provided
    
    
    
      javax.servlet.jsp
      javax.servlet.jsp-api
      2.3.1
      provided
    

  
  • 在resources文件夹下新建一个文件夹,new->Directory。取名为mapper
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第11张图片
  • 在mapper文件夹下新建一个file,取名为UserMapper.xml。然后在文件中添加以下代码。其中的dao包中文件名先不用管,待会儿根据自己建立的名字进行修改。






  • 在bean包中新建一个类 UserInfo,先写三个变量。再自动生成getter setter方法。数据库的建立在这里不在多讲。
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第12张图片
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第13张图片
package com.bean;

public class UserInfo {
    private int id;   //三个对应数据库的变量
    private String username;
    private String password;
    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 getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}
  • 在dao包中新建IUserDao接口。只是构造一个查询所有的方法
package com.dao;

import com.bean.UserInfo;

import java.util.List;

public interface IUserDao  {     //接口  在UserMapper中实现接口
    public List findall();
    public void deleteUser(int id);
    public void updateUser(UserInfo userInfo);
    public void addUser(UserInfo userInfo);
    UserInfo queryId(int id);
    UserInfo checkUser(String username);

}
  • 在service包中新建一个接口IUserservice
package com.service;

import com.bean.UserInfo;

import javax.xml.registry.infomodel.User;
import java.util.List;

public interface IUserservice {
    public List findall();
    public void deleteUser(int id);
    public void addUser(UserInfo userInfo);

    public void updateUser(UserInfo userInfo);
    UserInfo queryId(int id);
    UserInfo checkUser(String username);

}
  • 在service包中新建一个impl包,在包中实现接口。
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第14张图片
package com.service.impl;

import com.bean.UserInfo;
import com.dao.IUserDao;
import com.service.IUserservice;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class UserService implements IUserservice {

    @Autowired
    private IUserDao userDao;

    @Override
    public List findall() {
        return userDao.findall();
    }

    @Override
    public void deleteUser(int id) {
        userDao.deleteUser(id);
    }

    @Override
    public void addUser(UserInfo userInfo) {
        userDao.addUser(userInfo);
    }

    @Override
    public void updateUser(UserInfo userInfo) {
    userDao.updateUser(userInfo);
}

    @Override
    public UserInfo queryId(int id) {
        return userDao.queryId(id);
    }

    @Override
    public UserInfo checkUser(String username) {
        return userDao.checkUser(username);
    }


}

  • 在dao包中建立IUserDao接口
package com.dao;

import com.bean.UserInfo;

import java.util.List;

public interface IUserDao  {     //接口  在UserMapper中实现接口
    public List findall();
    public void deleteUser(int id);
    public void updateUser(UserInfo userInfo);
    public void addUser(UserInfo userInfo);
    UserInfo queryId(int id);
    UserInfo checkUser(String username);

}

  • 在resources中,添加applicationContext.xml文件,代码如下,在扫描Dao包和bean包时要将包名改为自己建立的包名。


    
    

    
    
        
        
        
        
        
        
    

    
    
        
        
        
        

        
        

    

    
    
    
        
        
        
        
    



    
    


    
    
    
        
    
    
    


  • 在resources中,添加db.properties文件,在文件中声明连接数据库的url和用户名 密码,添加log4j.properties文件。
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/idea?useSSL=true&characterEncoding=utf-8
jdbc.username=root
jdbc.password=1234
# Global logging configuration
log4j.rootLogger=DEBUG, stdout
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
  • 在mapper文件夹中新建UserMapper.xml文件。在文件中添加以下代码,其中许多都是sql语言,用于数据库的操作。






    
        insert into userinfo(id,username,password) value (#{id},#{username},#{password})
    

    
        delete from userinfo where id=#{id}
    


    update userinfo set id=#{id},username=#{username},password=#{password} where id=#{id}


    

    

  • 在controller包中新建UserController类,添加以下代码
package com.controller;

import com.bean.UserInfo;
import com.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.servlet.http.HttpServletRequest;
import java.util.List;

@Controller
@RequestMapping("/user")
public class UserController {
    @Autowired
    private IUserservice userService;

    @RequestMapping("/findAll.do")
    public ModelAndView findall(){
        List all=userService.findall();
        ModelAndView mv=new ModelAndView();
        mv.addObject("userinfos",all);
        mv.setViewName("allUser");
        return mv;
    }


    @RequestMapping("/todeleteUser.do")
    public String deleteUser(int id){
        userService.deleteUser(id);
        return "redirect:findAll.do";
    }

    @RequestMapping("/toAddUser.do")
    public String  toAddUser(){
        return "addUser";
    }

    @RequestMapping("/save.do")
    public String AddUser(UserInfo userInfo){
        userService.addUser(userInfo);
        return "redirect:findAll.do";
    }

    @RequestMapping("/toUpdateUser.do")
    public String toupdateUser(UserInfo userInfo,int id){
       userInfo=userService.queryId(id);
        return "updateUser";
    }

    @RequestMapping("/update.do")
    public String updateUser(UserInfo userInfo){

        userService.updateUser(userInfo);
        userInfo=userService.queryId(userInfo.getId());
        return "redirect:findAll.do";

    }

    @RequestMapping("/inUser.do")
    public String login(HttpServletRequest request){
        String username= request.getParameter("username");
        String password=request.getParameter("password");
        boolean flag=logincheck(username,password);
        if(flag){
            return "redirect:findAll.do";
        }
        else{
            return "inUser";
        }
    }

    private boolean logincheck(String username,String password){
        UserInfo userInfo=userService.checkUser(username);
        if(userInfo==null||"".equals(username)){
            return false;
        }
        if(userInfo.getPassword().equals(password)){
            return true;
        }
        else{
            return false;
        }
    }

}

  • 下面讲解每一个操作实现的步骤
  • 查询所有的数据:
  • 先在IUserservice接口中添加
    public List findall();
  • 在IUserDao接口中添加
    public List findall();
  • 在UserService类中添加(要在类前添加@Service)
    @Autowired
    private IUserDao userDao;

    @Override
    public List findall() {
        return userDao.findall();
    }
  • 在UserMapper中添加查询sql语句

  • 在UserController中添加
    @Autowired
    private IUserservice userService;

    @RequestMapping("/findAll.do")
    public ModelAndView findall(){
        List all=userService.findall();
        ModelAndView mv=new ModelAndView();
        mv.addObject("userinfos",all);
        mv.setViewName("allUser");
        return mv;
    }
  • 与上面类似 修改操作就不多说了,源代码都在上面。

-这些是JSP文件

  • allUser.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" isELIgnored="false"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>



    user列表
    
    
    


id 用户名 密码 操作
${userInfo.id} ${userInfo.username} ${userInfo.password} 更改 | 删除
  • addUser.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" isELIgnored="false"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>



    新增用户
    
    
    


用  户  id:


用户姓名:


用户密码:


  • updateUser.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" isELIgnored="false"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>


    修改论文
    
    
    


ID 用户姓名: 用户密码:
  • index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" isELIgnored="false"%>


Hello World!

查询所有文件 登录界面

到此整个数据库的增删查改就实现完了

利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第15张图片
利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第16张图片
利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第17张图片

  • 下面实现登录界面的操作
  • 首先新建一个JSP文件
    利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改_第18张图片
  • 在文件中添加以下代码
  • inUser.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" isELIgnored="false"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>


    用户登录


   
用户名:


用户密码:


  • 在IUserservice接口中添加:
    UserInfo checkUser(String username);
  • 在IUserDao接口中添加:
    UserInfo checkUser(String username);
  • 在UserService类中添加
    @Override
    public UserInfo checkUser(String username) {
        return userDao.checkUser(username);
    }
  • 在UserController中添加

    @RequestMapping("/inUser.do")
    public String login(HttpServletRequest request){
        String username= request.getParameter("username");
        String password=request.getParameter("password");
        boolean flag=logincheck(username,password);
        if(flag){
            return "redirect:findAll.do";
        }
        else{
            return "inUser";
        }
    }

    private boolean logincheck(String username,String password){
        UserInfo userInfo=userService.checkUser(username);
        if(userInfo==null||"".equals(username)){
            return false;
        }
        if(userInfo.getPassword().equals(password)){
            return true;
        }
        else{
            return false;
        }
    }
  • 在UserMapper.xml中添加
    

这样整个登录界面就实现完了

你可能感兴趣的:(利用IDEA+MAVEN,构建简单的SSM框架,以及实现对数据库的增删查改)