spring(一)--spring/springmvc/spring+hibernate(mybatis)配置文件
这篇文章用来总结一下spring,springmvc,spring+mybatis,spring+hibernate的配置文件
1.web.xml
要使用spring,必须在web.xml中定义分发器等信息,基本的配置信息如下:
<?xml version="1.0" encoding= "UTF-8"?>
<web-app version= "3.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" >
<!-- 配置spring分发器,spring表示对应的 servlet【名可以改】配置文件为spring-servlet.xml -->
<servlet >
<servlet-name >spring </servlet-name >
<servlet-class >org.springframework.web.servlet.DispatcherServlet </servlet-class >
</servlet >
<servlet-mapping >
<!-- 会拦截.do请求-->
<servlet-name >spring </servlet-name >
<url-pattern >*.do </url-pattern >
</servlet-mapping >
< display-name></display-name >
< welcome-file-list>
<welcome-file >index.jsp </welcome-file >
</ welcome-file-list>
</web-app>
2.spring配置文件
<!-- 该配置文件为spring的基本配置文件, springmvc,aop ,transaction等的配置均在此基础上进行 -->
<beans xmlns= "http://www.springframework.org/schema/beans"
xmlns:context= "http://www.springframework.org/schema/context"
xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation= "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.2.xsd
" >
<!-- 对com包下进行扫描,以完成对bean的创建和自动依赖注入 -->
<context:component-scan base-package ="com"/>
</beans>
3.springmvc配置文件
<!-- 该配置文件为 springmvc的基本配置文件 -->
<!-- 相比较spring,增加了 mvc的命名空间与注解驱动 -->
<beans xmlns= "http://www.springframework.org/schema/beans"
xmlns:context= "http://www.springframework.org/schema/context"
xmlns:mvc= "http://www.springframework.org/schema/mvc"
xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation= "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
" >
<!-- 对com包下进行扫描,以完成对bean的创建和自动依赖注入 -->
<context:component-scan base-package ="com"/>
<!-- mvc层提供的注解驱动[注册用于解析@ResponseBody注解的类]
当controller中的方法需要返回 json数据时,需要用到@ResponseBody注解,此时需呀添加此驱动 -->
<mvc:annotation-driven />
</beans>
4.springmvc整合hibernate
以下为springmvc+hibernate的配置文件,去掉mvc命名空间等配置即为spring+hibernate的配置文件
<!-- 该配置文件为 springmvc+hibernate 的基本配置文件 -->
<!-- 相比较springmvc,增加了hibernate 的配置 -->
<beans xmlns= "http://www.springframework.org/schema/beans"
xmlns:context= "http://www.springframework.org/schema/context"
xmlns:mvc= "http://www.springframework.org/schema/mvc"
xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation= "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
" >
<!-- 对com包下进行扫描,以完成对bean的创建和自动依赖注入 -->
<context:component-scan base-package ="com"/>
<!-- mvc层提供的注解驱动[注册用于解析@ResponseBody注解的类]
当controller中的方法需要返回 json数据时,需要用到@ResponseBody注解,此时需呀添加此驱动 -->
<mvc:annotation-driven />
<!-- 配置hibernate 开始 -->
<bean id ="ht" class= "org.springframework.orm.hibernate3.HibernateTemplate" >
<!-- 指向session工厂 -->
<property name ="SessionFactory" ref= "sf"></property >
</bean >
<!-- 配置session工厂
a setAnnotatedClasses(Class[] claes)
指向映射实体bean列表
每在工程中添加一个映射实体bean,就需要在list元素下添加一个value子元素指向该实体bean
b setPackagesToScan(String package)
扫描实体bean所在的包结构,在包下查找所有的映射实体
-->
<bean name ="sf" class= "org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean" >
<property name ="dataSource" ref="ds"></ property>
<!-- 映射实体bean 配置bean所在的包-->
<property name ="packagesToScan" value= "com.po,com.ngsh.bean"></property ><!-- 如果有多个包有映射实体,都在value中写,用逗号隔开 -->
<property name ="hibernateProperties">
<props >
<prop key= "hibernate.show_sql">true</prop >
</props >
</property >
</bean >
<!-- hibernate的数据源 -->
<bean id ="ds" class= "org.springframework.jdbc.datasource.DriverManagerDataSource" >
<property name ="driverClassName" value= "com.mysql.jdbc.Driver"></property >
<property name ="url" value= "jdbc:mysql://localhost:3306/demo?characterEncoding=utf-8" ></property >
<property name ="username" value="root"></ property>
<property name ="password" value="root"></ property>
</bean >
</beans>
5.springmvc整合mybatis配置文件
去掉mvc的相关配置即为spring+mybatis的配置文件
<!-- 该配置文件为 springmvc+mybatis 的基本配置文件 -->
<!-- 相比较springmvc,增加了mybatis 的配置 -->
<beans xmlns= "http://www.springframework.org/schema/beans"
xmlns:context= "http://www.springframework.org/schema/context"
xmlns:mvc= "http://www.springframework.org/schema/mvc"
xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation= "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
" >
<!-- 对com包下进行扫描,以完成对bean的创建和自动依赖注入 -->
<context:component-scan base-package ="com"/>
<!-- mvc层提供的注解驱动[注册用于解析@ResponseBody注解的类]
当controller中的方法需要返回 json数据时,需要用到@ResponseBody注解,此时需呀添加此驱动 -->
<mvc:annotation-driven />
<!-- 配置mybatis 开始 -->
<!-- 在ioc容器中配置sqlSessionFactory -->
<bean id ="ssf" class= "org.mybatis.spring.SqlSessionFactoryBean" >
<!-- 配置数据源 指向 ds -->
<property name ="dataSource" ref="ds"></property>
<!-- 配置映射文件 当有多个时 在list中添加-->
<property name ="mapperLocations">
<list >
<!-- classpath +映射文件的路径 -->
<value> classpath:com.dao.UserDao-mapper.xml</value >
</list >
</property >
</bean >
<!-- mybatis的数据源 -->
<bean id ="ds" class= "org.springframework.jdbc.datasource.DriverManagerDataSource" >
<property name ="driverClassName" value= "com.mysql.jdbc.Driver"></property >
<property name ="url" value= "jdbc:mysql://localhost:3306/demo" ></property >
<property name ="username" value="root"></property>
<property name ="password" value="root"></property>
</bean >
<!-- 配置mapper.xml所映射的接口,-->
<!-- 方法一 每增加一个接口类就得新增一个对应的bean进行注册 -->
<!-- <bean id ="userDao" class= "org.mybatis.spring.mapper.MapperFactoryBean" >
指向sessionFactory
<property name ="sqlSessionFactory" ref= "ssf"></property >
<property name ="mapperInterface" value= "com.dao.UserDaoIf"></property >
</bean > -->
<!-- 方法二 直接扫描dao包 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.dao" />
<property name="sqlSessionFactoryBeanName" value="ssf"></property>
</bean>
</beans>
6.mybatis的mapper文件的模板
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 声明命名空间即其所映射的接口 -->
<mapper namespace= "com.dao.UserDaoIf">
<!-- parameterType指定参数类型,多个参数使用map resultMap指定结果集 -->
<select id ="selectById" parameterType="java.util.map"
resultMap= "user">
select * from user where name=#{name} and pw=#{pw };
</select >
<!-- resultType表示返回int 型 -->
<select id ="selectUserCount" resultType= "java.lang.Integer">
select count(*) from user;
</select >
<!-- 修改 -->
<update id ="uppw" parameterType="java.util.Map" >
update user set pw=#{pw} where id=#{id};
</update >
<delete id ="removeById" parameterType="java.lang.Integer">
delete from user where id=#{id};
</delete >
<!-- 定义返回的结果集 使用select查询时可以使用resultType[返回类型如java.lang.String],也可以使用resultMap,
但两者不可以同时使用,可定义多个,通过id区分
-->
<resultMap type ="com.bean.User" id="user">
<result property ="id" column="id"/>
<result property ="name" column="name"/>
<result property ="pw" column="pw"/>
</resultMap >
</mapper>
版权声明:本文为博主原创文章,未经博主允许不得转载。
spring(一)--spring/springmvc/spring+hibernate(mybatis)配置文件的更多相关文章
- SpringMVC, Spring和Mybatis整合案例一
一 准备工作 包括:spring(包括springmvc).mybatis.mybatis-spring整合包.数据库驱动.第三方连接池. 二 整合思路 Dao层: 1.SqlMapConfig. ...
- SpringMVC Spring MyBatis整合配置文件
1.spring管理SqlSessionFactory.mapper 1)在classpath下创建mybatis/sqlMapConfig.xml <?xml version="1. ...
- SSH(Struts,Spring,Hibernate)和SSM(SpringMVC,Spring,MyBatis)的区别
SSH 通常指的是 Struts2 做前端控制器,Spring 管理各层的组件,Hibernate 负责持久化层. SSM 则指的是 SpringMVC 做前端控制器,Spring 管理各层的组件,M ...
- 整合最优雅SSM框架:SpringMVC + Spring + MyBatis
我们看招聘信息的时候,经常会看到这一点,需要具备SSH框架的技能:而且在大部分教学课堂中,也会把SSH作为最核心的教学内容. 但是,我们在实际应用中发现,SpringMVC可以完全替代Struts,配 ...
- 最优雅SSM框架:SpringMVC + Spring + MyBatis
在写代码之前我们先了解一下这三个框架分别是干什么的? 相信大以前也看过不少这些概念,我这就用大白话来讲,如果之前有了解过可以跳过这一大段,直接看代码! SpringMVC:它用于web层,相当于con ...
- SpringMVC+Spring+Mybatis框架集成
一.基本概念 1.Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-O ...
- 手把手教你整合最优雅SSM框架:SpringMVC + Spring + MyBatis
在写代码之前我们先了解一下这三个框架分别是干什么的? 相信大以前也看过不少这些概念,我这就用大白话来讲,如果之前有了解过可以跳过这一大段,直接看代码! SpringMVC:它用于web层,相当于con ...
- SpringMVC+Spring+mybatis项目从零开始--Spring mybatis mysql配置实现
上一章我们把SSM项目结构已搭建(SSM框架web项目从零开始--分布式项目结构搭建)完毕,本章将实现Spring,mybatis,mysql等相关配置. 1. 外部架包依赖引入 外部依赖包引入 ...
- springMVC+spring+mybatis搭建最近
一:概述SSM框架在项目开发中经常使用到,相比于SSH框架,它在仅几年的开发中运用的更加广泛. Spring作为一个轻量级的框架,有很多的拓展功能,最主要的我们一般项目使用的就是IOC和AOP. Sp ...
随机推荐
- imooc网的主体框架
imooc网的主体框架,主要是里面的导航动画做的比较好,大家可以学习下. git地址:https://github.com/xiangzhihong/ImoocPro
- Oracle :%TYPE 和 %ROWTYPE
1. 使用%TYPE 在许多情况下,PL/SQL变量可以用来存储在数据库表中的数据.在这种情况下,变量应该拥有与表列相同的类型.例如,students表的first_name列的类型为VARCHAR2 ...
- Spring Boot 2.0系列文章(七):SpringApplication 深入探索
关注我 转载请务必注明原创地址为:http://www.54tianzhisheng.cn/2018/04/30/springboot_SpringApplication/ 前言 在 Spring B ...
- XSS攻击过滤处理
关于XSS攻击 XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中. XSS漏洞的危害 网络钓鱼,包括盗取各类用户账号: 窃取用户cooki ...
- 不同场景下使用CSS隐藏元素
使用 CSS 让元素不可见的方法很多,剪裁.定位到屏幕外.明度变化等都是可以的.虽然它们都是肉眼不可见,但背后却在多个维度上都有差别. 元素不可见,同时不占据空间.辅助设备无法访问.不渲染 使用 sc ...
- JDK 常用命令
一) 引言: 当我们安装完JDK时,除了必须的编译运行以外,它就已经自带了很多辅助工具.正所谓“工欲善其事,必先利其器.”如果能用好这些工具,它们将大大方便你的开发.它们的实用和方便有时甚至会使 ...
- Java学习不走弯路教程(7.Eclipse环境搭建)
7.Eclipse环境搭建 在前几章,我们熟悉了DOS环境下编译和运行Java程序,对于大规模的程序编写,开发工具是必不可少的.Java的开发工具比较常用的是Eclipse.在接下来的教程中,我们将基 ...
- Java编程语言下Selenium 对于下拉框,单选,多选等选择器的操作
WebElement selector = driver.findElement(By.id("Selector")); Select select = new Select(se ...
- mysql 带条件的sum/count 使用技巧
本测试只是简单测试,其用途不在于代替count函数配合where函数进行聚合计算,而是在复杂查询中在sum/count中加入条件,一次性求出不同条件下的聚合结果. 1.插入测试数据如图 2.sum计算 ...
- python3学习笔记3---引用http://python3-cookbook.readthedocs.io/zh_CN/latest/
2018-03-01数据结构和算法(3) 1.11 命名切片 假定你有一段代码要从一个记录字符串中几个固定位置提取出特定的数据字段(比如文件或类似格式): ###### 012345678901234 ...