资讯专栏INFORMATION COLUMN

Spring+Mybatis+Velocity配置

shengguo / 2985人阅读

摘要:新推出的,对新手是友好了,但是不利于了解这个框架,而且遇到问题能查的资料少综上,我最后还是选择了作为开发的标配,下面以配置作为示例依赖文件没啥好讲的,程序员都知道规定了有哪些显式的,规定了最顶层的环境,是整个的纲领。

前言

最近开始尝试使用久负盛名的SM框架——Spring+Mybatis进行Web开发,从此走上了Spring配置的不归路。说句实在话,Spring是我特么见过所有WEB工程里面最难配的,因为必须要对它那一套非侵入的设计思想有所了解才能在出问题时迅速判断是不是配置错误,进而定位配置错误所在。首先,做个简单的总结,Spring的配置现在大致有三种:

XML配置,时间最长,最主流,也最恶心的配置方法

使用配置类+注解,推出有一段时间了,用的人不多,与其他框架集成的时候大部分还是绕不过XML。个人觉得没啥卵用。

Spring4新推出的Boot,对新手是友好了,但是不利于了解这个框架,而且遇到问题能查的资料少

综上,我最后还是选择了XML作为开发的标配,下面以 Spring+Mybatis配置作为示例

Maven依赖文件——pom.xml

没啥好讲的,java程序员都知道

XML
    4.0.0
    suemi
    sbeat
    war
    0.0.1-SNAPSHOT
    SBEAT
    http://maven.apache.org

    
        5.1.21
        4.1.6.RELEASE
        4.12
        1.6.1
        2.0
        2.0.8
        3.3.0
        1.2.2
    

    

        
        
            org.springframework
            spring-context-support
            ${spring.version}
        
        
            org.apache.velocity
            velocity
            ${velocity.version}
        
        
            org.apache.velocity
            velocity-tools
            ${velocity.tools.version}
        

        
        
            javax.servlet
            javax.servlet-api
            3.1.0
            provided
        

        
            javax.servlet
            jstl
            1.2 
            provided
        

        
        
            junit
            junit
            ${junit.version}
            test
        

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



        
        
            org.mybatis
            mybatis
            ${mybatis.version}
        

        
            org.mybatis
            mybatis-spring
            ${mybatis-spring.version}
        

        
            org.apache.commons
            commons-dbcp2
            2.0
        

        
            mysql
            mysql-connector-java
            ${mysql.connector.version}
        

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

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

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

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

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



    
    
        sbeat
    


web.xml

wweb.xml规定了有哪些显式的servlet,规定了最顶层的Context环境,是整个的纲领。它同时规定了对于哪些URL的请求归哪些servlet处理,哪些URL使用哪种编码方式。需要注意的是,对于没有人为指定配置文件的servlet,会自动在WEB-INF文件夹下找servletName-servlet.xml的文件作为其配置。

XML

sbeat characterEncodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding UTF-8 forceEncoding true characterEncodingFilter /* sbeat org.springframework.web.servlet.DispatcherServlet 1 sbeat / contextConfigLocation classpath*:applicationContext.xml org.springframework.web.context.ContextLoaderListener
URL分发

这里主要就是控制器的扫描,以及配置模板引擎,以velocity模板为例

XML


    
    
    
    
    
    


    
    
        
        
            
                utf-8
                utf-8
            
        
    
    
    
        
        
        
    



toolbox.xml示例如下,您可以选择自己喜欢的模板引擎。

XML

    
        date
        request
        
            org.apache.velocity.tools.generic.DateTool
        
        
    
    
        link
        request
        org.apache.velocity.tools.view.tools.LinkTool
    
    
        stringUtils
        request
        org.apache.velocity.util.StringUtils
    
    
        math
        application
        org.apache.velocity.tools.generic.MathTool
    
    
        esc
        request
        org.apache.velocity.tools.generic.EscapeTool
    
    
        params
        request
        org.apache.velocity.tools.view.tools.ParameterParser
    

applicationContext.xml——最重要的配置文件

applicationContext.xml主要是对数据库相关操作的一些配置,也是Spring与ORM类框架集成的节点。

XML

    
    
    
    
    


    
    
        
        
        
        
        
    


    
        
    

    
    
        
    



    
        
    

    
    
        
        
        
        
    

Mybatis配置
XML  
 

    
        
        
    
    
        
        
    
    
Mybatis映射文件

该文件是将POJO类的

使用Spring-test测试

下面给出一个非常简单的测试例子,应该很容易看懂,就不做解释了

javapackage seed.test;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

import demo.mapper.UserMapper;
import demo.model.User;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"classpath:applicationContext.xml"})
public class TsetUserDAO {
    @Autowired
    private UserMapper userMapper;

    @Test
    public void testInsert() {
        User user=new User();
        user.setAccount("suemi994");
        user.setPasswd("123456");
        userMapper.addUser(user);
    }
}

小结

Spring常用的注解主要有以下几种:

@Component

@Service--业务层

@Respority--持久化层

@Controller--视图层

尽管这几种注解对应的意义不一样,但它们都有一个共同的作用,那就是让Spring找到并且最终生成对应的Bean。举个例子,我们在Service中使用接口UserDAO,但该接口的实例我们并没有指定使用哪一个,虽然我们写了对应的Impl Class。 通过注解生成Bean,Spring就能够在Service调用该接口的时候从容器里得到正确的实体对象。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/64356.html

相关文章

  • Java 程序员必备的 15 个框架,前 3 个地位无可动摇!

    摘要:官网源码推荐从开始手写一个框架更多请在技术栈微信公众号后台回复关键字。是一个开放源代码的对象关系映射框架,它对进行了非常轻量级的对象封装,它将与数据库表建立映射关系,是一个全自动的框架。 Java 程序员方向太多,且不说移动开发、大数据、区块链、人工智能这些,大部分 Java 程序员都是 Java Web/后端开发。那作为一名 Java Web 开发程序员必须需要熟悉哪些框架呢? 今天...

    galaxy_robot 评论0 收藏0
  • spring-boot-plus后台快速开发脚手架之代码生成器使用

    摘要:代码生成在基础上,新增等模板拓展,生成通用分页方法代码生成模板数据库新建表,即可生成后台分页基础代码,还有官网地址代码生成步骤创建数据库表,例如注意记得加上表注释,字段列注释,方便生成类注释注释 代码生成 Generator spring-boot-plus在mybatis-plus基础上,新增param/vo等模板拓展controller/service/mapper/xml,生成通...

    U2FsdGVkX1x 评论0 收藏0
  • spring-boot-plus后台快速开发脚手架之代码生成器使用(十)

    摘要:代码生成代码生成内容在基础上,新增等模板拓展,生成通用分页方法代码生成模板数据库新建表,即可生成后台分页基础代码,还有官网地址代码生成步骤创建数据库表,例如注意记得加上表注释,字段列注释,方便生成类注释注释 spring-boot-plus 代码生成 Generator 代码生成内容 spring-boot-plus在mybatis-plus基础上,新增param/vo等模板 拓展c...

    chenjiang3 评论0 收藏0
  • Mybatis自动代码生成器的实现

    摘要:原博地址本文介绍如何用编写高度自定义的代码生成器是一款优秀的持久层框架,它支持定制化存储过程以及高级映射。避免了几乎所有的代码和手动设置参数以及获取结果集。 原博地址https://laboo.top/2018/11/26/a-db/#more 本文介绍如何用Java编写高度自定义的代码生成器 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBa...

    monw3c 评论0 收藏0

发表评论

0条评论

shengguo

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<