博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
maven搭建springmvc+mybatis项目
阅读量:4449 次
发布时间:2019-06-07

本文共 7124 字,大约阅读时间需要 23 分钟。

上一篇中已经成功使用maven搭建了一个web项目,本篇描述在此基础上怎么搭建一个基于springmvc+mybatis环境的项目.

说了这么久,为什么那么多人都喜欢用maven搭建项目?我们都知道maven是用来管理项目依赖包的,它到底有多方便呢?大家都知道,在以前,我如果要在项目中使用jar包,那么需要先去网上下载对应的jar包,然后复制到项目中,然后再add to build path才可以真正使用它.那么maven项目中是怎么做的呢?

首先在建好的maven项目最底下我们可以找到一个pom.xml的文件,新建好的pom.xml文件如下:

 

我们可以看到在dependencies节点下已经默认有个了一个dependency(依赖)节点,当然也许环境版本不同建立起来也许没有默认的,那么这一个dependency节点有什么用呢?

看一下项目:

我想大家已经清晰的看到了,在maven依赖下自动多了一个junit-3.8.1.jar,这不是我手动添加的,是自动添加的,再对比一下version版本号,两者是一样的.那么如果我现在想在项目中引入log4j该怎么做呢?非常简单,在pom.xml中再添加一段:

添加过后保存pom.xml文件,我们就可以看到左侧自动添加了log4j-1.2.17.jar包,(当然你的电脑要是联网的才行,你保存后如果本地仓库没有是会自动去网络上下载的,没有网络可不会凭空变出来,你下载过后下次再引用就不需要重新下载了,会自动从本地仓库中取)如果想要换一个版本,只要改一下version,保存就行了

看,log4j的版本自动就换了,引入的新的log4j版本,并且原先的log4j版本自动删除了,多方便,同理,如果想引入spring的web相关包,只要添加一段就行了.

我们可以看到一下子添加了好几个jar包,连需要用到的spring核心包也 一同引入进来了.写到这里不禁想起了当初做毕业设计时候,也用的springmvc+mybatis,那时候不知道maven,满世界的去下载各种jar包,想想就心酸,对比一下,真感觉是后妈养的.

好了,到这里,我们知道了怎么在项目中添加依赖包了,那么问题来了,每次 要添加的dependency节点,我怎么知道它的groupid,artifactid以及version呢?当然现在网络这么发达,你可已去网上找别人的配置文件,看别人的,如果你想自己写,那么可以自己去maven官网查找,在浏览器输入 ,还是以log4j为例,输入log4j,点击搜索,结果如下:

点击中间的1.2.17,如下:

 

这样就可以方便的添加依赖了,如果你不想要最新版本,可以点击all,进去后再选择自己想要的版本.其实到这里我感觉基本已经算结束了,剩下的都是一些springmvc+mybatis的配置,网上有许多,也都大同小异.

 就直接贴代码了,首先结构如下:

后台代码:

UserController:

package com.acgg.testMaven.user.controller;import java.util.List;import javax.servlet.http.HttpServletRequest;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;import com.acgg.testMaven.user.model.UserInfo;import com.acgg.testMaven.user.service.UserService;/** * @author 作者 : niexiaohui * @version  V1.0 * 创建时间:2016年10月29日 下午6:37:55 * 类说明:  */@Controller@RequestMapping("/user")public class UserController {    @Autowired    private UserService userService;        @RequestMapping("/queryUser.do")    public String queryAllUser(HttpServletRequest request) {        List
userInfos = userService.queryAllUser(); request.setAttribute("userInfos", userInfos); return "user/showAllUser"; } @RequestMapping("/showJsonUser.do") @ResponseBody public Object showJsonUser(HttpServletRequest request) { List
userInfos = userService.queryAllUser(); return userInfos; } }
View Code

UserInfoMapper:

package com.acgg.testMaven.user.dao;import java.util.List;import com.acgg.testMaven.user.model.UserInfo;/** * @author 作者 : niexiaohui * @version  V1.0 * 创建时间:2016年10月29日 下午6:33:46 * 类说明:  */public interface UserInfoMapper {    /**     * 查询所有用户     */    List
queryAllUser();}
View Code

UserInfoMapper.xml:

userid, username
View Code

UserInfo:

package com.acgg.testMaven.user.model;/** * @author 作者 : niexiaohui * @version  V1.0 * 创建时间:2016年10月29日 下午6:29:10 * 类说明: 用户信息 */public class UserInfo {    private Integer id;        private String name;    public Integer getId() {        return id;    }    public void setId(Integer id) {        this.id = id;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    @Override    public String toString() {        return "UserInfo [id=" + id + ", name=" + name + "]";    }    }
View Code

UserService:

package com.acgg.testMaven.user.service;import java.util.List;import com.acgg.testMaven.user.model.UserInfo;/** * @author 作者 : niexiaohui * @version  V1.0 * 创建时间:2016年10月29日 下午6:28:20 * 类说明: 用户服务 */public interface UserService {    List
queryAllUser();}
View Code

UserServiceImpl:

package com.acgg.testMaven.user.service;import java.util.List;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;import com.acgg.testMaven.user.dao.UserInfoMapper;import com.acgg.testMaven.user.model.UserInfo;/** * @author 作者 : niexiaohui * @version  V1.0 * 创建时间:2016年10月29日 下午6:31:17 * 类说明:  */@Service("UserService")public class UserServiceImpl implements UserService {    @Autowired    private UserInfoMapper userInfoMapper;        @Override    public List
queryAllUser() { return userInfoMapper.queryAllUser(); }}
View Code

配置文件:

config.properties:

jdbc.drivername=com.mysql.cj.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/bookshop?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8jdbc.username=rootjdbc.password=root
View Code

log4j.xml:

View Code

spring-mvc.xml:

text/html;charset=UTF-8
5242880
View Code

spring-mybatis.xml

View Code

前台jsp:

index.jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><%  String path = request.getContextPath();  String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  %>   
用户列表

Hello World!

显示用户
json显示
View Code

启动项目后输入http://localhost:8080/testMaven/访问

点击显示用户:

点击json显示:

 

转载于:https://www.cnblogs.com/NieXiaoHui/p/6011000.html

你可能感兴趣的文章
HDU 1195 Open the Lock(BFS)
查看>>
Struts2的crud
查看>>
java上传文件
查看>>
大学生对技术网站需求的调查问卷结果分析
查看>>
测试一
查看>>
vertx的HttpServer模块
查看>>
as3事件流机制彻底理解
查看>>
Selenium webdriver操作日历控件
查看>>
Pascal程序练习-与7无关的数
查看>>
Linux:cut命令...未完待续
查看>>
PX4地面站QGroundControl在ubuntu下的安装
查看>>
react实现svg实线、虚线、方形进度条
查看>>
Web
查看>>
那些容易忽略的事(1) -变量与运算符+
查看>>
九度oj 题目1252:回文子串
查看>>
(十一)tina | openwrt关闭调试串口(DEBUG UART)
查看>>
angularjs 使用angular-sortable-view实现拖拽效果(包括拖动完成后的方法使用)
查看>>
2015生命之旅---南京、南通、上海之行
查看>>
高精度练习之乘法(codevs_3117)
查看>>
小Z爱划水
查看>>