博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MyBatis(一)-----ssm的整合 跑起来
阅读量:6223 次
发布时间:2019-06-21

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

hot3.png

SpringMVC+Spring+MyBatis 具体的框架整合流程不再赘述 只贴所有配置文件

可以参考:https://www.cnblogs.com/hackyo/p/6646051.html

非框架整合的实例可以学习:https://blog.csdn.net/u012562943/article/details/50403099

一、首先使用idea新建一个Maven webapp项目

  

  

  

  

二、目录结构:

a055a733bcd649935b4fd858261839d6f3c.jpg

1、pom文件

4.0.0
com.google
ssm01
1.0-SNAPSHOT
war
ssm01 Maven Webapp
http://www.example.com
UTF-8
UTF-8
4.3.5.RELEASE
3.4.1
javax
javaee-api
7.0
junit
junit
4.12
ch.qos.logback
logback-classic
1.2.2
com.fasterxml.jackson.core
jackson-databind
2.8.7
mysql
mysql-connector-java
5.1.41
runtime
com.mchange
c3p0
0.9.5.2
org.mybatis
mybatis
${mybatis.version}
org.mybatis
mybatis-spring
1.3.1
org.springframework
spring-core
${spring.version}
org.springframework
spring-beans
${spring.version}
org.springframework
spring-context
${spring.version}
org.springframework
spring-jdbc
${spring.version}
org.springframework
spring-tx
${spring.version}
org.springframework
spring-web
${spring.version}
org.springframework
spring-webmvc
${spring.version}
org.springframework
spring-test
${spring.version}
com.github.pagehelper
pagehelper
4.1.6
com.github.jsqlparser
jsqlparser
0.9.6
commons-fileupload
commons-fileupload
1.3.1
ssm01
maven-clean-plugin
3.0.0
maven-resources-plugin
3.0.2
maven-compiler-plugin
3.7.0
maven-surefire-plugin
2.20.1
maven-war-plugin
3.2.0
maven-install-plugin
2.5.2
maven-deploy-plugin
2.8.2

2applicationContext.xml

3.spring-mvc.xml

4、spring-myBatis,xml

dialect=mysql

5、jdbc.properts

jdbc.driver=com.mysql.jdbc.Driver#数据库地址jdbc.url=jdbc:mysql://127.0.0.1:3306/ts_ms?useUnicode=true&characterEncoding=utf8#用户名jdbc.username=root#密码jdbc.password=123456#最大连接数c3p0.maxPoolSize=30#最小连接数c3p0.minPoolSize=10#关闭连接后不自动commitc3p0.autoCommitOnClose=false#获取连接超时时间c3p0.checkoutTimeout=10000#当获取连接失败重试次数c3p0.acquireRetryAttempts=2

6、logback.xml

%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n

三、具体实现单表user的crud

大致结构

25e9e7831a6bc481bd78f89fffbec324268.jpg

1、controller层(与ssh完全一样)

package com.test.controller;import com.demo.pojo.Json;import com.demo.pojo.PageHelper;import com.test.model.User;import com.test.service.IUserService;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestBody;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;import javax.annotation.Resource;import java.util.List;@Controller@RequestMapping(value = "/user")public class UserController {    @Resource    private IUserService userService;    @RequestMapping(value = "/save")    @ResponseBody    public Object saveUser(User user)    {        try{            userService.insertUser(user);            return new Json(true,"添加成功",null);        }        catch (Exception e)        {            return new Json(false,"添加失败:"+e.getMessage(),null);        }    }    @RequestMapping(value = "/toAdd")    public String toAdd()    {        return "user/add";    }    @RequestMapping(value ="/del" )    public void delUser(String ids)    {        userService.deleteUser(ids);    }    @RequestMapping(value = "/getOne")    public User getOneUser(String id)    {      return   userService.selectUserById(id);    }    @RequestMapping(value = "/update")    public void updateUser(User user)    {        userService.updataUser(user);    }    @RequestMapping(value = "/all")    @ResponseBody    public List allUser(PageHelper pageHelper)    {      return   userService.selectAlluser(pageHelper);    }}

2、servicec层(与ssh完全一样,service接口省略)

package com.test.service.impl;import com.demo.Utils.CommonUtils;import com.demo.pojo.PageHelper;import com.test.dao.IUserDao;import com.test.model.User;import com.test.service.IUserService;import org.springframework.stereotype.Service;import javax.annotation.Resource;import java.util.List;@Servicepublic class UserServiceImpl implements IUserService {    @Resource    private IUserDao userDao;    public int insertUser(User user) {        user.setId(CommonUtils.getUUID());        userDao.insertUser(user);        return 0;    }    public String deleteUser(String ids) {        userDao.delUser(ids);        return ids;    }    public String updataUser(User user) {        userDao.updateUser(user);        return user.getId();    }    public User selectUserById(String id) {        return userDao.selectUserById(id);    }    public List selectAlluser(PageHelper pageHelper) {        return userDao.selectAllUser(pageHelper);    }}

3dao层只写接口

package com.test.dao;import com.demo.pojo.PageHelper;import com.test.model.User;import java.util.List;public interface IUserDao {    /**     *添加用户     * @param user     * @return     */    int insertUser(User user);    /**     * 删除用户     * @param id     * @return     */    void delUser(String id);    /**     * 修改用户     * @param user     * @return     */    String updateUser(User user);    /**     * 根据id查用户     * @return     */    User selectUserById(String id);    /**     * 查找所有用户     * @return     */    List
selectAllUser(PageHelper pageHelper);}

4、mapper

INSERT INTO t_user (id,username,password) VALUES (#{id},#{username},#{password})
DELETE FROM t_user WHERE id=#{id}
UPDATE t_user SET username=#{username},password=#{password} WHERE id=#{id}

总结:与ssh相比整体无差别 controlle层、model层(省去关系映射 建表注解)、service层不变,只是dao层只写接口 然后映射到xml文件 写sql语句 完成orm操作

转载于:https://my.oschina.net/u/3234821/blog/1840522

你可能感兴趣的文章
虚拟地址
查看>>
HSSFWorkbook 创建Excel文件
查看>>
隐藏浏览器原生的滚动条
查看>>
java----内部类与匿名内部类的各种注意事项与知识点
查看>>
阿里巴巴Java开发手册———个人追加的见解和补充(四)
查看>>
VNC安装配置及连接(CentOS)
查看>>
Android自动化测试之Monkeyrunner使用方法及实例
查看>>
数据科学家和大数据计数人员工具包
查看>>
oracle的loop等循环语句的几个用法小例子
查看>>
微信获得access-token
查看>>
Win7 丢失MSVCR110.DLL的解决办法
查看>>
Angular的12个经典问题,看看你能答对几个?(文末附带Angular测试)
查看>>
【转】fileno函数与ftruncate函数
查看>>
HashMap和HashSet的区别
查看>>
Huginn部署到 Heroku
查看>>
hadoop完全分布式安装部署-笔记
查看>>
允许远程访问MySQL的设置
查看>>
京东首页静态页面
查看>>
Autodesk FBX SDK Program 中文 (一)
查看>>
我攻克了oom
查看>>