eclipse + maven搭建SSM框架

0、系统环境

1)Windows 10 企业版

2)JDK 1.8.0_131

3)Eclipse Java EE IDE for Web Developers  Version: Neon.3 Release (4.6.3)

4)Tomcat 8.5

 

1、maven下载及配置

maven的下载地址:http://maven.apache.org/download.cgi

下载后解压放在d:\Java路径下 

在环境变量中,新增系统变量名:MAVEN_HOME,变量值:D:\Java\maven

在Path中追加:%MAVEN_HOME%\bin;

在命令行窗口中输入:mvn –v,如果看见下图则说明maven安装配置完毕

2、maven仓库的设置

maven仓库默认位置在系统用户目录下的.m2目录中,类似下图

因为众所周知的原因,直接访问maven公共仓库的速度比较慢,所以推荐使用阿里的maven仓库镜像。编辑setting.xml文件,在mirrors节点下,新增如下内容,这样从仓库中下载jar包速度上会快很多。


       nexus-aliyun
       *
       Nexus aliyun
       http://maven.aliyun.com/nexus/content/groups/public

 

3、eclipse整合maven

设置eclipse自带maven整合工具,在Preferences中找到Maven节点,观察User Settings项的设置是否正确

点击Installations节点,添加maven runtime

 

4、创建maven项目时设置JDK

问题描述:eclipse创建maven项目时,显示的JDK默认版本为1.5,实际使用的JDK为1.8,如何修改?

解决方案:找到本机maven仓库存放位置,比如:${user.home}/.m2/路径,编辑settings.xml文件,在profiles节点下配置

复制代码
复制代码


    jdk-1.8

    

        true

        1.8

    

    

        1.8

        1.8

        1.8

    

复制代码
复制代码

 

5、使用maven创建SSM项目

1)选择Maven Project

2)点击Next,选择默认工作空间位置

3)选择web类型

4)填写GroupID、ArtifactID

Group ID:相当于一个组织

Artifact ID:相当于这个组织下的一个具体项目

Packege:根据Group ID和Artifact ID生成一个默认的名称

5)创建出的maven项目如下图

6)问题描述:提示错误:

在eclipse中设置Server为Tomcat,注意JRE设置为安装的JDK的jre

在工程上右键,查看工程属性,找到Java Build Path,添加Server Runtime为Tomcat

 

点击Finish后,项目工程变为下图

7)在项目上右键,查看项目信息

默认的Dynamic Web Module为2.3,使用Tomcat 8.5,需要修改为3.1

修改方法:

① maven工程所在目录下org.eclipse.wst.common.project.facet.core.xml

编辑内容,如下所示

复制代码
复制代码




  

  

  

  

复制代码
复制代码

改为

复制代码
复制代码




  

  

  

  

复制代码
复制代码

② maven工程下的web.xml文件修改为



③ pom.xml文件中修改build节点,添加如下内容

复制代码
复制代码

       
              org.apache.maven.plugins
              maven-compiler-plugin
              
                     1.8
                     1.8
              
       
复制代码
复制代码

④ 修改后,在项目上右键,找到Maven属性下的Update Project,点击之

 

⑤ 选择该项目进行更新,如果怕不能强制更新,可以勾选Force Update of Snapshots/Releases

⑥ 点击OK后更新maven项目,再观察项目属性,Module已经变为3.1

 

6、下载ssm框架所需jar包

修改pom.xml内容为:

复制代码
复制代码

    4.0.0
    cn.temptation
    ssm
    war
    0.0.1-SNAPSHOT
    ssm Maven Webapp
    http://maven.apache.org
    
        
        4.3.8.RELEASE
    
    
        
        
            org.springframework
            spring-core
            ${spring.version}
        
        
            org.springframework
            spring-aop
            ${spring.version}
        
        
            org.springframework
            spring-web
            ${spring.version}
        
        
            org.springframework
            spring-webmvc
            ${spring.version}
        
        
            org.springframework
            spring-jdbc
            ${spring.version}
        
        
            org.springframework
            spring-tx
            ${spring.version}
        

        
        
            org.aspectj
            aspectjrt
            1.8.0
        
        
            org.aspectj
            aspectjweaver
            1.8.0
        

        
        
            org.mybatis
            mybatis
            3.3.0
        
        
        
            mysql
            mysql-connector-java
            5.1.26
        
        
        
            com.alibaba
            druid
            1.0.20
        

        
        
            org.mybatis
            mybatis-spring
            1.2.3
        

        
        
            javax.servlet
            jstl
            1.2
        

        
        
            log4j
            log4j
            1.2.17
        
        
            org.slf4j
            slf4j-api
            1.7.21
        

        
        
            junit
            junit
            3.8.1
            test
        
    
    
        ssm
        
            
                org.apache.maven.plugins
                maven-compiler-plugin
                
                    1.8
                    1.8
                
            
        
    
复制代码
复制代码

保存后,可以看到相关jar包被下载至本地仓库 

7、完善项目结构

因为服务端maven项目的标准结构有四个子包:src/main/java、src/main/resources、src/test/java、src/test/resources,这里缺少了src/test/resources,所以手动补上。

在项目中新建Source Folder

创建src/test/resources目录后,工程如下图所示

右键查看项目属性,点击Deployment Assembly,移除test和target

移除后如下图

 

8、创建项目用的配置文件

创建log4j.properties文件,内容如下:

复制代码
复制代码
#USE THIS SETTING FOR OUTPUT MYBATIS`s SQL ON THE CONSOLE
log4j.rootLogger=DEBUG, Console

#Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n

log4j.logger.java.sql.ResultSet=INFO
log4j.logger.org.apache=INFO
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
复制代码
复制代码

 

创建mybatis-config.xml文件,内容如下:

复制代码
复制代码



    
    
        
    
复制代码
复制代码

 

创建spring-mvc.xml文件,内容如下:

复制代码
复制代码



    
    

    
    

    
    

    
    
        
        
    
复制代码
复制代码

 

创建spring-mybatis.xml文件,内容如下:

 

复制代码
复制代码



    
    
    
        
        
        
    

    
    
        
        
        
        
    
    
    
    
        
        
    
复制代码
复制代码

 

 

创建spring-tx.xml文件,内容如下:

 

复制代码
复制代码



    
    

    
    
        
    
    
    
    
        
            
            
            
            
        
    
    
    
    
        
        
    
复制代码
复制代码

 

 

9、编写服务端代码

编写User实体类,代码如下:

复制代码
复制代码
package cn.temptation.domain;

/**
 * 用户信息
 */
public class User {
    // 成员变量
    private Integer userid;
    private String username;
    private String password;

    // 构造函数
    public User() {
        super();
    }

    public User(Integer userid, String username, String password) {
        super();
        this.userid = userid;
        this.username = username;
        this.password = password;
    }

    // 成员方法
    public Integer getUserid() {
        return userid;
    }

    public void setUserid(Integer 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;
    }
}
复制代码
复制代码

 

编写UserController控制器,代码如下:

复制代码
复制代码
package cn.temptation.web;

import javax.annotation.Resource;
import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;

import cn.temptation.dao.UserDao;
import cn.temptation.domain.User;

/**
 * 用户控制器
 */
@Controller
@RequestMapping(value = "/user")
public class UserController {
    @Resource
    private UserDao userDao;

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

    @RequestMapping("/indexview")
    public String index() {
        return "main/index";
    }

    @RequestMapping(value = "/login", method = RequestMethod.POST)
    public ModelAndView login(User model, HttpSession session) {
        User user = userDao.findByUsername(model.getUsername());

        if (user == null || !user.getPassword().equals(model.getPassword())) {
            return new ModelAndView("redirect:/login.jsp");
        } else {
            session.setAttribute("user", user);
            ModelAndView mav = new ModelAndView();
            mav.setViewName("index");
            return mav;
        }
    }
}
复制代码
复制代码

 

编写UserDao数据访问层接口,代码如下:

复制代码
复制代码
package cn.temptation.dao;

import cn.temptation.domain.User;

public interface UserDao {
    public abstract User findByUsername(String username);
}
复制代码
复制代码

 

编写UserMapper.xml数据访问层映射文件,代码如下:

 

复制代码
复制代码



    
复制代码
复制代码

 

 

10、编写客户端代码

 

编写login.jsp登录页,代码如下:

复制代码
复制代码
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>




登录




复制代码
复制代码

 

编写index.jsp主页,代码如下:

复制代码
复制代码
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>




主页


欢迎,${user.username }

复制代码
复制代码

 

 

11、使用maven构建项目

在项目上右键,找到Maven属性的Update Project,也可以Alt+F5操作

 

修改项目编译路径为JRE系统类库,否则后续操作出错

项目上右键,找到Run As属性,找到Maven install

点击执行,结果如下说明构建成功

项目运行还是使用web工程的部署运行方式

运行项目,观察是否报错

登录页面

登录成功,跳转到主页

你可能感兴趣的:(Maven,eclipse,JAVA,WEB)