JAVA-REMINDER-MVC

来源:互联网 发布:mac用户名修改 编辑:程序博客网 时间:2024/06/04 18:53
Just  A REMINDER !

历史的车轮总是会向前转动的,不会因为你停滞!所以还是动起来吧,不管是否心甘情愿!

先来搞一个基本的maven项目:

既然是maven项目免不了要做jar包配置管理,放一个例子出来瞅瞅:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.cherrish</groupId><artifactId>web-mvc-mq</artifactId><version>0.0.1-SNAPSHOT</version><packaging>war</packaging><properties><!-- spring 版本号 --><spring.version>4.1.7.RELEASE</spring.version><!-- mybatis版本号 --><mybatis.version>3.3.0</mybatis.version><mybatis-spring.version>1.2.3</mybatis-spring.version><!-- servlet版本号 --><servlet.version>3.0</servlet.version><servlet-api.version>2.5</servlet-api.version><jsp.version>2.0</jsp.version><!-- jstl版本号 --><jstl.version>1.2</jstl.version><!-- mysql驱动版本号 --><mysql.jdbc.version>5.1.25</mysql.jdbc.version><!-- dbcp版本号 --><dbcp.version>2.1.1</dbcp.version><!-- json版本号 --><fastjson.verson>1.2.6</fastjson.verson><!-- log --><logback.version>1.1.3</logback.version><slf4j.version>1.7.13</slf4j.version><!-- activemq --><activemq.version>5.11.2</activemq.version><!--版本信息 --><mfm.common.version>0.0.1-RELEASE</mfm.common.version><mfm.push.version>0.0.1-RELEASE</mfm.push.version><mfm.pay.version>0.0.1-SNAPSHOT</mfm.pay.version><mfm.version>0.0.1-SNAPSHOT</mfm.version><mfm.search.version>0.0.1-SNAPSHOT</mfm.search.version></properties><dependencies><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>${servlet-api.version}</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId><version>${jstl.version}</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet.jsp</groupId><artifactId>jsp-api</artifactId><version>${jsp.version}</version><scope>provided</scope></dependency><!-- spring --><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>${spring.version}</version></dependency><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-expression</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</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-aop</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-tx</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-oxm</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.aspectj</groupId><artifactId>aspectjweaver</artifactId><version>1.8.9</version></dependency><!-- log --><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>${slf4j.version}</version></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId><version>${logback.version}</version></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-core</artifactId><version>${logback.version}</version></dependency></repositories></project>

接下来就要配置web.xml了:

<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">  <context-param>    <param-name>contextConfigLocation</param-name>    <param-value>classpath*:spring.xml</param-value>  </context-param>  <listener>    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>  </listener>  <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-mvc.xml</param-value>    </init-param>    <load-on-startup>1</load-on-startup>  </servlet>  <servlet-mapping>    <servlet-name>spring</servlet-name>    <url-pattern>/*</url-pattern>  </servlet-mapping>  <welcome-file-list>    <welcome-file>index.jsp</welcome-file>  </welcome-file-list>  <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></web-app>

根据web.xml的配置接下来需要新建两个配置文件,spring管理配置文件spring.xml 和springmvc配置文件spring-mvc.xml:

spring.xml使得spring替我们管理bean:

<?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:context="http://www.springframework.org/schema/context"    xmlns:p="http://www.springframework.org/schema/p" xmlns:aop="http://www.springframework.org/schema/aop"    xmlns:tx="http://www.springframework.org/schema/tx"    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd     http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd     http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd"><!-- 自动扫描 -->      <context:component-scan base-package="com.cherrish" />      <!-- 引入配置文件 -->      <bean id="propertyConfigurer"          class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">          <property name="location" value="classpath:jdbc.properties" />      </bean>        <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"          destroy-method="close">          <property name="driverClassName" value="${driver}" />          <property name="url" value="${url}" />          <property name="username" value="${username}" />          <property name="password" value="${password}" />          <!-- 初始化连接大小 -->          <property name="initialSize" value="${initialSize}"></property>          <!-- 连接池最大数量 -->          <property name="maxActive" value="${maxActive}"></property>          <!-- 连接池最大空闲 -->          <property name="maxIdle" value="${maxIdle}"></property>          <!-- 连接池最小空闲 -->          <property name="minIdle" value="${minIdle}"></property>          <!-- 获取连接最大等待时间 -->          <property name="maxWait" value="${maxWait}"></property>      </bean>        <!-- spring和MyBatis完美整合,不需要mybatis的配置映射文件 -->      <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">          <property name="dataSource" ref="dataSource" />          <!-- 自动扫描mapping.xml文件 -->          <property name="mapperLocations" value="classpath:mapper/*.xml"></property>      </bean>        <!-- DAO接口所在包名,Spring会自动查找其下的类 -->      <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">          <property name="basePackage" value="com.cherrish.dao" />          <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>      </bean>        <!-- (事务管理)transaction manager, use JtaTransactionManager for global tx -->      <bean id="transactionManager"  class="org.springframework.jdbc.datasource.DataSourceTransactionManager">          <property name="dataSource" ref="dataSource" />      </bean>  <!-- 事务扫描开始(开启@Tranctional) --><tx:annotation-driven transaction-manager="transactionManager" /><import resource="classpath:provider.xml" /><import resource="classpath:mq.xml" /></beans>

spring-mvc.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:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc"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.2.xsd"default-lazy-init="true">    <!-- 设置注解扫描的包路径 -->    <context:component-scan base-package="com.cherrish">          <!-- 排除扫描service标签 -->        <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Service"/>       </context:component-scan>          <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>        <property name="prefix" value="/WEB-INF/pages/"/>        <property name="suffix" value=".jsp"/>    </bean>    <bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor"></bean> </beans>



0 0