日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

SpringMVC+Spring+mybatis

發(fā)布時(shí)間:2024/4/13 javascript 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SpringMVC+Spring+mybatis 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1. 外部架包依賴引入1.1 spring框架依賴包引入 spring-contextspring-beansspring-jdbcspring aspectsspring-webmvc1.2 spring-mybatis依賴包引入 mybatismybatis-spring1.3 數(shù)據(jù)庫依賴包引入 mysql-connector-javadruid1.4 redis依賴包引入 jedis1.5 web相關(guān)依賴包引入 jstlservlet-apijsp-apiJackson-databind1.6 其他日志和公共包依賴引入 slf4j-log4j12junitcommons-langscommons-io2. 各項(xiàng)目間依賴關(guān)系以及架包引入 ssm-parent實(shí)現(xiàn)了所有外部依賴包引入 (1)ssm-commons 實(shí)現(xiàn)公共的組件,工具類等 (2)ssm-manager 實(shí)際業(yè)務(wù)管理工程,聚合工程, 其包含工程依賴(1) (3)ssm-manager-pojo (4)ssm-manager-mapper 依賴(3) (5)ssm-manager-service 依賴(3,4) (6)ssm-manager-controller 依賴(3,5)3. Spring簡單介紹Spring是一個(gè)開源框架,Spring是于2003年興起的一個(gè)輕量級(jí)的Java開發(fā)框架,簡單來說,Spring是一個(gè) 分層的JavaSE/EEfull-stack(一站式) 輕量級(jí)開源框架。總結(jié)幾點(diǎn): 1) spring是輕量級(jí)的,而且是開放源碼的。 2) spring有控制反轉(zhuǎn)和依賴注入的特性,將類之間的主動(dòng)關(guān)聯(lián)轉(zhuǎn)換為被動(dòng)關(guān)聯(lián),實(shí)現(xiàn)的相互間的解耦, 通過配置文件,簡化了開發(fā); 3) aop面向切面編程,將系統(tǒng)核心業(yè)務(wù)與服務(wù)分離,實(shí)現(xiàn)了代碼的解耦,通過切面實(shí)現(xiàn)全局調(diào)用, 如日志,事務(wù)等; 4) 與其他框架能很好的集成,如mybatis,struts2,hibernate,redis等。4. mybatis簡單介紹 MyBatis是支持定制化 SQL、存儲(chǔ)過程以及高級(jí)映射的優(yōu)秀的持久層框架。MyBatis避免了幾乎所有的 JDBC代碼和手動(dòng)設(shè)置參數(shù)以及獲取結(jié)果集。MyBatis可以對(duì)配置和原生Map使用簡單的 XML或注解, 將接口和Java的 POJOs(Plain Old Java Objects,普通的 Java對(duì)象)映射成數(shù)據(jù)庫中的記錄。mybatis相對(duì)hibernate優(yōu)勢(shì) 1) mybatis是輕量級(jí)的,學(xué)習(xí)成本較低,易上手; 2) mybatis是半自動(dòng)化的,相關(guān)的sql需要手動(dòng)實(shí)現(xiàn);5. Spring,mybatis,mysql等配置實(shí)現(xiàn)5.1 ssm-manager-controller項(xiàng)目中的所有配置文件db.properties jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://127.0.0.1:3306/ussm?characterEncoding=utf-8 jdbc.username=root jdbc.password=rootapplicationContext-mapper.xml<!-- 配置文件 --><context:property-placeholder location="classpath:config/*.properties"/><!-- 數(shù)據(jù)源 --><bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"destroy-method="close"><property name="url" value="${jdbc.url}" /><property name="username" value="${jdbc.username}" /><property name="password" value="${jdbc.password}" /><property name="driverClassName" value="${jdbc.driver}" /><property name="maxActive" value="10" /><property name="minIdle" value="5" /><property name="logAbandoned" value="true" /></bean><!-- 配置sqlsessionFactory --><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><property name="configLocation" value="classpath:mybatis/SqlMapConfig.xml"></property><property name="dataSource" ref="dataSource"></property></bean><!-- 配置掃描包,加載mapper代理對(duì)象 --><bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"><property name="basePackage" value="com.ssm.manager.mapper"></property></bean>applicationContext-service.xml<!-- 自動(dòng)掃描service包 --><context:component-scan base-package="com.ssm.manager.service"> </context:component-scan><import resource="applicationContext-mapper.xml"/><import resource="applicationContext-trans.xml"/>applicationContext-springmvc.xml<!-- 通過Web.xml的DispatcherServlet加載 --><!-- 會(huì)自動(dòng)注冊(cè)DefaultAnnotationHandlerMapping與AnnotationMethodHandlerAdapter 兩個(gè)bean,是spring MVC為@Controllers分發(fā)請(qǐng)求所必須的 --><!-- 啟動(dòng)spring事務(wù)注解, $該啟用必須在springMVC中,而不能在applicationContext.xml中配置, 不然事務(wù)注解無效$也就是說只有這一行才能真正開啟事務(wù),單獨(dú)地在類或方法上注解@Transaction只是作了事務(wù) 標(biāo)記而以--> <tx:annotation-driven transaction-manager="transactionManager" /><!-- 啟動(dòng)spring事務(wù)注解, $該啟用必須在springMVC中,而不能在applicationContext.xml中配置, 不然事務(wù)注解無效$ 也就是說只有這一行才能真正開啟事務(wù),單獨(dú)地在類或方法上注解@Transaction 只是作了事務(wù)標(biāo)記而以--> <tx:annotation-driven transaction-manager="transactionManager" /><bean class="org.springframework.web.servlet.mvc.annotation. DefaultAnnotationHandlerMapping"><property name="interceptors"><list><!-- 多個(gè)攔截器,順序執(zhí)行 --><!-- <ref bean="SpringMVCInterceptor" /> --><!-- <ref bean="OpenSessionInViewInterceptor" /> --></list></property></bean><!-- 5.對(duì)模型視圖名稱的解析,即給模型視圖名稱添加前后綴 --><bean class="org.springframework.web.servlet.view .InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/" /> <!-- 讓ModelAndView("jsp/teacher/listTeachers.jsp") 從/WEB-INF/目錄下開始 --><property name="suffix" value="" /><!-- <property name="suffix" value=".jsp" /> --><!-- Spring內(nèi)部資源解析類 --><property name="viewClass" value="org.springframework.web.servlet.view.InternalResourceView" /></bean>applicationContext-trans.xml<!-- 事務(wù)管理器 --><bean id="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><!-- 數(shù)據(jù)源 --><property name="dataSource" ref="dataSource" /></bean><!-- 通知 --><tx:advice id="txAdvice" transaction-manager="transactionManager"><tx:attributes><!-- 傳播行為 --><tx:method name="save*" propagation="REQUIRED" /><tx:method name="insert*" propagation="REQUIRED" /><tx:method name="add*" propagation="REQUIRED" /><tx:method name="create*" propagation="REQUIRED" /><tx:method name="delete*" propagation="REQUIRED" /><tx:method name="update*" propagation="REQUIRED" /><tx:method name="find*" propagation="SUPPORTS" read-only="true" /><tx:method name="select*" propagation="SUPPORTS" read-only="true" /><tx:method name="get*" propagation="SUPPORTS" read-only="true" /></tx:attributes></tx:advice><!-- 切面 --><aop:config><aop:advisor advice-ref="txAdvice"pointcut="execution(* com.ssm.manager.service.*.*(..))" /></aop:config>web.xml<!-- spring配置文件整合配置 --><context-param><param-name>contextConfigLocation</param-name><param-value>classpath:spring/applicationContext-service.xml</param-value></context-param><listener><listener-class>org.springframework.web.context.ContextLoaderListener </listener-class></listener><!-- 字符編碼過濾器 --><filter><filter-name>characterEncodingFilter</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><init-param><param-name>forceEncoding</param-name><param-value>true</param-value></init-param></filter><filter-mapping><filter-name>characterEncodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping><!-- springmvc配置 --><servlet><servlet-name>spring</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:spring/applicationContext-springmvc.xml</param-value></init-param><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>spring</servlet-name><url-pattern>*.action</url-pattern><url-pattern>*.js</url-pattern><url-pattern>*.css</url-pattern><url-pattern>/css/**"</url-pattern><url-pattern>/images/**</url-pattern><url-pattern>/js/**</url-pattern></servlet-mapping>UserController.javapom.xml<packaging>war</packaging><dependency><groupId>com.ssm.manager</groupId><artifactId>ssm-manager-service</artifactId><version>0.0.1-SNAPSHOT</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><scope>test</scope></dependency><dependency><groupId>org.codehaus.jackson</groupId><artifactId>jackson-mapper-asl</artifactId></dependency><dependency><groupId>org.codehaus.jackson</groupId><artifactId>jackson-core-asl</artifactId></dependency>5.2 ssm-manager-mapper項(xiàng)目中所有配置文件pom.xml<dependency><groupId>com.ssm.manager</groupId><artifactId>ssm-manager-pojo</artifactId><version>0.0.1-SNAPSHOT</version></dependency><!-- Mybatis --><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId></dependency><!-- MySql --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><!-- 連接池 --><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId></dependency><!-- 連接池 --><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId></dependency><!-- 如果不添加此節(jié)點(diǎn)mybatis的mapper.xml文件都會(huì)被漏掉。 --><build><resources><resource><directory>src/main/java</directory><includes><include>**/*.properties</include><include>**/*.xml</include></includes><filtering>false</filtering></resource></resources></build>UserMapper.xml<mapper namespace="com.ssm.manager.mapper.UserMapper"> <resultMap id="UserMapper" type="com.ssm.manager.pojo.User"> <id property="id" column="id" /> <result property="userName" column="userName" /> <result property="password" column="password" /> </resultMap> <select id="getUsers" resultMap="UserMapper"> select id,userName,password from t_user </select> <insert id="xxxUsers" parameterType="int">INSERT INTO t_user (id,userName,password) VALUES (3,'lisi','123456');</insert> </mapper>5.4 ssm-manager-service所有文件的配置信息pom.xml<!-- Spring --><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-aspects</artifactId></dependency>5.6 ssm-parent所有文件的配置信息pom.xml<packaging>pom</packaging> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.version>1.7</java.version><junit.version>4.12</junit.version><spring.version>4.1.3.RELEASE</spring.version><mybatis.version>3.2.8</mybatis.version><mybatis.spring.version>1.2.2</mybatis.spring.version><mysql.version>5.1.32</mysql.version><slf4j.version>1.6.4</slf4j.version><log4j.version>1.2.17</log4j.version><jackson.version>2.4.2</jackson.version><druid.version>1.0.9</druid.version><jstl.version>1.2</jstl.version><servlet-api.version>2.5</servlet-api.version><jsp-api.version>2.0</jsp-api.version><commons-lang3.version>3.3.2</commons-lang3.version><commons-io.version>1.3.2</commons-io.version><jedis.version>2.7.2</jedis.version><!-- Jackson Json處理工具包 --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>${jackson.version}</version></dependency><!-- 單元測(cè)試 --><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>${junit.version}</version><scope>test</scope></dependency><!-- 日志處理 --><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId><version>${slf4j.version}</version></dependency><!-- Mybatis --><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>${mybatis.version}</version></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>${mybatis.spring.version}</version></dependency><!-- MySql --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql.version}</version></dependency><!-- 連接池 --><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>${druid.version}</version></dependency><!-- Spring --><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-aspects</artifactId><version>${spring.version}</version></dependency><!-- JSP相關(guān) --><dependency><groupId>jstl</groupId><artifactId>jstl</artifactId><version>${jstl.version}</version></dependency><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>${servlet-api.version}</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jsp-api</artifactId><version>${jsp-api.version}</version><scope>provided</scope></dependency><!-- Redis客戶端 --><dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>${jedis.version}</version></dependency>

?

總結(jié)

以上是生活随笔為你收集整理的SpringMVC+Spring+mybatis的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。