Spring+Spring MVC+Mybatis+Maven搭建多模块项目(二)

基于第一篇文章《Spring+Spring MVC+Mybatis+Maven搭建多模块项目(一)》的基础上,写一个完整的示例,从页面到Dao层的整个过程 1、先在bug.model模块下创建com.bug.model.user包,在包中创建UserVO对象

package com.bug.model.user;

public class UserVO {
    private String userId;
    private String userName;
    private String password;

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    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;
    }

}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33

2、在bug.dao模块中创建com.bug.dao.user包,在包中创建IUserDao接口

package com.bug.dao.user;

import org.apache.ibatis.annotations.Param;

import com.bug.model.user.UserVO;

public interface IUserDao {
    void addUser(@Param("user")UserVO user);
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

为了方便,同时在com.bug.dao.user包中创建IUserDao接口对应的Mapper文件IUserDao.xml,其实在applicationContext.xml文件中也已经指定了Mapper文件的存放位置了

<?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.bug.dao.user.IUserDao">
    <insert id="addUser" parameterType="com.bug.model.user.UserVO">
        insert into user_t
        (
            user_id,
            user_name,
            password
        )
        values
        (
            #{user.userId,jdbcType=VARCHAR},
            #{user.userName,jdbcType=VARCHAR},
            #{user.password,jdbcType=VARCHAR}
        )
    </insert>
</mapper>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

3、在bug.service模块中创建com.bug.service.user包,在包中创建IUserServicer接口

package com.bug.service.user;

import com.bug.model.user.UserVO;

public interface IUserService {
    void addUser(UserVO user) throws Exception;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

我的设计是把Service接口及其实现都放到bug.service模块中,因此在user包下再创建impl子包,在子包中创建IUserService接口的实现UserServiceImpl,并在接口中调用Dao层接口

package com.bug.service.user.impl;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.bug.dao.user.IUserDao;
import com.bug.model.user.UserVO;
import com.bug.service.user.IUserService;

@Service("userService")
public class UserServiceImpl implements IUserService {
    @Autowired
    private IUserDao userDao;

    @Override
    public void addUser(UserVO user) throws Exception{
        userDao.addUser(user);
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

4、在bug.web模块下创建com.web.controller.user包,在包中创建UserController控制层,用于响应页面发送过来的请求,并调用Service层的接口

package com.bug.controller.user;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import com.bug.model.user.UserVO;
import com.bug.service.user.IUserService;

@Controller
@RequestMapping("/user")
public class UserController {

    @Autowired
    private IUserService userService;

    @RequestMapping("/login")
    public String login() {
        UserVO user = new UserVO();
        user.setUserId("1");
        user.setUserName("test1");
        user.setPassword("123456");

        try {
            userService.addUser(user);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return "user/login";
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32

这里返回的”user/login”,渲染器会自己匹配WEB-INF/jsp/user目录下的login.jsp, 由于在spring-servlet.xml中已经限制扫描范围,所有的控制层都必须放在com.web.controller包下,因此后继增加的其他控制层都需要放到controller下面

另外spring-servlet.xml中的视图解析器已经控制了以.jsp结果的文件作为渲染页面,并放在WEB-INF/jsp目录下面,因此需要先在WEB-INF目录下创建jsp文件夹,再在jsp文件夹中创建user目录,在user目录中创建login.jsp文件,用于渲染页面的请求

最后在地址栏中输入localhost:8080/bug.web/user/login验证结果

时间: 2024-10-19 17:07:40

Spring+Spring MVC+Mybatis+Maven搭建多模块项目(二)的相关文章

Spring+Spring MVC+Mybatis+Maven搭建多模块项目(一)

Spring+Spring MVC+Mybatis+Maven搭建多模块项目(一) 标签:               springmvcspring mvcmybatismaven 2016-11-22 22:27             4425人阅读             评论(1)             收藏              举报 .embody { padding: 10px 10px 10px; margin: 0 -20px; border-bottom: solid

eclipse中使用maven搭建多模块项目

暂时参考:https://blog.csdn.net/u012343297/article/details/79883870 原文地址:https://www.cnblogs.com/zhangwuji/p/10798431.html

Spring MVC+Mybatis+Maven+Velocity+Mysql整合实例

本篇文章将通过一个简单显示用户信息的实例整合Spring mvc+mybatis+Maven+velocity+mysql. 对于实现整合的重点在于以下几个配置文件的实现 1.Maven依赖包 2.spring配置文件(springContext-user.xml) 3.mybatis配置文件(MyBatis-User-Configuration.xml) 4.spring-mvc配置文件(spring-mvc.xml) 5.web.xml配置文件 源码下载地址:http://download.

Maven搭建多模块企业级项目

首先,前面几次学习已经学会了安装maven,如何创建maven项目等,最近的学习,终于有点进展了,搭建一下企业级多模块项目. 好了,废话不多说,具体如下: 首先新建一个maven项目,pom.xml的文件如下: 搭建多模块项目,必须要有一个packaging为pom的根目录.创建好这个maven项目后,我们对着项目右键-->new 输入你的项目名称 这里就不重复说创建项目了,创建好的目录结构在eclipse中如下: 说明一下这些项目具体都是干嘛的: easyframework-model:数据模

maven创建多模块项目

首先新建一个maven项目,pom.xml的文件如下: 搭建多模块项目,必须要有一个packaging为pom的根目录.创建好这个maven项目后,我们对着项目右键-->new 输入你的项目名称 这里就不重复说创建项目了,创建好的目录结构在eclipse中如下: 说明一下这些项目具体都是干嘛的: easyframework-model:数据模型,与数据库表字段对应的实体类 easyframework-core:核心业务项目.主要是Service处理业务逻辑 easyframework-persi

jenkins+git+maven搭建自动化部署项目环境

简介    折腾了两个晚上,趁着今晚比较有空,把jenkins+git+maven搭建自动化部署项目环境搭建的过程记录一下,这里我把github作为git的远程仓库(https://github.com/jacky-        lulu/cxf_demo-Maven-Webapp)     系统:centos6.5 maven: Apache Maven 3.3.9 git:git version 2.0.0 1.首先安装git,看以前另外一篇博客 http://www.cnblogs.co

使用Maven构建多模块项目

步骤: 1. 注意事项: 1.使用Maven构建多模块项目时,子模块必须位于父模块的目录中 项目结构如下: parent |----pom.xml |----child1 |----pom.xml |----child1 |----pom.xml |----child3 |----pom.xml 2.在父pom中添加jar包依赖之后,所有的子模块child1,child2,child3都可以直接使用父项目中的jar包,不需要再单独引入,并且在项目的Maven Dependencies中显示对该j

使用Maven构建多模块项目(转)

Maven学习总结(八)——使用Maven构建多模块项目 在平时的Javaweb项目开发中为了便于后期的维护,我们一般会进行分层开发,最常见的就是分为domain(域模型层).dao(数据库访问层).service(业务逻辑层).web(表现层),这样分层之后,各个层之间的职责会比较明确,后期维护起来也相对比较容易,今天我们就是使用Maven来构建以上的各个层. 项目结构如下: system-parent      |----pom.xml      |----system-domain |--

(转)Maven学习总结(八)——使用Maven构建多模块项目

孤傲苍狼只为成功找方法,不为失败找借口! Maven学习总结(八)——使用Maven构建多模块项目 在平时的Javaweb项目开发中为了便于后期的维护,我们一般会进行分层开发,最常见的就是分为domain(域模型层).dao(数据库访问层).service(业务逻辑层).web(表现层),这样分层之后,各个层之间的职责会比较明确,后期维护起来也相对比较容易,今天我们就是使用Maven来构建以上的各个层. 项目结构如下: system-parent     |----pom.xml     |--