- 浏览: 160346 次
- 性别:
- 来自: 青岛
最新评论
-
Xava99:
确实、、、、、
Tomcat内存CPU暴涨不降,绝对不是噱头 -
ykun:
需要把Eclipse中的Tomcat删掉,重新安装。原因有可能 ...
org.springframework.web.context.ContextLoaderListener找不到? -
一个java程序员:
PlayGod1984 写道一个java程序员 写道给分,还是 ...
Tomcat内存CPU暴涨不降,绝对不是噱头 -
PlayGod1984:
一个java程序员 写道给分,还是有启发的。至少是自己总结的吧 ...
Tomcat内存CPU暴涨不降,绝对不是噱头 -
一个java程序员:
给分,还是有启发的。至少是自己总结的吧。呵呵。
发现问题,就是 ...
Tomcat内存CPU暴涨不降,绝对不是噱头
对于我这样的菜鸟来说,这一部分是我最痛苦的部分了,各种错误啊。而且这里涉及具体的配置,网上牛人各种方式都有,我也在配置的过程中去翻翻mybatis的源代码,尽管没看懂,但是还是比较装2的跟人家炫耀:俺也看过框架源代码,就是没看懂(当然,后面这句没说出口,他们替我说了)。
第四篇:web.xml,ApplicationContext.xml,xxx-servlet.xml(spring mvc的配置文件),mybatis-config.xml以及sql映射语句xxxxMapper.xml的配置。=================================================================
呼,好长的题目,差点一口气没上来,憋死。
先给看一下目录结构:
[img]
http://dl.iteye.com/upload/attachment/453071/2ed93902-e777-309e-bbe5-58225bcac04b.png
[/img]
同事帮着分的,个人感觉还不错,不一定科学,全凭个人喜好。
一web.xml
关于classpath*:/其实无所谓,至少在我的目录结构里无所谓,用classpath:/或者不写都可以找到的。既然我用这个跑起来了,其他的我就不写了。
2:applicationContext.xml
jdbc.properties
里面的dataSource就不说了,简单说一下
①、sqlSessionFactory:用来进行数据库操作的类,而且好玩的是虽然你配了org.mybatis.spring.SqlSessionFactoryBean,但是测试的时候你用getBean("sqlSessionFactory")得到的确是mybatis的这个类: org.apache.ibatis.session.SqlSessionFactory,原因是org.mybatis.spring.SqlSessionFactoryBean.getObject返回的类型给改变了。具体为何我也不知道。大家可以测试一下,强转就抛错误了。
②、
这段配置是我比较喜欢滴,因为他自动扫描了所有的XxxxMapper.java,这样就不用一个一个手动配置Mpper的映射了,只要Mapper接口类和Mapper映射文件对应起来就可以了。详细的大家可以到google mybatis项目网址看一下那个文档,中文滴。
③、
以上3句不解释了啊,就是注解式管理bean,有的大神不推荐,我个人还是喜欢,因为对大量的配置文件有些抵触,错了找起来比较麻烦。懒嘛。 context:component-scan尽管他是递归方式扫描,我还是建议大家base-package具体一些,你懂得。
3:mart-servlet.xml
只说一句,一开始没加<context:component-scan base-package="com.qdcl.mart.business.web" />这一句,结局就是我在Controller里面写RequestMapping(xxxx)的时候是找不到的,我弄了一上午,并且发誓再找不到原因就跳楼的,还好吃饭前找出原因。要不要么是死人,要么是女人了。呵呵。
4、mybatis-config.xml
也是一句,就是最后这个mappers的resource配置,当时手贱,写成/mapper/ProductionMapper.xml,那叫一个悲剧,一直没找到,这就是不仔细看文档的下场。
5、XxxMapper.xml(ProductionMapper.xml)
还是一句,这里的sql id一定要和XxxMapper.xml里面的一致起来,废话。
第四篇:web.xml,ApplicationContext.xml,xxx-servlet.xml(spring mvc的配置文件),mybatis-config.xml以及sql映射语句xxxxMapper.xml的配置。=================================================================
呼,好长的题目,差点一口气没上来,憋死。
先给看一下目录结构:
[img]
http://dl.iteye.com/upload/attachment/453071/2ed93902-e777-309e-bbe5-58225bcac04b.png
[/img]
同事帮着分的,个人感觉还不错,不一定科学,全凭个人喜好。
一web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>qdcl-mart</display-name> <!-- 载入spring上下文 --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath*:/spring/applicationContext.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- Spring 刷新Introspector防止内存泄露 --> <listener> <listener-class> org.springframework.web.util.IntrospectorCleanupListener </listener-class> </listener> <!-- 字符编码过滤器 --> <filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/</url-pattern> </filter-mapping> <!-- 载入spring上下文 --> <servlet> <servlet-name>mart</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath*:/spring-mvc/mart-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>mart</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <!-- 欢迎页面 --> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
关于classpath*:/其实无所谓,至少在我的目录结构里无所谓,用classpath:/或者不写都可以找到的。既然我用这个跑起来了,其他的我就不写了。
2:applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd" > <!-- 属性文件读入 --> <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath:spring/jdbc.properties</value> </list> </property> </bean> <!-- 数据库连接池 --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${jdbc.driver}" /> <property name="url" value="${jdbc.url}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> </bean> <!-- Mybatis's sqlSessionFactory config --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"></property> <property name="configLocation" value="classpath:mybatis-config.xml"/> </bean> <bean name="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource"></property> </bean> <!-- 启用事务 --> <tx:advice id="txAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="save*" propagation="REQUIRED" /> <tx:method name="delete*" propagation="REQUIRED" /> <tx:method name="update*" propagation="REQUIRED" /> </tx:attributes> </tx:advice> <aop:config> <aop:pointcut id="serviceOperation" expression="execution(* com.qdcl.mart.business.service.*.*(..))" /> <aop:advisor advice-ref="txAdvice" pointcut-ref="serviceOperation" /> </aop:config> <!-- scan mappers and let them be autowired --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.qdcl.mart.business.persistence" /> </bean> <!-- 激活annotation功能 --> <context:annotation-config /> <!-- 激活annotation功能 --> <context:spring-configured/> <!-- 扫描指定package下所有带有如@controller,@services,@resource,并把所注释的注册为Spring Beans --> <context:component-scan base-package="com.qdcl.mart.business.service" /> </beans>
jdbc.properties
jdbc.url=jdbc:mysql://localhost:3306/qdclmart?useUnicode=true&characterEncoding=UTF-8 jdbc.driver=com.mysql.jdbc.Driver jdbc.username=root jdbc.password=root
里面的dataSource就不说了,简单说一下
①、sqlSessionFactory:用来进行数据库操作的类,而且好玩的是虽然你配了org.mybatis.spring.SqlSessionFactoryBean,但是测试的时候你用getBean("sqlSessionFactory")得到的确是mybatis的这个类: org.apache.ibatis.session.SqlSessionFactory,原因是org.mybatis.spring.SqlSessionFactoryBean.getObject返回的类型给改变了。具体为何我也不知道。大家可以测试一下,强转就抛错误了。
②、
<!-- scan mappers and let them be autowired --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.qdcl.mart.business.persistence" /> </bean>
这段配置是我比较喜欢滴,因为他自动扫描了所有的XxxxMapper.java,这样就不用一个一个手动配置Mpper的映射了,只要Mapper接口类和Mapper映射文件对应起来就可以了。详细的大家可以到google mybatis项目网址看一下那个文档,中文滴。
③、
<!-- 激活annotation功能 --> <context:annotation-config /> <!-- 激活annotation功能 --> <context:spring-configured/> <!-- 扫描指定package下所有带有如@controller,@services,@resource,并把所注释的注册为Spring Beans --> <context:component-scan base-package="com.qdcl.mart.business.service" />
以上3句不解释了啊,就是注解式管理bean,有的大神不推荐,我个人还是喜欢,因为对大量的配置文件有些抵触,错了找起来比较麻烦。懒嘛。 context:component-scan尽管他是递归方式扫描,我还是建议大家base-package具体一些,你懂得。
3:mart-servlet.xml
<?xml version="1.0" encoding="UTF-8" ?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd" > <!-- 只能用于springMVC,用于配置springMVC的注解驱动 --> <mvc:annotation-driven /> <!-- Spring mvc视图解析器 --> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/view/" /> <property name="suffix" value=".jsp" /> </bean> <context:component-scan base-package="com.qdcl.mart.business.web" /> </beans>
只说一句,一开始没加<context:component-scan base-package="com.qdcl.mart.business.web" />这一句,结局就是我在Controller里面写RequestMapping(xxxx)的时候是找不到的,我弄了一上午,并且发誓再找不到原因就跳楼的,还好吃饭前找出原因。要不要么是死人,要么是女人了。呵呵。
4、mybatis-config.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <!-- 基础设置 --> <settings> <!-- changes from the defaults --> <setting name="lazyLoadingEnabled" value="false" /> </settings> <!-- 别名定义 --> <typeAliases> <typeAlias alias="production" type="com.qdcl.mart.business.domain.Production" /> </typeAliases> <!-- SQL映射文件 --> <mappers> <mapper resource="mapper/ProductionMapper.xml" /> </mappers> </configuration>
也是一句,就是最后这个mappers的resource配置,当时手贱,写成/mapper/ProductionMapper.xml,那叫一个悲剧,一直没找到,这就是不仔细看文档的下场。
5、XxxMapper.xml(ProductionMapper.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.qdcl.mart.business.persistence.ProductionMapper"> <!-- 检索 --> <select id="selectProductionByName" parameterType="java.lang.String" resultType="production"> <!-- 检索sql文 --> SELECT productionid,productionname,price,detail FROM production where productionname = #{productionname} </select> <!-- 插入 --> <insert id="insertProduction" parameterType="production"> insert into production values (#{productionid},#{productionname},#{price},#{detail}); </insert> <!-- 更新 --> <update id="updateProduction" parameterType="production"> update production set productionname = #{productionname}, price = #{price}, detail = #{detail} </update> <!-- 删除 --> <delete id="deleteProduction" parameterType="java.lang.String"> delete from production where productionid = #{value} </delete> </mapper>
还是一句,这里的sql id一定要和XxxMapper.xml里面的一致起来,废话。
发表评论
-
Tomcat内存CPU暴涨不降,绝对不是噱头
2013-12-04 14:14 3181经过了大约4天的时间和 ... -
IE对height=0的看不懂的处理
2013-05-21 11:19 1171今天帮同事解决一个小Bug,他的Iframe怎么也不能顶端显示 ... -
struts2:UEditor插入图片,上传失败,显示差号,没有错误信息
2012-10-15 11:20 2049这个错误其实是自己代码的错误,相当愚蠢。如果不是巧合,这个bu ... -
Maven + SpringMVC + Mybatis【绝非原创,单纯整理】【五】
2011-04-02 13:13 3192第五篇、各层的结合运 ... -
Maven + SpringMVC + Mybatis【绝非原创,单纯整理】【三】
2011-04-02 10:32 6956第三篇:Maven下添加spring,mybatis以及相关软 ... -
Maven + SpringMVC + Mybatis【绝非原创,单纯整理】【二】
2011-04-02 10:15 5918第二篇:Eclipse下创建Maven项目并集成spring ... -
Maven + SpringMVC + Mybatis【绝非原创,单纯整理】【一】
2011-04-02 09:53 6676首先声明一下,非原创,因为没少查各种资料,以下涉及到内容只是我 ... -
java学习目标
2011-02-25 14:20 1046今天定下目标,每天把javaeye里面的博客都看一看,通过QQ ... -
struts2 的s:if用法1-与request中的对象比较值
2010-07-28 17:13 5996做了一个界面,大体的需求是:从主画面传进一个ID,这个画面上是 ... -
Struts2下<s:textfield>输出日期格式
2010-07-15 17:21 5749今天遇到一个问题,就是点击编辑按钮到了编辑画面,有一个日期的& ... -
jbuilder2006在win7下 unable to install default project state的解决方法
2010-06-30 11:13 2577今天给朋友考了个jb2006,因为觉得jb2006打包生成ex ... -
【转】ibatis 多个参数的查询
2010-06-10 18:41 3138转载自:http://yhjhappy234. ... -
MyEclipse安装插件未响应
2010-06-10 11:48 1526今天装ibatis的代码生成器插件,结果find and in ... -
js 里面不可以写的login
2010-06-01 11:48 1094今天发现,不是今天发现,之前就发现了,一直没有记录。 在一个o ... -
发现mysql一个神奇的问题
2010-05-28 15:34 1035一条Mysql SQL语句如下 SELECT Versi ... -
js正则表达式之取字符串中的数字
2010-05-18 10:02 14283今天遇到一个从字符串中取得数字的问题。例如从“我是一个有3年工 ... -
Oracle检索12个月
2010-04-26 11:21 1585从oracle中检索12个月出来,做报表经常用得到,一个年度的 ... -
JLabel设置颜色
2010-03-24 14:57 2929用到JLabel设置颜色。setBackground(Colo ... -
关于同步的一道面试题
2010-03-23 17:12 1118今天在网上看到一面试题目: 当一个线程进入一个对象的一个syn ... -
BS 页面刷新,图片不变的解决办法
2010-02-25 09:19 1406给客户做了个图表报表,就是客户选了条件查询,画面上给出一个曲线 ...
相关推荐
本项目以“maven+springmvc+redis+mybatis整合”为主题,旨在提供一个基于这些技术的集成框架,特别强调了利用Redis作为缓存来提升应用性能。下面将详细阐述这个框架中的各个组成部分以及它们之间的协作。 首先,...
本项目框架“maven+springMVC+mybatis+velocity+mysql+junit”提供了一种高效、灵活且可维护的解决方案。以下将详细讲解这些组件及其作用。 1. Maven: Maven是一个项目管理工具,用于构建、依赖管理和项目信息...
maven+spring+springMVC+mybatis 框架搭建 Maven 是一个优秀的项目管理和构建工具,Spring 是一个广泛使用的 Java 框架,SpringMVC 是基于 Spring 的一个 Web 框架,MyBatis 是一个持久层框架。在这个项目中,我们...
【Maven+SpringMVC+MyBatis+EasyUI+MySQL DEMO】是一个典型的Java Web项目集成示例,它展示了如何将这些流行的技术框架整合在一起,以构建一个功能丰富的Web应用。下面将详细介绍这些技术及其在项目中的作用。 1. ...
Maven+Spring+Spring MVC+MyBatis+MySQL,搭建SSM框架环境
【Maven+SpringMVC+Mybatis Demo】是一个典型的Java Web开发示例,它结合了三个流行的开源框架:Maven、SpringMVC和Mybatis,用于构建高效、模块化的Web应用程序。下面将详细介绍这三个框架以及它们如何协同工作。 ...
【标题】"maven+springMvc+MyBatis Demo"是一个综合性的开发示例,它展示了如何将三个关键的Java Web开发框架——Maven、Spring MVC和MyBatis——集成到一个项目中。这个示例旨在帮助开发者理解如何在实际项目中有效...
Spring、SpringMVC、Mybatis、Velocity和Maven是Java Web开发中常用的一组技术栈,它们各自在软件开发的不同层面发挥着重要作用。这个压缩包文件的标题和描述表明,它提供了一个集成这些技术的演示项目,下面我们将...
【标题】"maven+springmvc+spring+mybatis"是一个经典的Java Web开发技术栈,它结合了四个关键组件:Maven(项目管理工具),Spring MVC(MVC框架),Spring(核心框架)以及MyBatis(持久层框架)。这个组合在企业...
Spring+SpringMVC+MyBatis+Shiro+MySQL+Redis+Maven+EasyUI+Bootstrap实现的通用权限管理系统。 Spring+SpringMVC+MyBatis+Shiro+MySQL+Redis+Maven+EasyUI+Bootstrap实现的通用权限管理系统 Spring+SpringMVC+...
【标题】"maven+springmvc4+mybatis源代码" 涵盖了现代Java Web开发中的三个关键组件:Maven、Spring MVC 4和MyBatis。这是一个典型的三层架构,包括构建管理、表现层和持久层。下面将详细阐述这三个技术及其在项目...
"SpringMvc+Spring+Mybatis+Maven+注解方式"是一个经典的Java后端技术栈,它整合了四个关键组件,为开发人员提供了强大的工具和框架支持。下面将详细讲解这四个组件及其整合方式。 1. **Spring Framework**: ...
【标题】"eclipse+maven+springmvc+spring+mybatis案例附带mysql数据库"是一个典型的Java Web开发项目,它涵盖了多个关键的技术栈,包括Eclipse IDE、Maven构建工具、Spring MVC作为MVC框架、Spring核心框架以及...
本篇主题聚焦于"Maven + SpringMVC + Mybatis"的集成应用,这是一种在Java Web开发中常见的技术栈组合,适用于构建高效、可维护的后端服务。Maven作为项目管理工具,SpringMVC是Spring框架的一部分,用于处理HTTP...
Maven+SpringMVC+Spring+Mybatis+Mysql(Oracle)框架整合代码,需要注意的是Maven仓库不提供ojdbc.jar,需要手动添加,mvn install:install-file -DgroupId=...
"maven+spring MVC+Mybatis+jetty+mysql" 的组合是常见的开发栈,它涵盖了项目管理、前端控制器、持久层操作、应用服务器以及数据库管理等多个层面。下面将详细介绍这些关键技术及其在实际应用中的作用。 1. Maven...
在本项目中,"Spring+SpringMVC+Mybatis+Maven+bootstrap+ajax+jQuery整合开发简单的员工后台管理系统",我们看到一个基于Java技术栈的Web应用开发实例。这个系统利用了多个核心技术来构建一个功能完备的员工管理...
整合搭建Spring+SpringMVC+Mybatis+Maven+Mysql开发实例
总结,Maven+SpringMVC的组合为Java Web开发提供了强大的支持,从项目管理到应用构建,再到复杂的业务逻辑处理,它们都扮演着不可或缺的角色。通过这个入门级的HelloWorld实例,我们可以快速理解这两个工具的基本...
【标题】"maven + springmvc + mybatis" 指的是一个常见的Java Web开发框架组合,用于构建高效、模块化的应用程序。Maven是项目管理和综合工具,Spring MVC是Spring框架的一部分,用作Web应用的模型-视图-控制器...