使用maven纯注解集成ssm
1.配置springMVC框架
第一步:导入包依赖
<!--配置springMVC-->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>2.3.3</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.1.7.RELEASE</version>
</dependency>
依赖包
第二部:编写web.xml--设置前端控制器
<servlet>
<servlet-name>DispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>org.kong.config</param-value>
</init-param>
<init-param>
<param-name>contextClass</param-name>
<param-value>org.springframework.web.context.support.AnnotationConfigWebApplicationContext</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>DispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
web.xml
第三部:编写springMVC配置类
1 package org.kong.config;
2 import org.springframework.context.annotation.ComponentScan;
3 import org.springframework.context.annotation.Configuration;
4 import org.springframework.web.servlet.config.annotation.EnableWebMvc;
5
6 import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
7
8 @SuppressWarnings("deprecation")
9 @Configuration
10 //开启包扫描注解
11 @ComponentScan(basePackages="org.kong")
12 //开启mvc注解驱动
13 @EnableWebMvc
14 public class MVCconfig extends WebMvcConfigurerAdapter {
15
16 }mvc
mvc配置类
第四部:编写controller组件类
1 package org.kong.controller;
2
3 import org.springframework.stereotype.Controller;
4 import org.springframework.web.bind.annotation.RequestMapping;
5
6 @Controller
7 public class Test {
8 @RequestMapping("/hellow")
9 public String hello() {
10 System.out.println("hellow");
11 return null;
12
13 }
通过url访问得到 
2.配置Mybatis框架
项目导入依赖
1 <dependency>
2 <groupId>org.apache.commons</groupId>
3 <artifactId>commons-dbcp2</artifactId>
4 <version>2.2.0</version>
5 </dependency>
6 <dependency>
7 <groupId>org.springframework</groupId>
8 <artifactId>spring-jdbc</artifactId>
9 <version>4.3.20.RELEASE</version>
10 </dependency>
11 <dependency>
12 <groupId>org.mybatis</groupId>
13 <artifactId>mybatis</artifactId>
14 <version>3.4.4</version>
15 </dependency>
16 <dependency>
17 <groupId>org.mybatis</groupId>
18 <artifactId>mybatis-spring</artifactId>
19 <version>1.3.1</version>
20 </dependency>
21 <dependency>
22 <groupId>mysql</groupId>
23 <artifactId>mysql-connector-java</artifactId>
24 <version>5.1.30</version>
配置mybatis配置类
package org.kong.config; import javax.sql.DataSource; import org.apache.commons.dbcp2.BasicDataSource;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.transaction.annotation.EnableTransactionManagement; @Configuration
//3.动态创建代理对象
@MapperScan(basePackages="org.kong.mapper",annotationClass=Mapper.class)
@EnableTransactionManagement // <tx:annotaion-driver>
public class DataConfig {
@Value("${db.driverClassName}")
private String driverClassName; @Value("${db.url}")
private String url; @Value("${db.username}")
private String username; @Value("${db.password}")
private String password; // 1.数据源
@Bean
public DataSource getDataSource() {
BasicDataSource basicDataSource = new BasicDataSource();
basicDataSource.setDriverClassName(driverClassName);
basicDataSource.setUrl(url);
basicDataSource.setUsername(username);
basicDataSource.setPassword(password);
basicDataSource.setMaxTotal(10);
basicDataSource.setMaxWaitMillis(30000);
return basicDataSource;
}
// 2.会话工厂
@Bean
public SqlSessionFactory getSqlSessionFactory() {
SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
SqlSessionFactory sessionFactory = null;
try {
sqlSessionFactoryBean.setDataSource(this.getDataSource());
sqlSessionFactoryBean.afterPropertiesSet();
sessionFactory = sqlSessionFactoryBean.getObject();
} catch (Exception e) {
e.printStackTrace();
}
return sessionFactory;
}
//4.事务代理对象
@Bean
public DataSourceTransactionManager getTransactionManager() {
DataSourceTransactionManager tm=new DataSourceTransactionManager();
//指定数据源
tm.setDataSource(this.getDataSource());
return tm;
} }
测试
1 package org.kong.test;
2
3 import java.sql.SQLException;
4 import java.util.List;
5 import java.util.Map;
6
7 import javax.sql.DataSource;
8
9 import org.junit.Test;
10 import org.junit.runner.RunWith;
11 import org.kong.config.ContextConfig;
12 import org.kong.config.DataConfig;
13 import org.kong.mapper.PapperMapper;
14 import org.springframework.beans.factory.annotation.Autowired;
15 import org.springframework.test.context.ContextConfiguration;
16 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
17 import org.springframework.test.context.web.WebAppConfiguration;
18
19
20
21 @RunWith(SpringJUnit4ClassRunner.class)
22 @ContextConfiguration(classes={DataConfig.class,ContextConfig.class})
23 @WebAppConfiguration
24 public class Test01 {
25 @Autowired
26 private DataSource dataSource;
27 @Autowired
28 private PapperMapper papperMapper;
29
30
31 @Test
32 public void dataSource() {
33 try {
34 System.out.println(dataSource.getConnection());
35 } catch (SQLException e) {
36 // TODO Auto-generated catch block
37 e.printStackTrace();
38 }
39
40 }
41
42 @Test
43 public void hh() {
44 List<Map<String, Object>> fillALL = papperMapper.fillALL();
45
46 for (Map<String, Object> map : fillALL) {
47 System.out.println(map);
48 }
49 }
50
51
52 }
使用maven纯注解集成ssm的更多相关文章
- Spring 4 MVC+Hibernate 4+MySQL+Maven使用注解集成实例
		
Spring 4 MVC+Hibernate 4+MySQL+Maven使用注解集成实例 转自:通过注解的方式集成Spring 4 MVC+Hibernate 4+MySQL+Maven,开发项目样例 ...
 - maven  纯注解一步一步搭建Spring Mvc项目(入门)
		
初次接触spring MVC项目,通过一段时间的学习,本文介绍一种以纯注解的方法去配置spring MVC环境,让那些配置的.xml文件统统见鬼吧. 什么是Spring MVC Spring MVC属 ...
 - Spring4 MVC+Hibernate4+MySQL+Maven使用注解集成实例
		
在本教程中,我们将使用基于注解的配置集成Spring和Hibernate. 我们将开发包含表单要求用户输入一个简单的CRUD为导向Web应用程序,使用Hibernate保存输入的数据到 MySQL 数 ...
 - Spring MVC4 纯注解配置教程
		
阅读本文需要又一定的sping基础,最起码要成功的运行过一个SpringMvc项目. 在传统的Spring项目中,我们要写一堆的XML文件.而这些XML文件格式要求又很严格,很不便于开发.而网上所谓的 ...
 - springboot2.x纯注解整合dubbo
		
springboot1.x和springboot2.x整合差距挺大的,基于最新的2.x进行整合,使用纯注解的方式 依赖选取 首先pom文件的依赖引入,maven仓库有Apache和alibaba两个 ...
 - Shiro集成SSM基于动态URL权限管理(二)
		
这个案例基于上一个demo扩展而来.所以数据库表,在Shiro集成SSM基于URL权限管理(一)开篇的一致.如果上个demo操作的建议重新导入一次,避免出现问题. 而这次都不是通过固定写在方法上的注解 ...
 - spring boot纯注解开发模板
		
简介 spring boot纯注解开发模板 创建项目 pom.xml导入所需依赖 点击查看源码 <dependencies> <dependency> <groupId& ...
 - 学习笔记——Maven实战(四)基于Maven的持续集成实践
		
Martin的<持续集成> 相信很多读者和我一样,最早接触到持续集成的概念是来自Martin的著名文章<持续集成>,该文最早发布于2000年9月,之后在2006年进行了一次修订 ...
 - maven,spring,mybatis集成错误
		
maven,spring,mybatis集成的时候单元测试junit测试没问题,但mvn jetty:run 就报错误 错误: org.apache.ibatis.binding.BindingExc ...
 
随机推荐
- ubuntu apt-mirror 同步源到本地
			
1.下载 apt-mirror apt-get install apt-mirror 2.修改配置 root@wangjq:/wangjq# cat /etc/apt/mirror.list##### ...
 - .NET 设计模式 思维导图
			
关于.NET 设计模式 思维导图 背景说明 以前都在匆匆忙忙写代码,在无穷无尽的需求中间左冲右突,最近终于有一些闲暇的时间,来总结和思考编程中的一些核心思想,磨刀不误砍柴的功夫,期望通过总结和学习,能 ...
 - Inherent Adversarial Robustness of Deep Spiking Neural Networks: Effects of Discrete Input Encoding and Non-Linear Activations
			
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! arXiv:2003.10399v2 [cs.CV] 23 Jul 2020 ECCV 2020 1 https://github.com ...
 - 技术揭秘:华为云DLI背后的核心计算引擎
			
摘要:介绍隐藏在华为云数据湖探索服务背后的核心计算引擎Spark,玩转DLI,,轻松完成大数据的分析处理. 本文主要给大家介绍隐藏在华为云数据湖探索服务(后文简称DLI)背后的核心计算引擎——Spar ...
 - 类的加载,链接和初始化——1运行时常量池(来自于java虚拟机规范英文版本+本人的翻译和理解)
			
加载(loading):通过一个特定的名字,找到类或接口的二进制表示,并通过这个二进制表示创建一个类或接口的过程. 链接:是获取类或接口并把它结合到JVM的运行时状态中,以让类或接口可以被执行 初始化 ...
 - Java集合 Collection、Set、Map、泛型 简要笔记
			
集合 什么是集合 概念 对象的容器,实现了对对象常用的操作 和数组的区别 数组长度固定,集合长度不固定 数组可以存储基本类型和引用类型,集合只能存储引用类型 位置 java.util.*; Colle ...
 - Excel-Countif函数对重复值的处理之删除、统计和标记
			
问题场景 删除重复值: 统计重复项出现的次数: 对比两列,找出重复项. 场景一 某列员工编号user_id相当于身份证,可以唯一代表这个人,需要删除重复项. 目标 将user_id重复的人员所在行都删 ...
 - 银行应用USB Key身份认证方案
			
前言:本文为USB Key的厂商SafeNet公司提供的宣传稿件,并不代表本博客作者的观点和看法. 本文的技术解决方案使用的是SafeNet自身的产品,虽然这个产品支持数字签名和PKI体系,可生成并储 ...
 - 关于java的二维码的生成与解析
			
本文说的是通过zxing实现二维码的生成与解析,看着很简单,直接上代码 import java.io.File; import java.io.IOException; import java.nio ...
 - 石子合并2(环形求最优解 区间dp)
			
题目描述 在一个圆形操场的四周摆放N堆石子,现要将石子有次序地合并成一堆.规定每次只能选相邻的2堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分. 试设计出1个算法,计算出将N堆石子合并成1 ...