700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Spring+Spring Mvc+Mybatis+MySqlite(SSM框架整合Xml配置)

Spring+Spring Mvc+Mybatis+MySqlite(SSM框架整合Xml配置)

时间:2018-10-29 01:02:24

相关推荐

Spring+Spring Mvc+Mybatis+MySqlite(SSM框架整合Xml配置)

MyBatisSpring-mvc的对应配置Log的配置

MyBatis

我们在resources下创建spring-mybatis.xml,对应的参数配置

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-instance"xmlns:context="/schema/context"xmlns:tx="/schema/tx"xsi:schemaLocation="/schema/beans /schema/beans/spring-beans.xsd/schema/context /schema/context/spring-context-3.2.xsd/schema/tx /schema/tx/spring-tx.xsd"><!--自动扫描--><context:component-scan base-package="com.github.houshuai"/><!-- 第一种方式:加载一个properties文件--><bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"><property name="location" value="classpath:jdbc.properties"/></bean><!--&lt;!&ndash;第二种方式:加载多个properties文件&ndash;&gt;--><!--<bean id="configProperties" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">--><!--<property name="locations">--><!--<list>--><!--<value>classpath:jdbc.properties</value>--><!--<value>classpath:log4j.properties</value>--><!--</list>--><!--</property>--><!--<property name="fileEncoding" value="UTF-8"/>--><!--</bean>--><!--配置数据“库--><bean id="dataSource" class="mons.dbcp.BasicDataSource" destroy-method="close"><property name="driverClassName" value="${driverClasss}"/><property name="url" value="${jdbcUrl}"/><property name="username" value="${username}"/><property name="password" value="${password}"/><!--初始化连接大小--><property name="initialSize" value="${initialSize}"/><!-- 连接池最大数量 --><property name="maxActive" value="${maxActive}"/><!-- 连接池最大空闲 --><property name="maxIdle" value="${maxIdle}"/><!-- 连接池最小空闲 --><property name="minIdle" value="${minIdle}"/><!-- 获取连接最大等待时间 --><property name="maxWait" value="${maxWait}"/></bean><!--mybatis和Spring完美整合 ,不需要mybatis的配置映射文件--><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="dataSource"/><!--自动扫描mapping.xml文件--><property name="mapperLocations" value="classpath:mapping/*.xml"/></bean><!--DAO接口所在包名,Spring会自动查到旗下的类--><bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"><property name="basePackage" value="com.github.houshuai.dao"/><property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/></bean><!--(事务管理)transction manager , use JtaTranscationManager for global tx--><bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="dataSource"/></bean><!--(事务管理)transcation manager ,use JtaTransctaionManager for global tx--><tx:annotation-driven transaction-manager="transactionManager"/></beans>

对应的jdbc.propeties配置元素如下:

driverClasss=com.mysql.jdbc.DriverjdbcUrl=jdbc:mysql://localhost:3306/togetherlife_user?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull username=rootpassword=houshuai#定义初始连接数initialSize=0#定义最大连接数maxActive=20#定义最大空闲maxIdle=20#定义最小空闲minIdle=1#定义最长等待时间maxWait=60000

注意jdbcUrl:需要改为自己本地对应的MySql的datasource的name。

对应的Sql的建表语句为:

SET FOREIGN_KEY_CHECKS=0;-- ------------------------------ Table structure for `t_user`-- ----------------------------DROP TABLE IF EXISTS `t_user`;CREATE TABLE `t_user` (`id` bigint(11) NOT NULL auto_increment,`user_name` varchar(255) default NULL COMMENT '用户名',`user_phone` varchar(20) default NULL COMMENT '手机号',`user_email` varchar(255) default NULL COMMENT '邮箱地址',`user_pwd` varchar(32) default NULL COMMENT '加盐后用户密码',`pwd_salt` varchar(6) default NULL COMMENT 'MD5盐',`create_time` datetime default NULL COMMENT '创建时间',`modify_time` datetime default NULL COMMENT '最后修改时间',`is_delete` tinyint(4) default NULL COMMENT '是否删除,0-未删除;1-已删除',PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COMMENT='用户登录表';-- ------------------------------ Records of t_user-- ----------------------------INSERT INTO `t_user` VALUES ('1', '赵大宝', '13285250574', '1045221654@', '05126a423a9379d529e4ee61a212fa55', 'KJUYT5', '-07-15 23:38:56', '-07-15 23:39:09', '0');INSERT INTO `t_user` VALUES ('2', '张三丰', '15985250574', '1198224554@', '98bd3a1bebde01ad363d3c5a0d1e56da', '656JHU', '-07-15 23:39:01', '-07-15 23:39:13', '0');INSERT INTO `t_user` VALUES ('3', '王尼玛', '13685250574', '1256221654@', '5470db9b63c354f6c8d628b80ae2f3c3', '89UIKQ', '-07-15 23:39:05', '-07-15 23:39:16', '0');

我们Mybatis对应的映射数据库操作的Xml :这里定位的名字为mapping/UserMapper.xml

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-////DTD Mapper 3.0//EN""/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.github.houshuai.dao.UserDao"><resultMap id="UserBaseMap" type="com.github.houshuai.modle.User"><id column="id" property="id" jdbcType="BIGINT"/><result column="user_name" property="userName" jdbcType="VARCHAR"/><result column="user_phone" property="userPhone" jdbcType="VARCHAR"/><result column="user_email" property="userEmail" jdbcType="VARCHAR"/><result column="user_pwd" property="userPwd" jdbcType="VARCHAR"/><result column="pwd_salt" property="pwdSalt" jdbcType="VARCHAR"/><result column="create_time" property="createTime" jdbcType="DATE"/><result column="modify_time" property="modifyTime" jdbcType="DATE"/><result column="is_delete" property="isDelete" jdbcType="SMALLINT"></result></resultMap><select id="selectUserById" parameterType="java.lang.Long" resultMap="UserBaseMap">SELECT * FROM t_userWHERE id = #{userId}</select><select id="selectUserByPhoneOrEmail" resultMap="UserBaseMap">SELECT * FROM t_userWHERE user_email = #{emailOrPhone} OR user_phone = #{emailOrPhone}AND user_state = #{state}</select><select id="selectAllUser" resultMap="UserBaseMap">SELECT * FROM t_user</select></mapper>

Spring-mvc的对应配置

我们创建一个spring-mvc.xml

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-instance"xmlns:context="/schema/context"xsi:schemaLocation="/schema/beans /schema/beans/spring-beans.xsd/schema/context /schema/context/spring-context-3.2.xsd"><!--此Bean应用于SpringMvc--><!--自动扫描 @controller--><context:component-scan base-package="com.github.houshuai.controller"/><!--避免IE执行AJAX 返回Json出现下载文件--><bean id="mappingJacksonHttpMessageConvertor"class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"><property name="supportedMediaTypes"><list><value>text/html;charset=UTF-8</value></list></property></bean><!--定义跳转的文件的前后缀,视图模式配置--><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/jsp/"/><property name="suffix" value=".jsp"/></bean><!--文件上传配置--><bean id="multipartResolver" class="org.springframework.monsMultipartResolver"><!--默认编码--><property name="defaultEncoding" value="UTF-8"/><!--上传文件大小限制为31M,31*1024*1024--><property name="maxUploadSize" value="32505856"/><!--内存中最大值--><property name="maxInMemorySize" value="4096"/></bean></beans>

Log的配置

我们创建一个log4j.properties来设置我们的log输出位置和输出格式

log4j.rootLogger=INFO,Console,File#控制台日志log4j.appender.Console=org.apache.log4j.ConsoleAppenderlog4j.appender.Console.Target=System.outlog4j.appender.Console.layout=org.apache.log4j.PatternLayoutlog4j.appender.Console.layout.ConversionPattern=[%p][%t][%d{yyyy-MM-dd HH\:mm\:ss}][%C] - %m%n#普通文件日志log4j.appender.File=org.apache.log4j.RollingFileAppenderlog4j.appender.File.File=logs/ssm.loglog4j.appender.File.MaxFileSize=10MB#输出日志,如果换成DEBUG表示输出DEBUG以上级别日志log4j.appender.File.Threshold=ALLlog4j.appender.File.layout=org.apache.log4j.PatternLayoutlog4j.appender.File.layout.ConversionPattern=[%p][%t][%d{yyyy-MM-dd HH\:mm\:ss}][%C] - %m%n

需要注意log4j.appender.File.File下的文件必须存在,否则会报错。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。